Developer Tools
Gitignore Generator
Generate a clean .gitignore file from curated templates for Node, Python, Next.js, Django, Go, Rails, VS Code, JetBrains, macOS, Windows, and more.
Gitignore generator
Quick stacks
Start from a real project
Templates
Pick the parts of your stack
6 of 48 selected
Languages
Core language toolchains: compiled artifacts, bytecode, package caches.
Frameworks
Application frameworks and meta-frameworks with their own build folders.
Runtimes
Server-side runtimes and their per-project artifacts.
Build tools
Bundlers, monorepo tools, and CSS toolchains.
Editors and IDEs
Per-user editor metadata most teams do not want to share.
Operating systems
Hidden files macOS, Windows, and Linux drop into project folders.
Misc
Environment files, logs, infra, and secrets.
Custom rules
Project-specific lines
Add any patterns specific to your project. One per line. Standard .gitignore syntax: prefix with ! to un-ignore, end with / for a directory, use * as a glob.
Output options
How the file is formatted
Output
Your .gitignore
93 lines, 59 ignore rules
# Generated with Zero Signup Tools (zerosignuptools) # https://zerosignuptools.com/tools/gitignore-generator # Edit freely. Add or remove sections to suit the project. # ============================================================ # Node.js # node_modules, npm/yarn caches, coverage, dist. # ============================================================ node_modules/ npm-debug.log* yarn-debug.log* yarn-error.log* pnpm-debug.log* .pnpm-store/ .npm/ coverage/ .nyc_output/ dist/ build/ *.tgz .cache/ .parcel-cache/ # ============================================================ # Next.js # .next, turbo cache, build artifacts. # ============================================================ .next/ out/ .vercel/ .turbo/ next-env.d.ts .swc/ # ============================================================ # Visual Studio Code # Per-user VS Code metadata, history, settings. # ============================================================ .vscode/* !.vscode/settings.json !.vscode/tasks.json !.vscode/launch.json !.vscode/extensions.json !.vscode/*.code-snippets .history/ *.vsix # ============================================================ # macOS # .DS_Store and macOS metadata. # ============================================================ .DS_Store .AppleDouble .LSOverride Icon ._* .Spotlight-V100 .Trashes .fseventsd/ .DocumentRevisions-V100/ .TemporaryItems/ .VolumeIcon.icns .com.apple.timemachine.donotpresent .AppleDB .AppleDesktop Network Trash Folder Temporary Items .apdisk # ============================================================ # Environment files (.env) # Local .env and dotenv per-environment files. # ============================================================ .env .env.local .env.*.local .env.development .env.test .env.production .env.staging .env.backup # ============================================================ # Log files # Wildcard log patterns and runtime crash dumps. # ============================================================ logs/ *.log lerna-debug.log* core.* *.heapprofile *.cpuprofile
.gitignore syntax cheat sheet
- filename ignores that name anywhere in the repo.
- /filename ignores the file only at the repo root.
- folder/ ignores a directory and everything inside it.
- *.log matches any file ending in .log.
- **/build matches build at any depth.
- !keep.log un-ignores a file that an earlier rule excluded.
- # comment documents a rule. Comments are ignored by Git.
Things to remember
- .gitignore only affects untracked files. To stop tracking a file already in the repo run git rm --cached first.
- Commit your .gitignore. It belongs in source control so every contributor uses the same rules.
- Order matters: a later ! rule can re-include something an earlier rule excluded, but you cannot un-ignore a file inside an ignored directory.
- Per-user editor rules (your personal .vscode/ setup) often belong in your global gitignore, set with git config --global core.excludesFile.
How to use
- Pick a quick stack (Next.js project, Python and Django, Node and Express, Rails, React and Vite, or Go service) to seed sensible defaults, or start from scratch by selecting templates one by one.
- Browse templates by group (Languages, Frameworks, Runtimes, Build tools, Editors, OS, Misc) or filter with the search box. Tick every part of your stack that applies.
- Add any project-specific patterns to Custom rules using standard .gitignore syntax (use ! to un-ignore, trailing / for directories, * and ** for globs).
- Toggle Output options to control the header banner, section headers, and deduplication of identical rules.
- Click Copy to copy the .gitignore to your clipboard, or Download .gitignore to save the file straight into the repo root.
About this tool
Gitignore Generator builds a clean, deduplicated .gitignore file for any project in the browser. Pick the parts of your stack from curated templates for languages (Node, Python, Java, Go, Ruby, Rust, PHP, C#, Swift, Kotlin, Dart, Elixir, Scala, C/C++), frameworks (Next.js, React, Vue, Angular, Svelte, Nuxt, Django, Flask, Rails, Laravel, Spring Boot, Express), runtimes (Deno, Bun), build tools (Webpack, Vite, Parcel, Turborepo, Tailwind, Yarn Berry, pnpm), editors (VS Code, JetBrains, Vim, Emacs, Sublime), operating systems (macOS, Windows, Linux), and miscellaneous concerns (.env files, log files, Docker, Terraform, secrets and keys). Each template is hand-curated to widely accepted community defaults so the resulting file matches what teams actually commit. Quick stacks seed common combinations in one click for a Next.js project, a Python or Django app, a Node and Express API, a Rails app, a React and Vite frontend, or a Go service. Section headers label every block so the file stays readable, and a deduplication pass keeps duplicate rules (like dist/ shared across bundlers) to a single occurrence while preserving comments and blank lines. A custom rules textarea takes any project-specific patterns using standard .gitignore syntax: ! to un-ignore, trailing / for directories, * and ** for globs, # for comments. The output panel shows the full file with live line and rule counts and offers both copy and download buttons. Everything runs locally in your browser, so your custom rules and selections never leave your device. Useful for spinning up a new repo, refreshing a stale .gitignore that misses a tool you just added, sanity-checking what to ignore for a stack you have not used in a while, or generating the per-user pieces you want in a global gitignore set through git config core.excludesFile.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
Set-Cookie Builder
Form-driven Set-Cookie header builder with conflict warnings and server snippets.
Open tool
DeveloperMIME Type Lookup
Find the MIME type for any extension, with Content-Type header and aliases.
Open tool
DeveloperCron Expression Generator
Build and explain cron expressions with plain English and a next-run preview.
Open tool
DeveloperCSP Header Generator
Visual builder for the Content-Security-Policy HTTP header.
Open tool
DeveloperCache-Control Header Builder
Build and parse Cache-Control headers with directive flags, max-age presets, conflict checks, and ready-to-paste server snippets.
Open tool