Gitignore Generator
Generate a .gitignore file by selecting the platforms, languages, frameworks, IDEs and tools your project uses — Node, Python, Java, Go, Rust, macOS, Windows, VS Code, JetBrains, Terraform, Docker and more. Merges the chosen templates, de-duplicates repeated patterns, and lets you append custom rules.
Input
Tick every platform, language, framework, IDE and tool your project uses. Their .gitignore rules are merged (duplicates removed) into a single file below.
Languages & Runtimes
Frameworks
IDEs & Editors
Operating Systems
Tools
Custom Patterns
Appended under a “Custom Patterns” header. Lines starting with # are kept as comments.
Output
Guides
Create a ready-to-use .gitignore file in seconds by ticking the platforms, languages, frameworks, IDEs and tools your project actually uses. The generator merges the matching ignore rules into one clean file, removes duplicate patterns, and lets you append your own custom lines.
What is a .gitignore file?
A .gitignore file tells Git which files and folders to leave untracked. It keeps build artifacts, dependency folders (node_modules/, /vendor/), local environment secrets (.env), editor metadata (.idea/, .vscode/), and OS clutter (.DS_Store, Thumbs.db) out of your repository. A good .gitignore from day one prevents accidental commits of secrets and gigabytes of generated files.
How to use this generator
- Check every technology in your stack — for example Node, Next.js, VS Code and macOS for a typical front-end project, or Python, Django and JetBrains for a Django app.
- The output updates instantly as you toggle each option.
- Add any project-specific rules in the Custom Patterns box, one per line. Lines beginning with
#are preserved as comments. - Copy the result or download it directly as
.gitignoreinto the root of your repository.
How the merge works
Each selected template is written under its own # Name header so the file stays readable and easy to audit. Patterns are de-duplicated globally: if two stacks both ignore dist/ or .env, the pattern appears only once, under the first template that declares it. That means you can safely combine a language, a framework, an editor and an operating system without ending up with a file full of repeated lines.
Which templates are included?
The generator covers common, real-world conventions faithful to the popular GitHub and gitignore.io templates, grouped into:
- Languages & runtimes — Node, Python, Java, Go, Rust, Ruby, PHP, C/C++, C#/.NET
- Frameworks — Next.js, React, Vue.js, Angular, Django, Laravel, Ruby on Rails
- IDEs & editors — VS Code, JetBrains, Vim, Sublime Text, Eclipse
- Operating systems — macOS, Windows, Linux
- Tools — Docker, Terraform, and a general logs block
Where does the .gitignore file go?
Place it in the top-level directory of your Git repository. Git applies the rules to that folder and all subfolders. You can add additional .gitignore files deeper in the tree for directory-specific rules.
Can I ignore a file that's already tracked?
Adding a pattern to .gitignore only affects untracked files. If a file is already committed, run git rm --cached <file> once to stop tracking it, then commit the change.
Is this private?
Yes. Everything runs entirely in your browser — your selections and custom patterns are never uploaded to a server.