Published at
Today I made the same project, a simple URL shrinker/shortener with 4 stacks for making a full stack web-app to find the one I enjoyed the most when making.
First I made a basic URL shortener in my perfect stack, to get a feel for the project, this a simple single page URL shortener that will use a database, API and UI. Just like any full-stack web app. As normal I found my stack to be easy and fast to code as normal.
Now, that I have a feel for the project I then made it with Supabase, and from making it in Supabase I found that writing the code is as easy and simple as it can be but setting up Supabase was painful to do I found it hard to manage and I do not like how anyone can just delete your hole app’s database by default. I will not be using Supabase again, or at least as a replacement for my backend but maybe for some auth handling.
Next we are back to Go, but this time using it’s built-in HTML template engine to make our web-app. As normal I found this easy to code but I did not like how getting Tailwind CSS felt like a hacked together mess. So because of this I most likely will not returning to this stack.
Time to adventure off to the land of JavaScript with the MEAN stack except I have made a few changes but it’s still very similar to the original MEAN stack, first I switch Angular for Vue because I don’t want to learn Angular for a small project like this, this I switched Node.js for Deno because I want to use TypeScript. With this stack I felt that it was easy to find a package for anything, however I will not be using it again because I found it harder to Dockerize and did not enjoy working with Deno.
Next is Nuxt, I was not able to finish this project in Nuxt because I don’t want to learn it for this but after giving it a try, I like it. I don’t like Java/TypeScript on the backend but I do like Nuxt.
After all, I will be staying with my current stack because I could still make this app faster in it when compared to everything else I tried today. I just don’t see the point of learning any thing new I tried today and I’m happy with my perfect stack. I did also look at Next.js, Ruby on Rails, Laravel and Spring but I did not try them because I could not see myself using them in projects to come.
Thanks for reading.