Dashboard
Back to Articles

Why we migrated from Wordpress to NodeJS

Written by Hayden Falzon author image Hayden Falzon

Published on Updated on
Reading time: 7 mins

Here we go again

I started this site 4 years ago with little to no knowledge in the area of web development. And only 2 years ago I released it as a WordPress blog.

In those 2 years I have rebuilt the site... 3 times...

Because I am an idiot.

Now for those of you who are familiar with web-development... you may be pulling your hair out at that statement.

You should hardly have to rewrite once, let alone 3 times. So why did I do it? How did this calamity come to be?

Well... to be honest. It is because I didn't know, what I didn't know.

The Wonderful Terrible World of WordPress

This sited started its journey as a WordPress blog.

I was recommended WordPress by a friend, for its ease-of-use for beginners.

I was asking around at the time, how one might build a website? I had very little money to my name, and frankly even if I did, I like to penny and dime.

How hard could a website be?

My friend told me that WordPress with the Unicon theme should serve all my purposes...

Now I want to be clear I am very thankful to this friend, as I do not believe I would be where I am in regards to my knowlege if I had started elsewhere.

BUT

WordPress Sucks***

  • *** If you try and use it for what it isn't designed to do.

WordPress is for blogs - Don't try and make it a web-app!!!

For those of you who do not know, wordpress is a CMS that is geared towards blogging. However, due to an extremely rich community, it has a plethora of ways to turn your blogs into anything you could imagine.

The only problem is that doing so is a terrible idea!

And I know, because I have done it 3 times now...

Lets not get to ahead of myself in this story

I remember watching my first ever tutorial on WordPress and being so lost and confused by everything happening.

Questions plagued my mind with everything that was said... and the more I uncovered, the more questions I had.

  • What was "DNS"?
  • What is "MYSQL"
  • Is MySQL different than MariaDB?
  • Which Host should I use?
  • Is WordPress the best choice?
  • How can I add functionality that I want?
  • How can I get people to signup and have an account?

It was so overwhelming to make a website

And I almost didn't even try due to the overwhelming nature of it all.

Here I was... a would-be story teller, apt in 3D and film-making... trying to spread myself too thin, and create a website for those people, who like me. Were on a journey to tell stories.

But I did anyway. Because I had an idea, I had a vision. And I am a sucker for punishment apparently.

My Journey

During this journey I have gone from creating a simple WordPress blog to a WordPress Plugin spaghetti mess held together by sheer will, to a custom WordPress development with custom DB to finally a JAMSTACK deployment.

  1. WordPress blog
  2. WordPress LMS -> A 25+ Plugin Monster
  3. WordPress as a Framework -> A Lean Mean website that still caused me headaches
  4. A Static JavaScript decoupled application (Frontend, Backend and Application are separated)

Not the most ground breaking development there.

But I feel that it may be interesting to hear my journey especially to those who are on a similar path of learning and developing as you go.

Now I will cut to the chase and say... my current solution isn't perfect.

None of them are!

And this is true for any stack you choose to move forwards with. But it is more suited to my needs than my original iteration of my site. And that is good enough. There is a great saying that pops to mind as I write this.

Perfection is the enemy of good!

Never

Ever

Try and over-engineer something.

This is true for 3D, game development and websites.

If it works... it works...

My Current Stack

My current stack is such a joy to work with. I feel so much more liberated and flexible in terms of choosing my technologies moving forward now that everything is separated.

Now, I could go out on a limb and name my stack something edgy - like FAST stack or something like that. But there are a lot of other layers that make this stack tick and I don't feel that giving it a name really reflects it value for my work.

At the end of the day - pick something that works for you and your goals!

Frontend

  1. Astro - For public facing site
  2. SvelteKit - For LMS Application
  3. Clerk - For Authentication

Backend

  1. Fastify - For backend API
  2. Turso - For Database (SQLite/LibSQL)

Perfection is the Enemy of Good

One thing that changing my site so many times has taught me is that you should not let attainment of perfection be your primary driving force, as just like with the speed of light, the closer you get, the further and less attainable it will become.

No...

Instead you should focus on the question - Am I able to achieve my goals with my current knowledge and technology.

I have done things - no developer should ever do! From writing 105 XMLHTTPrequests - to having a 10000+ line long JS file in my src because I thought it would be easier than having a build step to join all JS scripts together.

Because I am an idiot (Sometimes...)

I had nearly 25+ plugins on the WordPress site once upon a time... loosely coupled with hooks and custom php... PHP - at the time, I had know idea what it was doing???

I have made some stupid decisions in retrospect, but honestly. I wouldn't go back on any of them. As I have learned so much from this journey. The only thing that I would change, is how fast I realised my mistakes....

Fail fast!

There comes a time in every web based business where they are at a crossroads. Do they build on what they have, or do they tear it down and start from scratch?

In the case of Polyfable this has occurred 3 times! Each one coming with the expanse of my knowledge.

We started as a simply WordPress blog, hosted on fastcomet.

Now we are a static web app with a focus on client side fetching.

WordPress plugins, are what I think lead a lot of business creators and bloggers to the platform. There is something tantalising about the idea, that I can just install a plugin, and presto... I have an e-commerce website, or LMS...

Unfortunately, in practice, that isn't how it works. So don't be allured by this poisoned fruit... if you are not sure what you are doing.

Conclusion: A Lesson in Agility and Adaptability

Polyfable' s journey is a testament to the power of agility and adaptability in the face of uncertainty. By embracing change, making bold decisions, and knowing when to pause, Polyfable has not only survived but thrived in an ever-evolving digital landscape.

As the platform continues to evolve, its story serves as inspiration for businesses everywhere, reminding us that true growth comes from being open to change and recognising when one has been stupid.

I hope you enjoyed this rather ad-hoc preview into this sites journey - and I hope that you come away from it, not feelling down, but inspired to create. On Wordess, NodeJS, Webflow... whatever... stick to your vision and never give up.

Author Avatar

Hayden will tell everyone that he is not a programmer, game developer, educator, artist, 3D modeller or animator... instead, he tells people he is a storyteller.

Graduated from the Australian Film Television and Radio School (AFTRS) Bachelor, Hayden has been proactive in fostering a multidisciplinary outlook on digital storytelling across all of its mediums.