Free hosting has never been better

Things are looking up in the website hosting space. We can finally say goodbye to hosting platforms such as Wordpress, WiX and others. No more ads, vendor lock-ins or other limitations on free hosting plans, no more paying through the nose for so-called ‘premium’ services.

For a while now major Git services such as Gitlab, Github and Bitbucket have all been offering free hosting for static websites. This will point to a subdomain such as ‘pages.gitlab.com/yoursite’ by default, but custom domains are fully supported as well. Either way, free SSL is set up automatically to keep sessions secure and those annoying browser warnings at bay.

The only requirement is that the website has to be ‘static’, meaning that it must exist as a set of files instead of being fully integrated into a database backed application. Content management systems such as WordPress, Drupal and others aren’t supported. Luckily there are a number of free tools and 3rd party services available to automate and manage static websites. You’ll find that there are a lot of advantages to static websites, such as greatly increased performance, security and flexibility.

The first (recommended) step is to choose a ‘static site generator’ such as Hugo. There are others such as Jeckyll or Gatsby, but we strongly recommend Hugo as it offers the highest levels of performance and flexibility. Hugo will save on valuable build minutes that are necessary to regenerate the website when content is updated, but more on that later. To get started, simply choose and customise one of the many free themes, buy a premium theme or get a designer to do a custom job. Whichever path you choose, the design process is similar to that of WordPress, but less automated than WiX or Squarespace.

If you have an existing site based on a self-hosted solution such as WordPress, Drupal or Joomla it’s quite easy to migrate site data to your new static (HUGO) site with the help of some free tools. Migrating from WiX or Squarespace is a little tricker as the objective of such platforms is typically to lock customers down by making migration as unattractive as possible. They do offer basic site export to a format that will need to be converted before it can be used elsewhere (check here for WiX or here for Squarespace). Another way of exporting the site is simply to download the whole thing and start copying articles, images and other content from there.

The next step is to sign up to a Git provider which will not only host the website for you, but regenerate it when content is updated. They do this through a mechanism most Git services offer called ‘CI/CD’, which provides automated software building services. Most Git services will offer around 60 minutes per month for free, which is why it’s important to have a fast static site generator. Hugo will regenerate a small website in less than a second and large ones in just a few. Other generators may take up to 3 or 4 minutes, meaning only 10 to 20 site updates per month would be free.

We recommend signing up to Gitlab as it’s the easiest to set up for web hosting as well as being an independent company (unlike the others). They provide easy to follow steps to get everything going here, but some knowledge of working with a Git service is recommended. An easier (albeit more limiting way) would be to have a content management front-end like Forestry do most of the work. They offer an attractive free plan and will handle most of the technical details.

The final step for the core website setup would be attaching the site to a content delivery network (CDN) such as Cloudflare. A CDN significantly improves website performance by caching the website’s data and delivering the cached data to visitors from locations that are nearest to them. There are of course a great many CDN providers available, but we recommend getting started with Cloudflare as it’s easy to set up and free for most users and use-cases. They will expect payment for advanced features, but that’s only fair. Netlify is another attractive option, but their network is significantly smaller and we get the impression that their offerings seem to gravitate towards vendor lock-in. It’s all optional of course, but its quite tempting to use functions and facilities that are unique to Netlify, after which future migration would be hampered. That’s not something we like. Open standards all the way is what we say.

Once all of that is done you have a website that is hosted for free and distributed for free as well as being extremely performant compared to any integrated solution. The only problem is that it will be fairly basic in terms of functionality. By that we mean there’s not a whole lot of interactivity available in terms of user login and profiles, comments, discussions, e-commerce and so on.

That’s kind of the point with static websites, having a solution for each feature, rather than a single solution for everything. Fortunately there are free and paid services available that integrate beautifully with your new static website for anything and everything you could imagine. Customers won’t be able to notice at all, no more than people notice that large sites like Google, Amazon, Netflix and others all function in much the same way.

Comments can be handled by disqus for example (as they offer a ‘free’ plan), but we’d advise against it as they have 0% respect for privacy. We’d suggest going with commento for a few dollars a month, or better: self-hosting a solution such as remark42. Hosting one’s own services has a lot of benefits of course, but it does require significantly more knowledge and expertise. Cost doesn’t have to be a major concern however as a single $5 a month virtual server can host multiple services (comments, contact form, e-commerce) before there is any real need to expand. Services such as Digital Ocean and Vultr for example offer attractive options and affordable growth. We don’t recommend going with one of the bigger ones such as Amazon Web Services (AWS), Google or Microsoft (Azure), as we believe those companies are already far too powerful and influential.

For e-commerce there are great many offerings available, but we consider Snipcart a good place to start, although it is a bit pricey at a 2% charge for each and every transaction. More experienced users could consider Crystallize instead as they charge a mere $0.50 per transaction. Neither charge any monthly fees, so getting started is without too many strings attached. We’d recommend beginners to start with Snipcart and eventually moving on to something self-hosted. We are of course aware of Shopify, Stripe and others but really don’t recommend them. We’ll discuss why in a series of upcoming articles.

There we have it, plenty to think about, research and get started with. Hosting, global distribution and maximum performance for $0 dollars except an optional $8 yearly fee for a custom domain name. We’ll get into the ins and outs of it all in a series of upcoming articles.

Until then,

Yours,

Netsemblage