A Jamstack site typically has three primary pieces:
Netlify focuses on that third piece. It is a tool that will run your build process when you make a change, and then upload your static files to a CDN to serve them to your visitors without the need for an application server or database. It automates this process by connecting to your GitHub (or other Git remote provider) repository and running builds when code changes (based on your configuration).
But Netlify also understands that the practicality of scaling Jamstack sites requires additional functionality, which is why they offer features like form submissions, authentication, and serverless functions. They even have an open-source CMS.
But Netlify isn't just another player in the Jamstack ecosystem. In fact, Netlify (or, more specifically, CEO Matt Biilmann) actually coined the term Jamstack (originally "JAMstack"). On one hand, that means that some (for-profit) company holds the reigns to a community, including its website, conference, and Slack community. On the other hand, it means there is a major player in the Jamstack community driving to keep the community's best interests at heart.
That's what I love most about the Jamstack community and Netlify. As the founders, Netlify welcomes competition. And yet, at the same time, they are dedicated to maintaining the core benefits of what makes the Jamstack so great within their primary service offerings.
As an introduction to Netlify, this only brushes the surface. I write quite a bit about Netlify and also the Jamstack. Check out some of those articles or give Netlify a whirl to see for yourself what it's all about.
Netlify form handling is an extremely powerful feature that enables you to collect dynamic data from your users on your static sites. But it's a little tricky to get it working right within a Gatsby project. Here's a detailed look at a couple different ways of approaching Netlify forms for a Gatsby site.