"Hello world", 2018 edition
how to set up your own blog backendless-ly in 2018
So here I am again, trying to start starting a blog from scratch. More than 10 years(!) have passed since my first blog. It was a WordPress blog, and I was proud of it. Fast forward to today, I have no intentions of getting into WP again (or PHP, eeww). Medium is where the cool kids are, but I wanted to own my data + keep my frontend open for experimentation.
I quite recently started messing around with Vue.js (specifically Nuxt.js) for generating static sites while still being able to use contemporary tools like node.js, webpack, and pre-processors. Another benefit would be hosting the site virtually anywhere: Netlify, Now.sh, Heroku… or in this case, Vapid.
Vapid is a newcomer to the static-hosting-platform arena. A while ago I signed up for their private beta and yesterday I got an invitation. So I took this as an opportunity to try and experiment with something new.
The good:
- Dead simple CLI: easy to start, fast to build, simple to deploy.
- Static sites, good for SEO, speed, and hosting anywhere.
- No backend needed. Vapid provides you with their own built-in CMS for managing dynamic content (I'm using it right now to type this blog post).
- Built-in template engine, so you can do things like {{#section blog}} {{content type=html}} {{/section}} in an .html file and get the CMS to rebuild itself around your fields (at a surprisingly fast speed, I should say).
- No need to deploy a full-fledged blogging solution or tie our data to a 3rd party platform.
- Free!
The (kind of, not really) bad:
- Being "backendless" also means that we can't implement any custom logic on the server-side. In the case of Vapid this is of course by design.
- We have to build our own frontend. No "theme picker" here. But you can always use an HTML/CSS framework, it even has Sass pre-processing baked in.
- URLs generated for dynamic content seemed on the "soft" side, allowing too much freedom in the URIs without proper redirecting.
- It's still in beta, so expect some rough edges. Although, they claim it's stable enough for production.
My current setup, the one running this website/blog, end up being:
- Start the development with vapid start
- Code the relevant .html / .scss using Vapid's template conventions. I'm using Bulma, a pretty simple CSS framework.
- Write content using Vapid's CMS.
- Deploy using vapid deploy
There are several options out there for a static backendless blog, but in the spirit of experimenting with new things, I'm giving Vapid a try and see how far it'll let me go. So far, I'd say it's doing the job.