gitignore Generator
Generate a .gitignore from your project folder. Unlike the competition, nothing is uploaded — not even the file names ever leave the page.
This tool runs in your browser. No data leaves your device.
Only file and subfolder names are read — contents are never read or sent anywhere.
No matching templates.
Pick at least one template, or select a folder.Copies a "cat > .gitignore <<'EOF' … EOF" shell command to your clipboard; it creates the file with the leading dot intact. bash/zsh only — it won't run in Windows cmd or PowerShell. It overwrites an existing .gitignore file.
Your browser may drop the leading dot from the downloaded name; rename the file to .gitignore if it does.
How It Works
Generates a sectioned, deduplicated .gitignore for your project’s languages and tools.
Common generators like gitignore.io fetch the template from a server; here templates
ship with the page, and folder selection never leaves the browser either — only file
names are read, never contents.
Two ways in
- Pick a folder — the browser hands over every file’s name and relative path inside
the folder you choose. This tool reads only those names (
file.name,webkitRelativePath); no file content is ever read, andFileReaderis never called anywhere in this code. It pre-checks matching templates from the names alone. - Pick tags — without selecting a folder, check as many templates as you want from a
filterable list. Fully functional on its own, even in a browser that doesn’t support
webkitdirectory.
Both paths work together: folder detection pre-checks templates, you correct them.
Detection rules
package.json→ Node.js; ifnext.config.js/.mjs/.tsis also present, Next.js is added.composer.json→ PHP (Composer) and Laravel.Cargo.toml→ Rust.go.mod→ Go.*.xcodeproj→ Xcode..idea/→ JetBrains IDEs..DS_Store→ macOS.
Rules stay broad on purpose: a false positive is cheap (you uncheck it), a missed template is more expensive. You can also check any template by hand.
Output
Each selected template appears under its own ### Name ### heading; a line that appears
in more than one template is kept only in the first section it shows up in and dropped
from later ones. Copy the output to your clipboard, use “Copy as command” for a cat > .gitignore <<'EOF' … EOF shell command that writes the file under the right
name directly, or download it as a file. The command overwrites an existing .gitignore
file. Chrome and other Chromium-based browsers save
the download as gitignore, without the leading dot; use the command if you need the
exact name, or rename the downloaded file by hand. The command only works in bash/zsh —
it won’t run in Windows cmd or PowerShell.
Privacy
This tool runs entirely in your browser and makes no network requests. When you pick a folder, the only thing read is file and subfolder names — contents are never read or sent anywhere. The templates themselves ship with the page too, so nothing is fetched while generating output.