Static Site Generator (SSG) as a Free Squarespace Alternative?
When I was looking into wiki/documentation site options, I found *Static Site Generators* (SSG), which create static websites that are *free to host* with netlify, github pages, Cloudflare pages, etc. They have templates and features built-in so you can often just create some markdown files and they're quickly transformed into a beautiful, fast, secure, free website. You often don't need technical knowledge/expertise, but you can customize them further if you have that.
https://jamstack.org/generators/ has a list of them. *MKDocs Material theme* is pretty elaborate and popular for hosting *documentation/wikis*. If you compare it to bookstackapp.com for example, *bookstack* requires paid hosting since it's not static, and requires much more technical expertise to get running and to customize. I find MKdocs Material to be pretty user/noob-friendly, with good documentation and easy customization. Other SSGs can require a lot more technical knowledge or be less easily-customizable.
But MKDocs Material doesn't seem great for a general business website. After learning about SSGs I realized that my Squarespace site is all static content and should be replaceable with an SSG. I've been *trying to find an SSG that's as good for general sites as MKDocs Material is for wikis*.
# Comparisons:
- https://medium.com/@nampara17/whats-the-best-cms-for-static-websites-12364ab911ef
- https://teleporthq.io/blog/popular-static-site-generators
- https://tiiny.host/blog/10-best-cms-static-sites/
- https://www.sitepoint.com/community/t/static-site-generators-a-beginners-guide/321745
*Hugo, Gatsby, Eleventy (11ty), and Astro* are the main ones I see recommended for noobies. They all have themes or "starter projects" you can use as templates. The difficulty is finding a theme/template that's as good for a regular website as MKDocs Material is for documentation/wikis.
For example Jekyll has tons -- https://jekyllrb.com/docs/themes/, and it would be difficult to browse through and test all of them. I happened to come across this one -- https://mmistakes.github.io/minimal-mistakes/about/ -- which looks quite good for both documentation and general sites, but the search cannot find links (_which is important for my documentation site_).
I found a Hugo theme that seemed good but the dev wasn't active on github and people were having unanswered problems.
*Middleman* is another SSG that sounds good, but their theme page doesn't have any pictures or quick links to demo sites, so it would be even more difficult to check them all out.
And looking into them more, I'm told that *Astro* requires javascript, CSS, and html knowledge. *Eleventy* (11ty) also requires JS and HTML coding. And *Gatsby* doesn't look that simple either https://www.sitepoint.com/gatsby-guide/.
*Publii* (static site CMS) was recommended as noob-friendly but it's extremely limited. I didn't like it at all.
*TeleportHQ* is MUCH better than Publii, but it's not intuitive or easy enough to use to be a good replacement for Squarespace IMO.
*Plasmic, Webflow, and Couch CMS* seem to be similar options.
_(Hit character limit; continued in comments)_
Oh wow, there's no formatting...
18 comments
[ 3.2 ms ] story [ 51.3 ms ] threadOne feature SSGs are missing is email contact forms. Some of them use Netlify forms https://www.netlify.com/platform/core/forms/ - 100 submissions per site /month ($19+ when exceeded). https://docs.netlify.com/accounts-and-billing/billing-faq/
Hugo's Piko theme uses FormSubmit.io (free) or Fabform.io ($5/mo). But I haven't tested that to understand how well it works and why/how it's free.
Hugo's Tella theme uses getform.io -- https://github.com/opera7133/tella/issues/63 (50/mo).
250/mo for free and $8/mo for unlimited with https://web3forms.com/ is the best I've seen so far _(besides the completely free one which I'm not sure about)_.
I haven't seen any of them mention using an SMTP.
I saw these *HTML templates* https://html5up.net/ recommended on another forum, but I would think they’d require more technical knowledge to use/customize than an SSG. They’re all pretty elaborate too. None are basic business or personal type websites.
# Wordpress:
I created a basic, free WordPress site some years ago when I was trying to set up a blog and I found it difficult to use and opted instead for Blogspot. However, I have more experience & knowledge now, so self-hosted Wordpress might be an option.
When I looked into Wordpress I was comparing the ".com" options (wordpress.com/pricing) with Squarespace, and they were more expensive. Now that I'm more familiar with hosting my own linux web server, I could probably use the ".org" and host on a $5-10/mo server but *I get a lot of traffic on my business site (_can reach 1m+ views in a month_) and I'm not sure how good/costly a server I'd need to keep it running*.
I saw *Oxygen Builder* recommended as a "Squarespace-type UI" for Wordpress, and I watched some of the tutorials (oxygenbuilder.com/tutorials) and it seems like a decent option for a one-time $130 fee. But still not static.
I saw someone using the https://generatepress.com/ WordPress theme for their website https://servermanager.guide/about. It looks like the premium $44/yr option may be similar enough to Squarespace.
It looks like you can also install wordpress on your PC and use plugins to output static sites. A limiting factor may be finding free/cheap plugins that make it as easy to edit as Squarespace. And I don't see a way to get contact/email forms working.
# Flat CMS options:
I found this [10 Best Flat CMS for Lightweight Websites - https://www.hongkiat.com/blog/flat-cms/] which lists *Grav* at #1. I checked out Grav and it's purely markdown and has nice templates (_Open Publishing Space, Agency, Deliver Site_) https://getgrav.org/downloads/skeletons. So that might be the best option. The Agency template has a *contact form*, but [looking at the code](https://github.com/getgrav/gr...
In a way, it's just an extension of a default weakness of Jamsites to begin with: their inability to deal with dynamic user-generated content (comments, likes, etc.). The whole point of static generation is "write-rarely, read-often", and user-generated content upsets that paradigm.
If you just need a contact form, that's easy enough to outsource to another vendor/solution, because the submission doesn't necessarily have to update (your) database.
Google Forms is totally free, BTW, and can easily email you responses and/or save them to a spreadsheet: https://www.google.com/forms/about/
Where it gets tricky is you actually do want a form that updates your own database. Since you don't have a full backend, you don't have a form handler. But that's easy enough to implement with an API route (in Next, Astro, etc.) or a serverless function... it just has to receive a webhook, validate, and then POST to your CMS.
I've searched everywhere and posted to various forums and included all the info I've found thus far.
SSGs have been discussed on HN but not in-depth like this and not targeted towards noobies. But I've seen that many people on HN are very knowledgeable about SSGs and even created ones themselves. So this seems to be a good place to post about this.
Sorry for doubting. It was an unusual enough post (as the other poster said, looked like a blog) that it gave me pause, but there is some good info in here. Once you decide on a solution, maybe you SHOULD turn it into an actual blog post :)
I vouched for your other comment, btw (it was dead when I saw it).
That said, IMO, they're not the best solution for:
> I'm a novice with no expertise in website building or design.
<user hat on>
SSGs don't prioritize ease of use, necessarily, but simplicity and cost of hosting. If your only goal is to get a very simple website up and running, using a CMS + SSG + configuring hosting is kinda overkill, IMO. You might save $10/mo but end up spending hours longer to get it up and running.
Aside from Squarespace, there's also Wix, Weebly, Wordpress.com, and a bunch of other WYSIWYG page builders, many with free plans. Those are probably more appropriate for generic small-biz websites, not only because they are easier to use, but because it's a single-source solution. If something's wrong, if the site goes down or you don't know how to do something, there is one company to reach out for support, and it's their sole responsibility to make sure your website still runs.
If you use self-host a CMS and host it on a VM, use a separate SSG to publish your files to be hosted on yet another host... that's like 4-6 sources of potential failures, and nobody to support you through the whole journey. It can cause a lot of frustration later on if you run into bugs you can't easily solve on your own.
A large part of my job is supporting customers in similar circumstances, and the lines between "I coded something wrong" and "there's a bug in the CMS" and "there's a bug with the SSG software" and "there's a bug in my webhost config" and "there's a network/caching issue with the webhost themselves" can be very blurry. If you don't have at least some basic networking and frontend experience, this sort of setup adds quite a bit of fragility and complexity over your typical $10/mo vendor-supported small-biz site. That's not a good value for most people. Even tiny nonprofits can afford $10-$20/mo for "normal" web hosting that they don't have to babysit constantly.
</user hat>
-----------
<dev hat on>
Where SSGs and Jamstacks ARE valuable are for small to medium teams who want a clearer separation between content, data storage, and presentation -- usually because different individuals work on different parts, so you don't get marketers accidentally composing invalid markup or breaking JS, and you don't get dev code pushes interfering with the editorial process.
Content: Whether there's a WYSIWYG GUI editor or Markdown files, the point of this part is to make it so that anyone can edit articles, add images, etc. without extensive training.
Data storage: This can be flat files, a real database, NoSQL, whatever. It can be self-hosted or vendor-hosted.
Presentation: You can use a built-in template, extend one, or fetch your content via API and write a bespoke frontend from scratch.
Overall, the basic idea is simply a separation of concerns. Different software/teams/individuals can focus on their areas of expertise without accidentally stepping on someone else's toes.
That's hard to do in a "traditional" full-stack CMS setup like Wordpress or Drupal, which has hooks into all three parts, and usually deploys them together. That's why companies like Pantheon, WPEngine, and Acquia had to create their own virtualized hosting and deployment pipelines (like Pantheon's: https://docs.pantheon.io/pantheon-workflow), which give you a cleaner separation of concerns by imposing an out-of-band system that lives outside the software itself.
The headless CMSes (or even Wordpress & Drupal, configured appropriately, like using Wordpress Advanced Custom Forms or the Drupal R...
I'm also hosting my own forum now, and while that was more complicated to get set up, I find it completely doable.
It might not be the best option for small businesses with limited time, since webpages are so cheap these days. Paying a vendor $20/mo is much less cost than paying an employee for even an hour. I've seen too many "orphaned" sites to recommend DIY webpages to regular small businesses by default anymore, where simpler vendor solutions exist. But that's just one use case.
On the other hand, many people here, myself included, got started in our careers by setting up similar self-hosted options and learning about the technologies. Plus, as you said, for certain use cases (documentation) there are certainly more specialized options available than what Squarespace would give you.
Choosing the right tools for the job is half the fun!
It looks similar to TeleportHQ.
Now bad news - it's Electron App. Second - sometimes it's extremely limited (in order to save novices from mistakes). Third - can't create responsive images with few resolutions.
https://tina.io/ is another open source CMS you can look at. You need to host the CMS part yourself or use their hosting (there's a free tier). I'd love more open source solutions like Decap that don't involve hosting anything and don't involve paid per-user subscriptions but I don't know of any.
Also, I've seen https://formspree.io/plans used HTML contact forms. 50 free submissions per month with simple integration.