# Primary root-level build folders
/build*/
/target*/

# Yes, everyone loves keeping this file in the history.
# But with a very minimalistic binding and just a couple of dependencies
# it brings 7000 lines of text polluting the entire repo.
package-lock.json
uv.lock

# Temporary files
.DS_Store
.swiftpm/
.build/
tmp/
target/
__pycache__
.pytest_cache
.conda
Makefile
CMakeCache.txt
cmake_install.cmake
CMakeFiles
*.so
*.dll
*.dylib
*.egg-info
*.whl
*.pyd
.venv/*
node_modules/

# Per-platform npm prebuilts are filled in CI, never committed
javascript/@stringzilla-*/*.node

# .NET / C# build output
bin/
obj/
TestResults/
*.dmp

# Native binaries are CI/pack-time artifacts — never commit them
/csharp/runtimes/
/java/src/main/resources/native/
.vs/
*.tar.gz
.tmp/

# Recommended datasets
/utf8.txt
/enwik9.txt
/xlsum.csv
/acgt*.txt
/leipzig*.txt

# StringZilla-specific log files
/failed_sz_*
/.cache/

# Claude Code per-project settings (locally tracked in ~/.claude, not in repo)
.claude/

# Local refactor planning notes
/SPLIT.md
