BlogPodcastAbout💌 Tiny Improvements

gitignore.io is great

Put simply, gitignore.io is a tool that is so profoundly helpful that I've forgotten what life was like without it.

Put simply, gitignore.io is a tool that is so profoundly helpful that I've forgotten what life was like without it.

Its purpose is simple: for any project you're working on, it'll generate a valid .gitignore file for you. All you need to do is use the autocomplete box provided to describe the type of project you're working on:

Screenshot of the web interface for gitignore

A .gitignore file is used to tell git to exclude files from being added to a given repo. Each line of the file represents a filename, directory, or pattern. When git looks for changes in your working directory, it will automatically ignore any file that matches an entry in your .gitignore file.

From there, you'll hit the Create button, which will bring you to a page that displays nothing but the raw text which you'll need to add to your project's .gitignore. If you selected just react, for example this is what you'd see on the next page:

# Created by https://www.toptal.com/developers/gitignore/api/react
# Edit at https://www.toptal.com/developers/gitignore?templates=react
### react ###
.DS_*
*.log
logs
**/*.backup.*
**/*.back.*
node_modules
bower_components
*.sublime*
psd
thumb
sketch
# End of https://www.toptal.com/developers/gitignore/api/react

That's all there is to it, too! I use it on the vast majority of projects I work on, new and old, and as far as I can tell, it hasn't let me down in any meaningful way.

It's Open Source!

One of the reasons I like this tool so much is that it gets better the more people use it. Is it missing support for a project type that you work with? Go ahead and submit a Pull Request, and it may be integrated into the product one day. Or, if you're not quite comfortable with a full-on PR, you can start the discussion in an issue on the repo. Maybe something isn't working like you'd expect -- and it's worth pitching in your two cents in the discussion on an open issue. All of that is contributing to Open Source -- don't forget!

As I understand it, it was created by @joeblau, and quickly gained momentum with developers. As I write this post, there are 135 contributors on the project.

Gitignore.io is a great example of a successful Open Source tool born out of the desire for an improved developer workflow. It currently appears to be operated by TopTal, a company that helps freelancers find work.

(note for transparency: I have no connection to TopTal, and this is not a sponsored post. I do (update: 11/2020) used to work for

Aquent

, which is a creative staffing agency. If you're looking for work, give us them a look!).

There's a CLI

If you prefer it, there's a CLI which will help you generate gitignore files, powered by this same project. I can't say I've used it, but I know some of you will want to give it a go, so it's worth mentioning

There's other options, too

If you don't find gitignore.io particularly appealing, there's always other ways to cretae your .gitignore file. You can write it by hand, or grab one from another project you work on. GitHub also maintains a repo of popular gitignore files, which seems to be updated quite frequently as well.

Was this helpful?

If you found this useful, I'd love it if you subscribed to my mailing list. Details are below!

Mike Bifulco headshot

Subscribe to Tiny Improvements

Learn about designing & building great products for the web, and my philosophy for living a life you love in an ever-changing world.

Typically once a week, straight from me to you. 😘 Unsubscribe anytime.


Interested in sponsoring? → Click here

***
© 2019-2022 Mike Bifulco

Interested in sponsoring? → Click here

Disclaimer: 👋🏽 Hi there. I work as a Product Builder at [Incognito Mode]. These are my opinions, and not necessarily the views of my employer.
Built with Next. Source code on GitHub.

More great resources

Articles about React.jsArticles about Remix.runArticles about Next.jsArticles for developersArticles for JavaScript developersArticles about CSSArticles about User Experience (UX)Articles about tools I useArticles about productivityBrowse all topics →