# Project CLAUDE.md # ========================================================= # This is a TEMPLATE file for repository-specific configuration # You can REMOVE sections that are not relevant to your project # and ADAPT examples to your stack (C, C++, Python, JS, etc.) # ========================================================= # ========================================================= # BUILD COMMANDS # ========================================================= ## Example: C / Makefile project # make -> build project # make clean -> remove object files # make fclean -> clean + remove binaries # make re -> rebuild everything ## Example: Node.js # npm install # npm run build ## Example: Python # pip install -r requirements.txt ## Example: Go # go build ./... ## Example: Rust # cargo build ## Define YOUR actual commands below: # - ... # - ... # ========================================================= # TEST COMMANDS # ========================================================= ## Example: C (custom tests) # ./tests/run_tests.sh ## Example: Python # pytest ## Example: Node.js # npm test ## Example: Go # go test ./... ## Example: Rust # cargo test ## Define YOUR actual commands below: # - ... # - ... # ========================================================= # LINT / FORMAT / STATIC ANALYSIS # ========================================================= ## Example: C (42 / norminette) # norminette ## Example: Python # flake8 # black . ## Example: JS/TS # npm run lint # prettier --write . ## Example: Go # go fmt ./... # golangci-lint run ## Example: Rust # cargo fmt # cargo clippy ## Define YOUR actual commands below: # - ... # - ... # ========================================================= # PROJECT CONVENTIONS # ========================================================= # Describe coding conventions specific to THIS repository ## Example (C / 42-style) # - snake_case naming # - no for loops (if applicable) # - header files for declarations # - strict file organization ## Example (Python) # - PEP8 compliance # - type hints required # - small functions preferred ## Example (JS/TS) # - camelCase variables # - PascalCase classes # - functional components (React) ## Define YOUR conventions below: # - ... # - ... # ========================================================= # PROJECT ARCHITECTURE # ========================================================= # Describe how the project is structured ## Example: # src/ # core/ -> business logic # utils/ -> helpers # api/ -> external interfaces # tests/ # unit/ # integration/ ## Example (C project) # src/ # include/ # libft/ # main.c ## Define YOUR architecture below: # - folders: # - responsibilities: # - data flow: # ========================================================= # IMPORTANT RULES / CONSTRAINTS # ========================================================= # Example: # - no dynamic allocation in hot paths # - must be POSIX compliant # - no external dependencies allowed # - performance critical sections identified ## Define YOUR rules below: # - ... # - ... # ========================================================= # EXCEPTIONS TO GLOBAL RULES # ========================================================= # This section overrides rules from ~/.claude/CLAUDE.md ## Example: # - functions >25 lines allowed in parser module # - global state allowed in logging system # - more than 5 parameters allowed in specific APIs ## Define YOUR exceptions below: # - ... # - ... # ========================================================= # REVIEW / WORKFLOW EXPECTATIONS # ========================================================= # How Claude should behave in this repo # Example: # - always run tests after modification # - never modify unrelated files # - prioritize minimal changes # - ask before large refactors ## Define YOUR expectations below: # - ... # - ... # ========================================================= # NOTES # ========================================================= # - Remove unused sections # - Keep this file short and project-focused # - Global style rules live in ~/.claude/CLAUDE.md # - This file is for LOCAL overrides and context only