Why do you need a .gitignore in your project?
A .gitignore tells git which files to skip when you run `git add`. Without one, you will commit node_modules, .env with secrets, build/ with 200 MB of binaries, .DS_Store from macOS, and other junk.
Here you pick ready-made presets for your stack (Node, Python, Next.js, Django, Docker...), click "Copy", and paste into the `.gitignore` at your repo root.
It all runs offline - the rules are baked into the page, no GitHub API calls. Rules are deduplicated across presets to keep the file readable.
How to use it
- On the left, tick the presets for your stack. Use the search box to narrow down ("python", "next").
- Categories: Languages (Node, Python, Go...), Frameworks (Next.js, Django, Laravel...), Tools (Docker, Terraform), OS (macOS, Windows, Linux), IDE (VS Code, JetBrains, Vim).
- On the right you see the assembled .gitignore with section headers and deduped rules.
- In Custom rules, add anything specific to your project (e.g. `secrets/`, `local.config.ts`).
- Copy the result with Copy or download a ready .gitignore file to drop into your repo root.
When this is useful
Daily situation: you start a project and need a solid .gitignore:
- New Next.js / React project - pick "Node", "Next.js", "VS Code", "macOS". You have a `.gitignore` in 5 seconds instead of hunting on StackOverflow.
- Migrating an existing project - you copied a repo with no .gitignore. Generate the right one in a minute.
- Mixed monorepo - Next.js frontend, Python/Django backend, Terraform infra. Pick all four, get one file.
- Auditing an old .gitignore - your existing file has gaps (missing `.env.local` or `.pnpm-store`). Generate a fresh one and diff.
- Onboarding a junior - send them this page instead of explaining what should be ignored.
- Dropbox / cloud-synced projects - exclude Dropbox cruft from git.
- Multi-OS team - mac devs need `.DS_Store`, Windows devs need `Thumbs.db`, Linux devs need `*~`. All in one click.
Related tools: the package.json validator makes sure you do not commit an invalid manifest. The Vite / Next config builder generates ready bundler configs.