What non-CMS tools would you use to make a small but growing website?

twitter logo github logo ・1 min read

I'm making a website for my husband's construction company and the initial features will be:

  • A static home page
  • Blog posts that he can create and edit

But over time I'd like to add:

  • More pages
  • A dashboard for clients and employees, ideally available offline
  • Complex forms

My first thought is to start with the Hugo static site generator and add a React app later for the dashboard and forms.

But what tools would you choose?

I'd rather not lock myself into a CMS and I think that would more headache than help anyway. Thanks!

twitter logo DISCUSS (26)
markdown guide

I had similar needs of my own, and chose:

  • Hugo for site generation
  • Content managed in Github (private repo)
  • VScode for manual editing of markdown and configs
  • Self-hosted, because I already did that and like to own stuff (also pain!)
  • Github webhook to trigger redeploys
  • Netlify CMS to provide a nice GUI, avoiding the details of gitflow for most things and not imposing it's own ideas on content structure / format (I have less-technical friends)
  • netlify-cms-oauth-provider-go to connect my self-hosted site to Github without sending credentials to Netlify, although I needed a couple of fixes.

Current test site phil.ashbysoft.com/hugo-test/


Speaking of Netlify, I was gonna ask: how about combining headless with WordPress? I stumbled upon this article on Netlify benchmarking a WP site pre/post-headless switch and the results are pretty impressive.

Netlify WP headless CMS article

Have you thought about a headless multisite (not sure if you are planning on servicing different companies, but this could add merit to something like WP if you go the headless route)?


One of the downsides with headless WordPress is where you host WordPress so you can access the posts via API. I've looked at Gatsby + WordPress, and it's pretty slick. However, a free WordPress.com account doesn't let you get the posts via API as best I can tell. I suppose you could run it locally, though


Someone else suggested a headless CMS too, I am considering it now 👍


Is there any reason you don't want to go for a CMS? The best thing you could do, to avoid reinventing the wheel, is to use a CMS that will help you move on if you want/need to.

I'm an avid user of Ghost CMS and would recommend giving it a look. The very worst case, you outgrow their templating language and use it as a headless CMS with React...


Mainly because:

  1. I want to keep things lightweight, simple and easy to customize.
  2. I used to make Drupal, DNN, Wordpress, etc. themes and they're great tools but they can easily become bulky and unwieldy.
  3. As the website's primary maintainer, I'm not going to need the themes or full editability that a CMS provides.

You've got me thinking though, I wonder if it would make sense to use a headless Ghost (lol) to generate blog posts and Gatsby or Hugo or whatever for the rest of the site.


I completely understand why you wouldn't want to use the templating of a CMS. If you want full customisation ability and are a web developer, it makes sense to want to make it yourself.

But I would suggest a headless CMS :) it reduces the burden on you to add new pages etc, and empowers your user base to do it themselves.

Find one that has RBAC baked in 😊 I know ghost does, but not sure if you can utilise in with headless mode.

Cool, thanks for the tips! I’ll look into that 👍

No worries! Good luck and hope it all goes well.

If you need any help, give me a shout 👍


My I ask why you won't use WordPress? It will give you the fastest website load?
CMS is ready solution based on thousands of ideas, if you would like to rethink cms again, good luck, before any column, any alteration, row you need to predict its future purpose, relationships, archiving, indexing, filtering etc. I will go for blog and pages to use static WordPress no javascript as this is slow. In this case you have more time for your dashboard project


Using Wordpress for my project would feel like using a helicopter to cross a road. Effective but a little much.

I answered the same question from Si about CMSs if you want to check that out.


For me using gatsby, anything like react, something which is not in the market for longer than 4 years is like using spacerocket. Feeling is one thing, practicality is another thing. WordPress will cache all of your pages to html and serve them, complex, not at all. Serving 250kb of JavaScript just to show context of page - thus is complex and too much. Disappearing

I mean yeah, if your current toolset is doing what you need it to do don't complicate things.

React has been around since 2011 but Gatsby is pretty new. Gatsby might be simpler than you think though, it serves static html same as your WordPress setup.


It will give you the fastest website load?

No, it won't. WordPress is not the fastest.


Static html is always faster. Plugins -> install cache - > serve all as static html.
WordPress itself of course will do nothing for you, even it won't serve you a website. All needs to be configured by you. If you want to have seo, speed, security etc install yeost, word fence, w3 total cache and you are much faster site than most javascript site (in loading perspective and performance perspective)


I had to do a simple static webpage recently and I went with plain html and css. The only fancy thing I did was keeping the content in a json file and adding it to the html files with mustache because it had to support multiple languages.


Sounds like currently, you could start off pretty vanilla HTML, JS, and JSON. Using a lot of static JSON. Could just deploy anywhere though I suggest Netlify or Firebase... Heroku is still good too 🙂

Eventually moving towards other tools as you need them and decide what you like.


Gatsby might be well suited for this or the future features.


I would use GatsbyJS as the Static Site Generator, and host it on Netlify. Netlify comes with forms, so you can set those up. Netlify also comes with a CMS option. If you don't use the Netlify CMS, Gatsby easily integrates with other CMSs


Gatsby easily integrates with other CMSs

Didn't know that, that's cool.


I was looking into just this recently, for my friend, and the best i could figure out (that could be later managed by totally non technical person) was:

  • Github pages as hosting
  • Publii as static site generator

Im not sure forms will be possible, but i would use things like formspree, or any other service like that, to handle that part. Its very easy to use.


Have you tried Pinegrow?

It is great for mockups, prototyping and designing visually, yet still gives full control of the standards compliant code it generates.


Hola monica the session excelente y exitoso dia

Classic DEV Post from May 2 '19

The Art of Programming

One of the most consolidated misconceptions about programming, since the early days, is the idea that such activity is purely technical, completely exact in nature, like Math and Physics. Computation is exact, but programming is not.

Monica Salter profile image
JavaScript, React, many flavors of CSS