Can anyone explain the elevator pitch of Netlify to me? I know it's become quite popular in the last couple of years and I can't figure out why. I don't doubt that it's good at what it does, but it seems to do the same thing as any number of services.
For example, I see a lot of people talk about it for static sites. But you get free static sites through GitHub, nearly free static sites on Amazon S3. What does Netlify do special that these others don't? I'm not attempting to bash the service, I just want to understand what its killer features are.
One feature I haven't seen in the comments here is the ability to just drag and drop an entire website folder from your harddisk to Netlify and it's live within seconds. Which worked great for a couple of older personal websites I had.
Second feature that is great is that you can use the cli to perform a draft deploy, which generates a unique public URL which you can share with your testers/marketeers/writers/translators etc. It's a great and easy way to quickly share test versions without having to set up auth (the draft URL's are a hash, so pretty long and unguessable).
Third useful feature is that Netlify can capture form submits. It's quite basic but works great if you have to whip up a quick page to gather email addresses, RSVP's etc.
It's also great that they have integrated Lets Encrypt, but Netlify did experience a bad outage a couple of weeks ago where wrong certs were served (for a different domain) causing a big scary warning for our visitors. Luckily this was resolved pretty quickly, but you do feel pretty powerless when something like that happens.
At Mailhardener we run most of our static content from Netlify and we are very pleased with the service that Netlify offers.
Welcome to 1997! This is how Geocities, Tripod etc worked back then (I think geocities.ws has FTP access too, for the complete experience). Amazing to see the web coming full circle even on this.
But yeah, it's basically like that but with some more modern features like being able to do this from a browser (no filezilla required!) and better control over HTTP headers and such.
Geocities was enormously popular for good reasons.
However, I don’t think it had the ability to preview a deploy or roll it back with 100% certainty that it will be exactly as was before, which is something you really need when deploying is (too) easy.
I have seen those exact words to describe Netlify - it's like Geocities, but for the modern web. I have yet to try it out for myself, but I'm thinking I may use it to get a personal site up and running since I have a tendency to take the power of running my own site on my own VPS a bit too far by changing it up (and usually breaking it) frequently...
There's also Neocities as an acceptable replacement for Geocities. It's also free, unless you want to use your own domain, which requires a $5/mo "donation" to become a Neocities supporter and unlock that and a few other features.
The guy who runs the site gave a talk a while back about how crazy cheap it is to host it, and why cloud vendors like Amazon and Google are making suckers out of people.
"High Volume, Bandwidth Heavy Infrastructure On The Cheap"
> One feature I haven't seen in the comments here is the ability to just drag and drop an entire website folder from your harddisk to Netlify and it's live within seconds. Which worked great for a couple of older personal websites I had.
How is this different than `aws s3 sync local/ s3://your-website.com`?
1. With Netlify you don't need to install any command line tool. For non-technical users it's a must.
2. Netlify is a CDN, so "dragging and dropping" would be equivalent to setting up S3 + Cloudfront.
3. You have to create the bucket before running this command. With Netlify you just drag and drop and it takes a couple seconds (if the site is small enough to be built that fast).
4. Netlify is also able to run a build phase before deploying. With S3 you have to do it locally or setup a remote machine.
The big win for me, and the reason I use Netlify, is that it gives you atomic deploys without any effort. `aws s3 sync` works fine in most cases, but its not atomic, so if you want to make sure what you're deploying is going to work for 100% of users all the time you end up having to build something more complex - at the simplest that involves adding a hash to all your files, making sure they're deployed, and only then pushing index.html (and any other entrypoints).
With Netlify I can just hook it up to Github and they'll handle running any build scripts, and then smoothly flip from the previous version to the new one in single action.
Usability is a killer feature. It’s possible to build a website without understanding how to use the command line. I know I managed it when I was younger!
> But you get free static sites through GitHub, nearly free static sites on Amazon S3.
I've been really happy using Netlify (with Jekyll) for https://www.checkbot.io/ - I didn't have to think about server admin at all when I got traffic spikes from Hacker News and Product Hunt traffic, and development features make working on the website really straightforward.
Features I like:
- Git based deploys automatically when you make a commit
- Git based rollbacks if there's a problem with the latest commit
- non-master Git branches are automatically deployed for preview
- automatic CDN + HTTPS setup
- no servers to admin i.e. they deal with security, scaling and configuration for you
- they do instant cache invalidation of images/CSS/JS files for you so there's no stale files being served after deploys
- before deploying you can run complex build scripts on Netlify to generate files to be deployed e.g. any static site generator you want to use, run arbitrary NPM scripts, you can download data that to be rendered on to a page
- you can use Netlify CMS as a friendly web interface to edit blog posts, articles and FAQs. It's easy enough for non-technical people so it's possible to use for standard business websites that would normally require something more complex to admin like WordPress.
You can cobble together something like the above yourself but Netlify makes it simple and robust so you can get on with more important things.
People that say you can do something similar with e.g. a Digital Ocean droplet are missing the point and are for sure paying with their time. If you've worked in web dev for a while you've probably tried to automate many of the above features yourself but it's just never going to be as robust as a service that has a dedicated support team behind it.
Obvious to everyone except me, it seems, so obvious that it's never mentioned by anybody, is: What about databases?
The answer could be, "Well, obviously, it's not for database-backed websites", or "Obviously it's perfect for database-backed websites, because now you can use their X feature for your database", or "Obviously, you use some other company to host your database but Netlify for everything else, which is a great improvement because...", or whatever.
Honestly? Most internet sites don't _need_ a database. You could probably replace most* wordpress/squarespace/wix sites with a statically generated site.
You can call api's from JS and host your database separately, also possible that people use some kind of "serverless" database like google firebase.
Right, and the rest of them—a very significant portion—do. And yes, I realize that it's possible to use JS to fetch from anywhere, but what I'm wondering is what people are thinking when talking about Netlify.
Are they thinking that this isn't really for database-backed websites but can be used if some other Netlify advantage justifies putting your database and the server code that uses it in different timezones? Or is it the opposite, that this is actually a better way of managing a database-backed website?
What is the positioning of this new type of managed hosting with respect to websites that depend on databases full of, say, customer data? It seems as though that would be a FAQ, not an exotic niche.
I guess they're going after the people who don't need a db first, then add features to support some kind of "db-lite" functionality later. They're competing with wordpress/squarespace, not gcloud or aws (mostly..) :)
You're forced to use Jekyll, though, and you're forced to use Github. Netlify lets you generate your site however you want and doesn't tie you to a git provider.
You're not forced to use Jekyll. You just get some nice things if you do. As long as you have a pages repo with an index.html in the root, GitHub can serve it for you. How you generate the repo is completely up to you. I have my own custom static site generator that I use to publish my blog, I use that with a script that does some git dance to keep things clean and it just works.
If you don't use Jekyll (let's say, e.g Hugo) you have to commit the content/artefacts to be published to the repo. Committing artefacts to a repo, even if it's a dedicated branch with a separate root, always seemed like a glorious hack to me with consequences such as CI needing push access to the repo. GitLab CI+Pages doesn't need such a hack but then, competing with that would mean GitHub would basically have to allow running arbitrary process during the publish pipeline, which means they'd enter CI space.
From one perspective it’s web hosting from the 00’s using git repos instead of FTP, and adding a couple of neat APIs as add-on products. Your build process can also be codified into Netlify instead of doing it all locally and pushing your final assets.
But that would be missing the point. It’s the promise that they’ll handle things for you. You don’t need to know how to configure a web server, ha proxy, systemd, firewalls, set up network topology or failover, nagios, collect logs, update servers, pay attention to security announcements. You just need to write your thing and commit it to git, and they got you from there.
You may want that for a bunch of different reasons. Maybe you legitimately have no idea how to do all of that yourself and don’t want to learn. Maybe you can do all of that yourself, but you don’t want to… there can be a bunch of reasons for that from cost/benefit to not wanting to bother maintaining a server for a one-off project.
This space isn’t really new, dotCloud in 2010-2011 I think I did the same thing — they supported a lot more backend languages, there had been some Ruby on Rails ones that were similar ‘git repo to production site’ hosting services, but I forget their names.
One feature they have that particularly made me go, “Oh… you guys are smart,” is https://www.netlify.com/docs/form-handling/ Any random small site usually wants some kind of contact form, and they’ll capture some POST endpoints for you and handle that. I imagine over time more and more things along that line will be added.
I don’t normally do JS stuff, but I’ve been learning recently. My friend, John, records videos for YouTube where in one recording session they make a half-dozen episodes. He’s been going on about wanting an app that has a global timer aligned with the video recording, and then a sub timer aligned with the episode with play/pause/flag/comment/delete functionality. I made it to learn VueJS and give him a good birthday present.
I got it set up and deployed in under 15 minutes with Netlify, it has SSL, is speedy, and with Netlify I don’t have to maintain anything or think about it any more: https://timer.onthebranch.com/ so it was a big win for me there.
> I got it set up and deployed in under 15 minutes with Netlify, it has SSL, is speedy, and with Netlify I don’t have to maintain anything or think about it any more: https://timer.onthebranch.com/ so it was a big win for me there.
The crazy thing is that app is basically all client side, and yet you need a whole managed server infrastructure just because there's no P2P way for you to share the code with your friend and for him to be able to run it.
It's hard to explain. Unlike any other product I've ever used it just works. It's like hosting + CI/CD + CMS features all in one. Deploying just works, there's hardly any configuration you have to do. I used to put all of my static sites and simple applications on DO droplets, but Netlify just makes things much easier way easier (if you can believe it). It's like a PaaS for static sites on steroids.
I like to think of these things as "removing the sand".
It's coarse, rough, irritating and gets everywhere. It's the stuff that makes each tiny step that little bit more annoying. Checking how to set permissions on S3, looking up how to make sure things are redirecting to HTTPS properly, setting up a pre-live stage, etc. Each thing is pretty minor, each tiny interaction not a major deal, but together it's annoying. Netlify has not been annoying.
Basically - once you have the toolchain for generating sites on your local environment, Netlify automates all of the toolchain in the cloud by just hitting 'git push'. It then has ancillary services for more "functional" components that often static sites lack (functions, forms, etc).
It's one of my favorite platforms because of its simplicity.
Github.io can build jeckyll for you, iirc. Netlify does the same thing, with more features.
One Netlify feature I like is that if you host a domain with them, you can deploy branches to subdomains via git naming. This is good way to set up dev/test/prod environments with very little hassle.
Something I see in a lot of threads like this is "What's so special about that? I can do all that stuff myself while self-hosting!" Yeah, but should you? Setting all this stuff up is a bunch of schlep that has no productive value, and I'm quite happy to outsource it to someone who makes it easy and obvious.
Hmm, you right. You could also build a Dropbox clone yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem.
But Dropbox is something for laymen and casual consumers, it had a massive convenience quotient — Dokku and Netlify (and surge.sh and Heroku, etc) are for developers specifically, and git pushing to website generator is more or less the same experience with all of those services. There isn’t a gulf of difference between using Netlify and creating a Dokku droplet on DigitalOcean...
Edit: comment below helped me too, CDN, SSL, pretty URLs. All good value with Netlify. Thanks.
> There isn’t a gulf of difference between using Netlify and creating a Dokku droplet
There absolutely is.
There might be one click deployment for tools as DO droplets, but if you're the target user for that kind of thing, you're probably taking on more responsibility than you're even understanding. It might even be that the one click setup has good security defaults and automatic updates set up. It might continue to work without any issue and any intervention for a long time, but by luck/coincidence. On netlify it will continue to work because someone is taking care of the things that need to be taken care of, not because of luck/coincidence.
Another perspective: You're a JS/HTML/CSS developer. Heartbleed happens. On netlify, you don't even need to pay attention. On DO you at the very least need to understand how to check that all your servers are updated.
Another perspective: I've managed linux servers before. I know how to do it. I don't enjoy it.
Yes, you could do all of that or just sign up for a Netlify account, create a site, add your shared key and hit "git push". SSL, CDN, etc. all included.
Not to degrade the mention... I've done a lot of the same with Dokku on DO before. There's plugins for Let's Encrypt and some other bids. CDN, haven't worried about it too much, have used Cloudflare in front of a few sites, ymmv though.
Netlify is definitely on my todo/reading list... I just tore down my personal website and blog, with the intent of getting it running elsewhere. For my blog, I exported all the details into markdown files with front matter, but hadn't done anything to get it re-published anywhere. So, who knows.
I have a genuine interest in exploring a lot of this, but motivation + time have been limiting factors for me.
I had the same issue with motivation + time but I already had my site setup/building via hugo. One day I said enough and I looked into it. In about 10 minutes I had it all setup with ssl, my custom domain, etc.
I get this experience using non-netlify-specific tools and processes already. I've also been doing this type of work professionally for 15+ years. If I was just starting out today, netlify would be a huge time saver, at the cost of a ton of knowledge you gain doing it yourself.
"But wait...there's more". If you're a new to development or operations, you might be tempted to use something like netlify. If your project has a high probability(>75%) of generating real income, then DEFINITELY use netlify. Anything that stands between you and deployment is costing you money. But... if your project is a hobby or non-serious-revenue-generating endeavor: please please please do it yourself. Learn apache syntax, learn nginx syntax, explore why `setenforce 0` is for hacky amateurs. You'll learn marketable skills, that will help you in your future career endeavors.
Netflify creates a skilled "user of netlify". Doing it yourself creates an "engineer". Which of those two would you rather be?
As someone who works in the amorphous realm of "digital strategy", I was pursuing this exact "learning path" by deploying my personal website on Digital Ocean, where your droplet is a blank slate, and you have to configure everything.
Given the number of help threads and spotty documentation I had to look through to deploy a simple Wordpress site, I'd say it was more of a hassle than anything else. Unless you plan on doing this several more times, at which point you'd likely have worked the kinks out, stick with deepening your knowledge in an existing area of proficiency.
Not to turn a Netlify topic into a DigitalOcean topic, but when you created your droplet did you select the pre-built Wordpress option? May have helped you a bit. (I used dokku-wordpress[0] on my dokku imaged server, personally.)
I did not, specifically because I wanted to learn how DO worked, without any "Wordpress 1-click wizard" stuff. Bluehost has the same "Instant Wordpress" thing that I avoid, as I write my own CSS and page templates and I wasn't planning to use an off-the-shelf theme.
On DO, I learned that you have to set up everything yourself, like SSH, Apache, MySQL, PHP, SFTP. I haven't found good documentation on how to set up a Git workflow from my local dev environment, so that's the next step. I have a non-database PHP site I plan to use for that.
> But... if your project is a hobby or non-serious-revenue-generating endeavor: please please please do it yourself. Learn apache syntax, learn nginx syntax, explore why `setenforce 0` is for hacky amateurs. You'll learn marketable skills, that will help you in your future career endeavors.
One of the many hats I wear is to do a lot of those things[0]. I setup nginx inside a docker container to act as a reverse proxy for an http api living in another container, and now that's done but it's time to put on another hat and train users on the new core platform we're using, but now it's time for the legacy maintenance hat, but this hat is on fire, and...
If I'm working on a project for fun, I want to have as few barriers as possible, because I'm already facing an uphill motivational battle after a long day at work, or on a weekend where I just want to relax.
[0]:
I did have to lookup `setenforce`, because I've never had reason to disable SELinux.
Echoing what a few other people have said, but a few things I've noticed Netlify does really well:
- Their builds on popular front end frameworks that use say webpack are really good out of the box, but can be tweaked and configured as well. I have run into odd bugs going from CRA to a production build on my VPS that for some reason just deploys seemlessly on Netlify. Not that I couldn't have fixed the VPS with a little effort, but it just works™
- The CDN also works on your static assets out of the box and serves so much faster than some of my VPS boxes that have a decent number of xeon cores running nginx.
- While I haven't used it, apparently they put a veneer layer on Lambdas and MSFT Functions that make it less of a pain in the ass to deploy, ie abstracting away all the security groups, scaling etc details
- It's free for everything I've thrown at it. It worries me slightly that if I ever outgrow their free tier the pricing will be really steep since you are enabling all the free tier infrastructure, but for now it's been amazing for JAMstack type apps.
I jumped to Netlify after I had my static site on s3 and thought to myself "securing it through letsencrypt could be nice" and after 3 hours I couldn't get it working, so I ported the site over to Netlify in ~15 mins including the lets-encrypt integration and pointing the domain over.
For reference you need to use Cloudfront to back S3 static sites (kinda sucky) to get SSL - We do that on prod but we also use netlify for dev (we could for both, but AWS existed before in out estate, accounting etc)
I faintly remember some weird edge-cases, like I could enable cloud-front only for S3 buckets hosted in us-west-1, but I had it setup in eu-central or something like that?
I don't mind AWS, but Netlify was just painless.
In similar fashion I use now.sh, I could upload a thing to s3 and fiddle with permissions and settings, or I could `now` :)
Both of those services you listed are generic tools.
Netlify is for one use case - front end developers deploying websites.
That means things like automatic asset compression and minification, feature support for things you’d normally need to setup a backend server for (login, form capture, etc), automatic SSL certs, CMS, etc.
Yes, most of their features can be replicated with other tools, but the point of Netlify is that you don’t need to with them, because they understand your perspective (hosting a static website as a front end developer) and they handle things for you.
It's basically Heroku for the static generated site ecosystem.
I'm currently building a Gatsby/React site for a small grocery store chain, Netlify makes the process easy with hooks, cli, and many things I found on Heroku. Sure, I could host it elsewhere that has an S3 service but then I have to worry about configuration.
Netlify does the whole static thing better, by being extremely focused on all things static, which makes setting up a static site on netlify way less stressful than on github and amazon, there is also the market knowledge factor, I mean github is known for hosting code repos and S3 is known for hosting files(videos and pictures), netlify meanwhile is known for static pages.
Automatic form handling (by just adding a "netlify" attribute the <form>) is a good example. It's a pain having to set up a whole dynamic infrastructure besides your static site just to record a few form submissions by visitors.
That focus 'thing' is a good advantage all on its own,Netlify is also way easier for non developers to quickly set up their page on than other services, i mean check out just how easy it is ;https://www.netlify.com/blog/2016/09/29/a-step-by-step-guide...
After logging into netlify drag and drop a folder and you have a new site. Or deploy with a git push. Setup netlify cms to push changes to the git repo. Setup a build command to run hugo etc on netlify. Push lamda functions. Setup rewrite rules in a config file. Mirror their setup locally with the new dev feature.
Hosting on GitHub personally worries me because it isn't their core business.
Hosting on S3 is cheap and I know there are tools to help me, but it's complicated to set up.
Netlify hits the sweet spot by being integrated with git, so you still have to be somewhat technical, but taking care of of a bunch of devopsy stuff. Things that their customers either don't know to do or don't want to. For example I thought about setting up let's encrypt for my personal site, but netlify has that figured out.
I’m a hardware engineer, I’ve done some web development in my free time but I’m not nearly up to date to set up something good looking without missing critical stuff.
I’ve tried looking around an AWS account, it wasn’t pretty. I got it to run in the end, but I’m almost certain that some configurations were either problematic (as in I’m probably missing test cases) or downright insecure.
I had a blog with all the features (write in markdown, latex rendering, code highlighting with themes) and the looks I wanted in very little time, at zero cost with Hugo & Netlify.
I do have a github account, but I don’t really use it that much, so it makes no sense to me to become a paying user just to be able to host a site.
The other option involves making the repository public, so I lose the ability to meaningfully have drafts.
I don't like to use the term "static" site, even as a provider of a static site hosting service. I think when people say "static" they imagine a small site that does not change.
I prefer to see it as a build environment for your code, data, and assets. The data can change all the time, but it either changes as part of a build process or pulled from an external API.
Well, all the front-end code is precompiled and published to CDN. So at least from that perspective, there is continuously running server. Node would compile, publish, and cease to exist. The DB would have to be hosted elsewhere and made available via an API.
Github Pages or Amazon S3 are good tools, with a few features that may or may not suit your use-case, but in practice it's pretty easy to find one small detail that ends up being a dealbreaker (eg. you want to use Jekyll but you can't run custom plugins).
Netlify by contrast has the vibe of a swiss army knife or maybe a unix shell: a lot of very sharp tools that you can use to set up static sites in a lot of different ways and that compose nicely. I haven't done a ton with it, but you just get the feeling of a high power to weight ratio.
I've been using Netlify for a while on https://0xtracker.com and absolutely love it.
A few things that I love:
- Extremely cheap (i.e. free for my needs)
- Deployment previews for every PR. Coupled with Renovate, this is a fantastic way to manage dependencies. Especially useful since it's a hobby project, making me time constrained.
> I just want to understand what its killer features are.
It's convenient. It understands a lot of static website generators, runs the build, makes a preview, manages domains, DNS, https via let's encrypt. All in a single package. Nothing in that package is impossible doing by yourself, but it's just well executed.
I wonder if using Netlify's DNS with a subdomain only would work properly if you delegated only the subdomain and not the top level name to Netlify's DNS servers...
GitHub doesn't support a build process, right? So you would have to do that yourself and commit that.
> nearly free static sites on Amazon S3
You'll have to manage the build and deploy here yourself then.
Netlify is great because its easy, and free (if you're under their bandwidth cap). They have really cool features like automatically deploying a preview environment for pull requests, or a/b testing different branches.
I run an open source video game companion site DestinySets.com where I have a lot of data in JSON files in my repo. Github + Netlify means I can take PRs for changes to the data, sometimes from non-programmers (or beginners), preview, merge and deploy from my phone, all for free (both money and time) Its pretty easy.
for Amazon S3 i setup the s3, cloudfront & cert manually (should put it in terraform, but it takes just a second). here's a nice article to walk you through that (says it's for hugo, but you could use it for any ssg): https://agop.me/post/https-enabled-portfolio-hugo-s3-cloudfr...
The point is not that one can/can't do it elsewhere, but Netlify makes it easy. You are less likely to run into that one frustrating problem that takes you hours to solve (like writing a build and deploy tool in bash) - Netlify does it for you.
I've done a static site from Terraform, and I've done it more recently in Netlify - Terraform was exponentially harder, end to end.
the whole point is that I don't want to futz around and use terraform, or read a tutorial, or build a bash tool or whatever.
It's literally like 3 clicks in Netlify and it'll handle _everything_ for me. I point my DNS to Netlify and then I've got HTTPS for free as well.
I used to deploy to S3 as well, and I had a small little `yarn deploy` script that did the webpack build and upload to S3 - its not that hard https://github.com/joshhunt/destinySets/blob/ae08807e3d23de9.... But Netlify is so much easier, especially when working from multiple machines.
I'm currently using it for my website https://vidcap.co (its on beta). There are three things that I'm using it for, but I'm sure other features goes pretty deeply.
1. Pairs the domain with the file server - I can buy a domain on Godaddy and then have it pair to my Netlify fileserver. Its pretty easy to get started. In the past I used Godaddy for everything, but now I do not have to.
2. Deployment mangement. If you have Github, you can setup automatic deployments to the production server. So, when you save some code and push it to Github, it will then push that code to your live server. In the past I would have to manually copy those files over. Now, I'm not sure exactly how to push manually through Netlify (I really need to brush up on it), so I turn it off if I'm working on some items that shouldn't get pushed quite yet.
3. It comes with security certificate (https) without any additional cost. In fact what I'm using is the free tier. I'm able to deploy an entire site for free (well my Azure server is costing me money, but still).
Mostly unrelated, but instead of turning off automatic deployment when you're working on something that isn't ready to deploy, why not just work on a branch other than master?
Netlify’s offering seems to be a more polished experience for frontend devs. A dashboard to configure stuff like build commands etc is neat. The feature that i personally like is the ability to select any branch of the repo to be deployed by clicking a few buttons. Helps me immensely during dev/staging deployments. IMO, These tiny little features and UX differentiates Netlify from other static site hosting providers or DIY hosting
To me, it's that it packages up best-practices in a way that is useful for all developers from enterprise to hobbyist. By following Netlify's easy path you'll end up with a solution that would take much effort to duplicate. And Netlify's solution has enough of the same functionality with very little effort.
I chose to rewrite my portfolio site in Gatsby and deploy it to Netlify with my custom domain pointed to it. It's a big improvement in ease of use versus how I used to do it with a Node server hosted on DigitalOcean, as good as I found their service to be. Do those other services allow you to hook up a custom domain?
It’s simple, fully-featured and insanely fast. Doing this with AWS requires gluing a bunch of stuff together, even with Amplify it’s still clunky and slow.
No you cant run wordpress directly on netlify since it requires a server with php and mysql. But you can use a plugin that creates a static version of your wordpress site and host that on netlify. Another approach is doing a headless wordpress setup, where your front end code is on netlify but the wordpress admin and database is on an actual server somewhere else.
1. Free
2. Good support
3. Custom domains with SSL
4. Takes care of most important backend stuff (forms and webhooks)
5. Functions (Lambda with zero config needed)
6. Abstracts server stuff like [redirects](https://www.netlify.com/docs/redirects/)
Lambda and redirects are the best. I can just put my scripts in a folder and they automagically work.
In my LinkedIn profile my website address is not clickable, so people are copying it to browser. This gives me bogus source data, but with Netlify I can do a one-liner:
`/li /?utm_source=linkedin&utm_medium=profile`
If you go to [patrykkalinowski.com/li](https://patrykkalinowski.com/li) from my LI profile, you'll end up on patrykkalinowski.com/?utm_source=linkedin&utm_medium=profile
Zero javascript redirects, zero nginx config, zero S3 settings - one line in text file, git push and I'm done!
> 1. Free ... 4. Takes care of most important backend stuff (forms and webhooks)
From my reading of https://www.netlify.com/pricing/#forms you will need to pay $19/month/site (!) just to collect the data from 1000 form submissions. By the time you have a couple of sites like this the price is already way too much for me and anyone else with basic backend knowledge. I hope I've misunderstood.
For a static site, I think 100 submissions/month for free is probably more than enough for the majority of people. Though going straight to $19/month is a pretty big step if you're just hosting your own personal website/blog.
It's $0,019 per submission, which I think is a fair price if you're actually sending that amount (and making money from it). It would costs you much more to build unless. That said, for personal (free) use there are a lot of alternative options.
I get far fewer than 100 submissions, and just the time it saves me getting the backend settings configured is already worth it, never mind setting up email, honeypots, etc.
It makes the form features useless for hosting websites for non profits organizations and campaigns (which is a perfect use case for a static website).
Massive respect to the Netlify team. I played around with having my static site hosted by them (for free!) and got only a modicum of extra performance from a $5/mo Digital Ocean droplet.
With this ngrok competitor making it easier to experiment with lambdas/serverless technologies, they're creating a compelling reason to use them for production builds.
Netlify service is ridiculously awesome. I host my site there for free and had some cert errors [1]. I messaged support and they had it fixed in less than 48 hrs. I seriously recommend others to use them rather than using Medium for their own content.
Better control and domain ownership. Especially since setting up a static site is super easy with Netlify. Set up a repo in either GitHub and Gitlab and Netlify will take care of the rest. The biggest downside is that it's hard to get exposure. However, it works for me since my site is just a portfolio site.
Yes, netlify makes an open source CMS (single page app) which works with a bunch of static site generators. You can upload an image, edit the posts, and then the SPA will use github API to upload or edit.
With our existing trend of moving everything to the cloud, I wonder why development environments aren't going in the same direction as well. It has so many benefits. I code on my digital ocean server (vim and tmux) and it gives allot of the benefits that netlify mentions like streaming live. If I don't have my computer I can just borrow anyone's computer (or use a public computer in the library) to make quick fixes or even implement features, all of which will be immediately live even if I log out of the system. If my laptop is lost or damaged, I just get a replacement and pick up exactly where I left off. With tools like react native, I can also dabble with mobile development in the cloud.
What's your setup like? I've been looking around to set something like this up, mainly for being able to do quick fixes on the go. (Or use my iPad when I'm on holiday)
Unfortunately I don't have much to share because my setup is so simple. Literally just vim (you can find really awesome vimrc on GitHub, mines pretty messy), and tmux (simple apt install).
When I visit my friends place I usually just use their computer, otherwise I'll use my MacBook pro or desktop. I don't think about setup much, I just use whatever devices around me to access and write code on my server instance.
Understood, for my purposes I was really looking for a more full-fletched dev environment. Being able to run a local dev server and a browser (for front-end dev). Sadly that doesn't seem to be possible on an iPad at the moment.
Looks super cool and super happy with Netlify hosting.
I just gave it a spin though and got this:
Netlify Dev ◈ Starting Netlify Dev...
Netlify Dev ◈ Overriding dist with setting derived from netlify.toml [dev] block: null
Netlify Dev ◈ No dev server detected, using simple static server
Netlify Dev ◈ Unable to determine public folder for the dev server.
Setup a netlify.toml file with a [dev] section to specify your dev server settings.
hello! thanks for the report! i just pushed a small patch that now has some more helpful messages.. havent ironed out all the states yet and probably need a state machine since i already cant keep everything in my head!
To be honest, there is nothing to manage in Netlify. Just first time connect the git repo during sign up procedure. Additional benefits (at least for starter) are 1 click SSL management. They also provide functions and form, but I have not used them so not aware of how useful they are. :)
Sure they are not a huge improvement compared to your setup. But streamlining the procedure for someone not familiar with the pipeline is a great benefit.
I part run a non-profit site on Netlify and the experience is pretty great. The real killer bit for me has been their GitHub integration where they will render a preview build of any PRs put up to the site.
I love what Netlify is doing, but I've chosen to only watch it from afar for the past few years. I used to use a similar service that I loved very much called Divshot. But Google bought them, closed it down, and absorbed some of their tech for parts of the Firebase platform.
Now I use NearlyFreeSpeech.NET exactly because I do have to pay for it. I'm not sure how Netlify is able to offer their free tier. But I've learned the hard way that if you're not paying for it, you're not the customer.
Netlify has been pretty great so far. My team was able to use the promise of a super quick CMS integration with Netlify CMS to justify getting out of building another nasty WordPress site (what our editors are familiar with). The actual Netlify setup caused no trouble at all and let us seamlessly move off of GitHub Pages, and now we can put in an integrated build process with NPM or whatever else we need.
Netlify CMS itself is a lot more raw but I see huge potential there, especially since it's open source. Our InfoSec folks loved the idea of content changes as commits. And the maintainers on Gitter are super open to help folks and work through changes. Already submitted a PR that was accepted and has made it into a release. And we haven't paid them anything yet, even with Google Single Sign-On integrated.
For those interested in the GitHub integration / preview pull request features that Netlify offers, but don't want to migrate from your current host: I'm developing a product called FeaturePeek[1] that will spin up static builds into a feature environment you can share with your team / publicly. Unlike Netlify Dev / ngrok, you don't need to be online with your feature branch checked out for others to preview it. We can run dynamic builds too, and are agnostic of your host or cloud provider because we don't focus on production deployments. On top of that, we provide some collaboration tools so you can annotate / comment directly on the build.
The `netlify dev --live` command opens up a tunnel to your local dev server port. If you close your laptop, the connection closes. Similarly, if you switch branches, the content of your build will change, even though the URL you've shared remains the same.
My friends have used netlify for dev deployments, and it worked out pretty well as a hosted solution.
For this product I'm wondering what does this give over, running setup and deployment scripts locally? Or running a VM connected to CI server that would run test and production deployment?
But the configuration needs to come from somewhere, like existing netlify config?
I noticed that one of the features mentioned is this --
> Netlify Dev automatically detects common tools like Gatsby, Hugo, Jekyll, React Static, Eleventy, and more, providing a zero-config setup for your local dev server.
If your framework supported by netlify, just plop the projects with no configuration.
How do you see `netlify dev` comparing to `firebase serve`? The `--live` feature sounds great and I can imagine the config variables are handled better, but otherwise I'm anticipating a similar experience. Is that correct or am I missing something core?
We use Netlify for https://standups.io and we still are not paying a penny for their service. It works for our different environments, creates deploy previews out of every branch, supports split testing, and we even use it as a CI for our ReactJS app using Cypress! It's so painless and reliable, we just love it.
Can you explain more? I mean, I see that you're essentially a video service. Don't you have a backend? Don't people login? How do you handle all that on a static site host?
You're right, as a video service, we cannot do everything through them, we use our own encoder service with AWS Lambda, and manage users through a NodeJS app. And Netlify is a very important part of our stack, as it holds our main client app, which connects to these other parts of our stack.
This is brilliant! I like Netlify a lot. A lot of my day to day infrastructure work doesn't rely on them, but I have used them for small sites here and there. Solid company!
I instantly thought of the incomplete/error prone Zeit Now dev that was introduced a few weeks ago. If this(Netlify Dev) can replicate the entire system stably I might move on to Netlify Edge. Replicating and testing is a pretty big deal :-)
Offtopic, but can anyone explain the differences between Zeit Now v2 and Netlify Edge?
We are working on adding support for a 100% local development workflow in Netlify Dev. It would be lovely to know what you think is missing from stateful local workflows in both Zeit and Netlify.
As far as I'm aware, zeit now can run server side code whereas netlify edge can only do at most some serverless functions, and is otherwise focused entirely on serving the front end
Yeah but with Zeit Now the serverless functions can actually serve the application, so if you need SSR with dynamic data you're able to, whereas with netlify it's static html being served with optional AWS style lambda functions.
Whereas on Zeit Now the root of the website can be a web server written in multiple languages, and offer the ability to make your own "Lambda Builder" if necessary https://zeit.co/docs/v2/deployments/builders/overview
You can rewrite URLs to serve the main website as well. We're generally bullish on but DJing server side rendering, but a rule like this totally works:
If your cloud edge functions only (completely stateless functions or containers run without any directly attached data stores) then you can pretty reliably simulate it locally - you can configure your own dev machine as an edge node.
Stuff like Lambda@Edge, Cloudflare Workers etc all have very strictly defined APIs that are executed on V8 (modified for security, but not enough to be incompatible). If you run a pure function on your local machine you can be pretty sure it’ll run on the edge.
We’ve already done this quite well with Docker - the image you run locally is cryptographically the same binary bytes you’ll run on production. It’s not that surprising to see it for edge functions.
Maybe they'll tell me I'm wrong, but Netlify strikes me as not targeting people who need a "whole cloud infrastructure" (since they don't offer many services), but a static site with a few simple backend functions.
Fantastic service. We've moved some of our SPA's out of our Heroku infrastructure and into Netlify. The integration with GitHub (and Slack), automated builds and deploys, together with the built-in support for rewrites and a reverse proxy works great and has made our workflow easier and faster.
“Decoupled web projects involve so many components. The hard part is testing all the pieces locally, together. Netlify Dev delivers this beautifully with one command.”
What are these "decouples web projects" and "components" and "pieces" that are hard to test locally, together?
I recently moved my site[0] from WordPress to Netlify
Used HUGO and then one of my Post regarding MacBook Thermals was trending on HN, The site had more than 12K visitors. If I had been using WordPress I could only imagine how catastrophic that would be. Though I crossed their 100GB limit. But since this was a rare spike in traffic I feel their free plan is very generous. Netlify+ static site generators is good alternative for WordPress.
[0] https://bsid.io
With proper caching even a $5 DO droplet would be easily able to handle this load. With caching + cdn you should be able to handle virtually any load. I personally run cloudfront in front of all of my WP sites, even the low traffic ones because the costs are negligible.
I agree that DO would handle the load. The con is that it costs 5$+tax. Where as netlify is free and CDN and caching is taken care by netlify. Saves time
Check comment history for a sample of the positive commenters?
I mean, I could tell you that I too love Netlify with a passion but that would make it even more suspicious. But trust me, it's great. Try it for yourself.
I’m curious if anyone has used both Netlify and AWS Amplify and if they can do a quick compare and contrast? In some ways they seem very similar, but their messaging seems fairly different.
Disclaimer: I’m a JAMstack n00b and the last real web app I built was “old school” where we did crazy things like keep a session token around and server the HTML, CSS, and JS from a web app. As such, I may be slow on the uptake.
Netlify is focused on delivering your frontend and has some light backend features added on (form submission, lambda functions, auth). But you can't run a dynamic application on just netlify, because there is no database. But you might not need a database, which I think is netlify's proposition.
AWS Amplify is focused on providing you a backend (with GraphQL) powered by AWS services (dynamoDB, lambda). You can run an entire dynamic application with just AWS amplify. They also provide frontend hosting now, but that part I haven't used (oops that was your core question sorry). It seems that the CLI tool just configures S3 and CloudFront for you. This is probably much less polished then using netlify.
FaunaDB looks like a great product for a serverless/SPA type app but I don't see how they are integrated with netlify other than they fit together well?
FaunaDB support is built into Netlify Dev and was shown in the Netlify CEO’s keynote at the JAMstack conf. Netlify also has one-click deploy support for including FaunaDB with your applications. For instance this sample app can be deployed almost automatically: https://github.com/sw-yx/netlify-fauna-todo (Disclaimer, I work for Fauna and helped with the one-click deploy integration.)
Is this like working/collaborating on glitch.com/codesandbox (auto building, hot reloading) BUT being able to do it offline (train,plane dev) and then just push with one command ?
I guess i can see the value since i do realise im dependant to my internets connection to do some dev this last days (im a hacky ceo).
Netlify is just fantastic! I reluctantly checked them out last year, and am now hosting 3 SPAs there. By the far the most painless platform I’ve used, with a generous free tier.
Anybody found a good CMS solution for static sites?
I love everything about gatsby/Hugo/etc on Netlify but the lack of good CMS with out of the box SEO tools for writers to easily publish is a no go for my clients.
Tried Netlify CMS and it unfortunately required way too much work to compete with the full featured Wordpress setup my editorial clients are used to.
Possibly. The announcement is all about the local version, so there's no way to try that out without installing it locally. However, it's the local version of a product that already exists entirely online with no need to `npm install` anything.
Google analytics gives very bad results, given the number of people using content blockers. I just want the number of unique visitors, I don't care about tracking or anything.
based on the comments sounds like a great framework, but wow what a bad name. sounds like some kind of mix between bug zapper and a light beer? maybe life insurance also..
I was blown away by how polished it was once I finally tried it a few months ago. I set up auto-deploy on push to Github + build command in like two clicks for all of my projects and never looked back.
Their free tier is probably too generous though. I know someone running the biggest website in a massive niche and they are serving their SPA for free from Netlify.
Their free tier has a 100GB/month bandwidth cap — surely the most trafficked websites in the world would very quickly hit that limit, no?
Your point stands nonetheless — they could certainly be losing money on certain large users of their free tier. Serving relatively static content has gotten extremely cheap across the board, though, and like the parent said, they might be benefiting from the pricing by more indirect means.
For example, I see a lot of people talk about it for static sites. But you get free static sites through GitHub, nearly free static sites on Amazon S3. What does Netlify do special that these others don't? I'm not attempting to bash the service, I just want to understand what its killer features are.