Hacker News new | comments | show | ask | jobs | submit login
Show HN: Staticland – Open source static site hosting with SSL via Let's Encrypt (static.land)
180 points by sethvincent on Dec 5, 2016 | hide | past | web | favorite | 38 comments



This looks like a nice idea but it's a bit unfortunate about the name clash with https://github.com/rpominov/static-land

Edit: Dear downvoters, normally it'd be unlikely for the name clash to matter, but because these are both JS libraries, both available on npm, it's the difference between `npm install static-land` and `npm install staticland` which would be an easy mistake for anyone to make.


From rpominov/static-land’s README:

  Pros  
  
  - No name clashes.


That is unfortunate! Looks like the two projects were started around the same time, too. I may add a note to the site/readme pointing people to that repo if they were looking for it.


Another alternative is to deploy to S3/Cloudfront using Stout (http://stout.is).


Amazing. I've been using s3_website (1.4k stars) and it works great w/ Jekyll and CloudFront as well: https://github.com/laurilehmijoki/s3_website


That looks nice. I use middleman with s3_sync(https://github.com/fredjean/middleman-s3_sync) but I'd have used Stout if I had known about it.


Clever :-) Glad to see another solution out there!

Myelf -- I've migrated almost all personal and small projects over to a self-hosted dokku instance. All of the static sites run this buildpack: https://github.com/dokku/buildpack-nginx

This has been a real timesaver as dealing with S3 static sites was just a pain. Added bonus is I have more granular control of nginx (if I want it)


> This has been a real timesaver as dealing with S3 static sites was just a pain.

Excuse my ignorance but what's the issue with S3 static sites? I have a couple I was going to put up shortly and was planning on using S3.


Mainly this:

  * the login to aws.
  * Then creating S3 keys with the right security settings.
  * Then tweaking the settings to serve pages
  * Then setting up SSL with letsencrypt (I have not looked it up, but I'm pretty sure it is possible)
  * Then configuring CORS if you need it (again, possible with S3)
In the end it just came down to workflow. I never really enjoyed working with AWS on command-line or automation. I much prefer the push-to-deploy workflow pioneered by Heroku and adapted/cloned with Dokku.


Just a note on your point about S3 and Letsencrypt: AWS has their own tool for free provisioning of TLS certificates, which is all integrated in a very nice way if you put your S3 bucket behind Cloudfront (which is a good idea). Search the console for the AWS Certificate Manager.


Right this is what I was planning on using. I may still give it a shot, not entirely sure. For static sites I just want something quick and cheap.


Cool, that's a good idea! The granular nginx control definitely sounds nice.


Netlify is a good option, too, with continuous deployment and SSL. It's free for open source projects.


Is this primarily for static sites like Jekyll and Hugo? If so, could you add some kind of tutorial on how to get my Jekyll blog hosted on static.land? I'm not familiar with node, and your docs don't mention how to do a `git push`, only `staticland deploy`. What is the technology behind `staticland deploy`, git, ftp, https?


The deploy command is https. staticland doesn't use git at all, just deals with the built site produced by whatever static site generator you use.

I'll add some examples to the docs! Thanks for pointing that out.

For jekyll, the short version is you can do something like this:

> jekyll build

> staticland _site/ yourdomain.tld


+1

Author of surge.sh here. Just want to add my support for the compile locally paradigm over sending to a service to be built. Far less complexity. Far more predictable.


Looks just like Surge.sh with free SSL.


Definitely similar. I really love surge, and have too many static sites to pay the per-site costs to get SSL.


I wouldn't recommend Surge.sh. We've experienced a lot of downtime in production and we switched off of it.


I'm sorry you had a poor experience. Our downtime was very unfortunate. FWIW - It was quite some time ago and we have not had downtime since. Of the three occasions we had downtime two were due to our infrastructure provider taking our network down in error over invalid takedown requests and we had to fend of a DDoS the other time. I hope we can earn your trust again and you give surge a shot again in the future.


I recently started using `now`[0] for hosting my static and small scale sites. While it's mainly targeted for Node apps /JS, it supports deploying static sites out of the box which free and very easy DNS, SSL setup. It's not free, but still very affordable compared to the benefits.

[0] https://zeit.co/now


Another alternative in this space is an AWS Lambda-driven static site editor and publisher: https://github.com/sirceljm/LambdaBlogPlatform

(not affiliated but I know that the author put lot of thought in it)


Seems like a cool project. I've got a site setup[0] like this already, where netlify pulls the files from github and then serves them from its CDN with A+ HTTPS+HSTS. Works flawlessly.

[0] https://libeclipse.me


But where are the files hosted ?


Is it just as simple to use if you host it yourself? Static site hosting locally with TLS ought to be as simple as two commands.


Very nice work.


Thanks!


Do I need NPM to use this?


Yes. I'll add a note to the site about that. Installing the staticland command-line tool is `npm install -g staticland`


what's the monetization strategy?


>Need more features, a private, managed server, or advanced integration with existing systems? You have two options:

  >Hire us to set up an internal static site deployment system that fits your use case.

  >Use the open source code to host a staticland server yourself. github.com/staticland


Static site hosting is cheap, and I'm not super interested in competing with other services with per-site costs. staticland is primarily an open source project that I use for my own purposes, and I'm open to building out static site deployment projects that fit a company's specific use case based on staticland.


So while it may be cheap it's still a cost. Is there a file size limit? What if I statically host CoolLinuxISOs.com? Surely that could end up costly or is it limited in some not identified way? What about handling major traffic from, say, if my website went to the front page of Reddit.com or any other popular website? Can it scale out and handle traffic spikes or even constant traffic?

I get this is more for small / tiny sites and it's really cool I just want to make sure I understand the costs associated.


Thanks, this is an important point. static.land itself may be best considered a demonstration of the open source software. If someone has significantly large files they're looking to host, they would want to host the staticland-api server themselves or consider other options. I'll add some text to the site about this.


Gotcha. So curious, is there anything stopping someone from using up too much of your bandwidth? It's a cool thing but I'd hate to see some spammer get ahold of it and end up using thousands of dollars worth of bandwidth. I mean I'm sure you're monitoring it but you're not always next to a computer to put a stop to it.

Just food for though :)


ok thanks, so have you gotten any interest from companies? Asking because I need to host my static sites somewhere soon but don't want to go somewhere that won't stick around a long time.


So far not much interest, but this post is also the first time I've done any significant promotion. If you want to go with a really solid static site hosting company netlify.com seems like a great choice. You could also always set up a staticland-api server on your own. Right now I'm using static.land for 12+ of my own sites that I rely on and more on the way, so it's not going anywhere.


It should be simple to move your static sites if this goes away, don't you think? In fact, I can't think of anything simpler.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: