# |||| EDITORS ||||

.idea/
*.iml
.fleet/
.vs/
*.sw?
*.vsix
.obsidian
.DS_Store

# |||| JS/TS ||||

node_modules/
dist/
coverage/
oracle/lsp/extensions/vscode/out/
*.log
*.local
*.tsbuildinfo
*.ts.timestamp-*
.turbo/
.eslintcache
.vercel
.astro

# |||| GO / COMPILED ||||

*.test
*.exe
*.exe~
*.dll
!.github/scripts/EnVar.dll
*.dylib
*.so
*.out
build/
go.work
go.work.sum
custom-gcl

# |||| RUST ||||

target/
gen/

# |||| PYTHON ||||

__pycache__/
*.py[cod]
*_cache/
*.egg-info/
.venv
.env
.env.production
.coverage
.coverage.*
coverage.xml
htmlcov/

# |||| BAZEL ||||

# Ignore all bazel-* symlinks. There is no full list since this can change based on the
# name of the directory bazel is cloned into.
**/bazel-*
.bazelrc.user

# Directories for the Bazel IntelliJ plugin containing the generated IntelliJ project
# files and plugin configuration. Separate directories are for the IntelliJ, Android
# Studio and CLion versions of the plugin.
**/.ijwb/
**/.aswb/
**/.clwb/

# Generated clangd/IntelliSense database (e.g. Hedron compile-commands refresh).
compile_commands.json

# Lock file for the local boringssl->openssl shim module; only its MODULE.bazel matters
# as a local_path_override target, never run bazel inside that directory.
vendor/boringssl/MODULE.bazel.lock

# |||| DATA ||||

**/data
!pluto/src/schematic/edge/data
!pluto/src/schematic/edge/data/**
synnax-data
integration/tests/results/

# |||| TLS ||||

**/certs*/**
client/py/examples/opcua/certificates/

# |||| BINARIES ||||

**/bin/**
**/binaries/**
freighter/integration/integration
integration/integration
core/synnax
core/pkg/driver/assets/*
!core/pkg/driver/assets/.gitkeep
console/src-tauri/release.tauri.conf.json

# |||| PROFILING ||||

**/mem.out
**/profile**.png

# |||| GENERAL ||||

**/ignore*

# |||| LABVIEW ||||

client/lv/**/builds/
!client/lv/**/Ignore Error.vi
*.lvlibp
*.aliases
*.lvlps
*.UserState/

# |||| CLAUDE ||||

# Ignore .claude/ contents but keep skills/ tracked so the project's Claude Code skills
# ship with the repo. Excluding directory contents rather than the directory itself is
# what lets the negation below re-include the subtree.
.claude/*
!.claude/skills/

# |||| ORACLE ||||

.oracle/

# |||| PLAYWRIGHT ||||

.playwright-mcp/
