Last active
December 9, 2025 07:06
-
-
Save montasim/f33d1941104f48b5e73477ae75519dbc to your computer and use it in GitHub Desktop.
This file specifies intentionally untracked files that Git should ignore.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. | |
| #################################################### | |
| # .gitignore Configuration File | |
| #################################################### | |
| # | |
| # Version: 1.0.0 | |
| # License: CC BY-NC-ND 4.0 | |
| # | |
| # Author: Mohammad Montasim-Al-Mamun Shuvo | |
| # Created: 2025-01-28 | |
| # Contact Email: montasimmamun@gmail.com | |
| # Contact GitHub: https://github.com/montasim | |
| #################################################### | |
| # OVERVIEW | |
| #################################################### | |
| # This file defines which files and directories Git | |
| # must ignore when tracking changes. | |
| # | |
| # Primary objectives: | |
| # • Keep the repository clean and minimal | |
| # • Prevent committing secrets or private data | |
| # • Exclude machine-generated and user-specific files | |
| # • Avoid merge conflicts from local tooling | |
| # • Improve readability and maintainability | |
| # | |
| #################################################### | |
| # DESIGN PRINCIPLES | |
| #################################################### | |
| # 1. Reproducible builds only | |
| # → Ignored files must be regenerable | |
| # | |
| # 2. Security over convenience | |
| # → Secrets, tokens, logs, uploads are excluded | |
| # | |
| # 3. Tool-agnostic | |
| # → Supports multiple editors, OSs, and PMs | |
| # | |
| # 4. Explicit documentation | |
| # → Every section explains *why* files are ignored | |
| # | |
| #################################################### | |
| # IMPORTANT NOTES | |
| #################################################### | |
| # • Removing an entry does NOT retroactively track files | |
| # • Use `git add -f <file>` to force-track ignored files | |
| # • Changes should be discussed in PRs | |
| # | |
| #################################################### | |
| # IDE AND CODE EDITOR SETTINGS | |
| #################################################### | |
| # Purpose: | |
| # Editor and IDE configuration files are often user-specific. | |
| # Committing them causes noise and conflicts across teams. | |
| # JetBrains (IntelliJ IDEA, WebStorm, Android Studio) | |
| .idea/ | |
| # Visual Studio Code workspace settings | |
| .vscode/ | |
| # macOS Finder metadata files | |
| .DS_Store | |
| #################################################### | |
| # DEPENDENCY DIRECTORIES | |
| #################################################### | |
| # Purpose: | |
| # Installed dependencies are large, platform-specific, | |
| # and reproducible using package managers. | |
| # Node.js dependencies | |
| /node_modules/ | |
| # Yarn (Berry) cache, plugins, and releases | |
| .yarn/ | |
| # Yarn Plug'n'Play manifest | |
| .pnp | |
| .pnp.js | |
| # Yarn install state cache | |
| .yarn/install-state.gz | |
| #################################################### | |
| # BUILD OUTPUTS | |
| #################################################### | |
| # Purpose: | |
| # Generated build artifacts are recreated from source | |
| # during CI/CD or local builds and must not be committed. | |
| # Generic build output | |
| /build/ | |
| # Next.js build output | |
| .next/ | |
| # Static export output (next export) | |
| /out/ | |
| #################################################### | |
| # LOG FILES | |
| #################################################### | |
| # Purpose: | |
| # Logs are runtime artifacts containing debug and error | |
| # information. They are environment-specific and sensitive. | |
| # Generic logs directory | |
| logs/ | |
| # All log files | |
| *.log | |
| *.logs | |
| # JSON-formatted logs | |
| logs*.json | |
| # Docker logs | |
| docker.log | |
| # npm debug logs | |
| npm-debug.log* | |
| # Yarn debug/error logs | |
| yarn-debug.log* | |
| yarn-error.log* | |
| #################################################### | |
| # ENVIRONMENT VARIABLES & SECRETS | |
| #################################################### | |
| # Purpose: | |
| # Environment files contain credentials, tokens, URLs, | |
| # and other sensitive configuration that must NEVER | |
| # be committed. | |
| # Base environment file | |
| .env | |
| # Environment-specific configs | |
| .env.development | |
| .env.test | |
| .env.staging | |
| .env.uat | |
| .env.production | |
| # Local overrides (recommended) | |
| .env*.local | |
| #################################################### | |
| # TESTING & COVERAGE | |
| #################################################### | |
| # Purpose: | |
| # Test artifacts are generated during local or CI test | |
| # runs and do not belong in version control. | |
| # Test coverage reports | |
| /coverage/ | |
| #################################################### | |
| # DOCUMENTATION OUTPUTS | |
| #################################################### | |
| # Purpose: | |
| # Generated documentation or local docs exports can be | |
| # large and are often environment-specific. | |
| # Generated documentation | |
| /documentation/ | |
| #################################################### | |
| # VERCEL CONFIGURATION | |
| #################################################### | |
| # Purpose: | |
| # Vercel maintains local deployment metadata that is | |
| # environment-specific and auto-generated. | |
| # Vercel project directory | |
| .vercel/ | |
| #################################################### | |
| # TYPESCRIPT & FRAMEWORK ARTIFACTS | |
| #################################################### | |
| # Purpose: | |
| # Generated framework files and build metadata that | |
| # are automatically recreated. | |
| # TypeScript incremental build metadata | |
| *.tsbuildinfo | |
| # Next.js generated type declarations | |
| next-env.d.ts | |
| #################################################### | |
| # SECURITY & PRIVATE FILES | |
| #################################################### | |
| # Purpose: | |
| # Cryptographic keys and private credentials must | |
| # NEVER be versioned. | |
| # PEM / key / certificate files | |
| *.pem | |
| *.key | |
| *.crt | |
| #################################################### | |
| # LOCAL FILE UPLOADS | |
| #################################################### | |
| # Purpose: | |
| # User-uploaded content stored locally during development | |
| # must not be committed to avoid privacy and size issues. | |
| # Temporary uploaded assets | |
| /public/assets/ | |
| #################################################### | |
| # DATABASE & RUNTIME FILES | |
| #################################################### | |
| # Purpose: | |
| # Local database files or runtime artifacts should never | |
| # be committed. | |
| # SQLite databases | |
| *.sqlite | |
| *.sqlite3 | |
| # Prisma local dev artifacts | |
| /prisma/dev.db | |
| #################################################### | |
| # PACKAGE LOCK FILES | |
| #################################################### | |
| # Purpose: | |
| # Lock files ensure reproducible installs. | |
| # However, in multi-PM or library setups they may be | |
| # intentionally excluded. | |
| # | |
| # ⚠️ WARNING: | |
| # For applications, committing ONE lock file is usually | |
| # recommended. Ignore these only if project policy allows. | |
| # npm | |
| package-lock.json | |
| # Yarn | |
| yarn.lock | |
| # pnpm | |
| pnpm-lock.yaml | |
| #################################################### | |
| # END OF FILE | |
| #################################################### |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment