Site Redesign

This site is now powered by Next.js, which is an opinionated version of React. This is a big change from the Wordpress.

Next.js offers static page generation, meaning that all pages are created at build time, cached by a CDN and ready to be served extremely quickly. Navigating between pages on blog.bn.ee is also really snappy as all transitions between pages are handled by the client.

Moreover, there is less that can go wrong: there is no database, no admin panel, no plugins and no serverside code that can be exploited. This means less maintenance to the site is required

All post content is written in Markdown and version controlled in git, giving the ultimate flexibility in terms of having revisions to all content for the entire site. I used this excellent Wordress-Export-to-Markdown tool to quickly convert all site content. Now that everything is in markdown, it means all content is quite portable should I want to switch frameworks in the future.

Template-wise, the site is extremely flexible as all pages are written in React JSX which is a great templating language. Javascript is used everywhere and so any JS library can be used for preparing or displaying content. Standard node.js libraries for reading markdown and pulling in files are used for generating each post.

The site is deployed with Vercel. Any changes pushed to github get automatically deployed to bn.ee, which makes deploying updates and adjustments to the site a one step process. Vercel also keeps development versions of all deployments of the site live, so its easy to see what has changed and roll back if needed. Vercel also handles the deploying the site assets to a CDN.

Vercel allows easy redirecting of old URLs using a simple JSON file.

By changing the nameservers of bn.ee to point to Vercel, its now ridiculously easy to deploy projects as subdomains of bn.ee, like tiki.bn.ee.

Overall, this is a great update and it was surpisingly fast to migrate all content.