.gitignore generator
Pick your stack and get a combined .gitignore.
FreeRuns in your browserNo signupUpdated 2026-10-29
Languages
Frameworks
Mobile
Operating systems
Editors
Patterns follow the github/gitignore templates, trimmed to the entries that matter in practice. Rules last checked October 2026.
Templates
4
Node, Next.js, macOS, VS Code
Rules
51
No duplicates
# Generated with mshtechnologies.com/tools/gitignore-generator # ---- Node ---- node_modules/ npm-debug.log* yarn-debug.log* yarn-error.log* pnpm-debug.log* .pnpm-store/ lerna-debug.log* .npm .eslintcache .node_repl_history *.tgz .yarn-integrity .env .env.* !.env.example coverage/ dist/ .cache/ .turbo/ # ---- Next.js ---- /.next/ /out/ /build next-env.d.ts *.tsbuildinfo .vercel /.swc/ # ---- macOS ---- .DS_Store .AppleDouble .LSOverride Icon ._* .DocumentRevisions-V100 .fseventsd .Spotlight-V100 .TemporaryItems .Trashes .VolumeIcon.icns .com.apple.timemachine.donotpresent .AppleDB .AppleDesktop Network Trash Folder Temporary Items .apdisk # ---- VS Code ---- .vscode/* !.vscode/settings.json !.vscode/tasks.json !.vscode/launch.json !.vscode/extensions.json !.vscode/*.code-snippets .history/ *.vsix # Project specific /tmp/ *.local
About this tool
How it works and how to read the result.
Need this done for you?
Web app & SaaS development
SaaS products and web apps, from first version to scale.
See the serviceWhat it does
A gitignore generator builds the .gitignore file for a new repository from templates you select, so dependencies, build output, editor settings and operating-system clutter never end up in version control. Tick the languages, frameworks, mobile platforms, operating systems and editors that apply, add any project-specific patterns, and the merged file appears on the right with a comment marking where each section came from. Patterns that appear in more than one template are included once. Copy it or download it straight into the repository root.
How to use it
- Tick the templates that match the project. Node and Next.js are preselected along with macOS and VS Code as a common starting point.
- Add extra rules in the text box, one pattern per line, such as a local uploads folder.
- Check the rule count and the duplicates note.
- Download the file and place it at the top level of the repository, then commit it before adding other files.
How to read the result
With the default four templates selected, the output has 51 rules and no duplicates. Tick Python as well and it grows to 76 rules with 2 duplicates removed, because Node and Python both ignore dist/ and .env. Each section starts with a comment naming the template, so a teammate reading the file later knows why a pattern is there.
Reading the rules themselves: a trailing slash such as "node_modules/" matches directories only. A leading slash such as "/.next/" anchors the pattern to the repository root, so a nested folder with the same name is not affected. An asterisk is a wildcard, so ".log" catches every log file. A leading exclamation mark re-includes something a previous pattern excluded, which is how ".env.example" survives the ".env." rule and how a few VS Code settings files stay shared while the rest of the folder is ignored.
Every repository we start for a web app project begins this way. If the project needs scheduled tasks, the cron expression generator is a useful next stop.
Questions
Frequently asked.
Which templates should I pick?
One for each language or framework in the repository, plus one for every operating system and editor your team uses. A typical Next.js project on Macs with VS Code needs Node, Next.js, macOS and VS Code. Add Windows if anyone on the team uses it, since Thumbs.db files appear otherwise.
I added .gitignore but the files are still tracked. Why?
A .gitignore only affects files Git is not already tracking. Files committed earlier stay in the repository until you remove them from the index with "git rm --cached path", then commit. After that, the ignore rule applies and the files remain on disk but are no longer versioned.
Should .env be in .gitignore?
Yes, always. The Node template here ignores .env and every .env.* variant while keeping .env.example, which is the file you commit to document the variables without their values. If a .env was ever committed, remove it and rotate the secrets it contained, because the history still holds them.
Your next move
Like what you see? Tell us about it.
A process that takes too long, a website that undersells you, or an idea ready to take shape. Tell us where you are and we will suggest a useful next step.
India · Working with clients worldwide