Tech Stacks - Sideproject MVP
Jun 23, 2024

Tech stacks

What tech should you use to build your MVP?

It's no longer a secret, the best tech stack for your side project is...the tech stack you already know!

There are times you'll need to use something new, or perhaps the point of the side project is to try something new, but typically if you're building to actually launch a new product, stick with what you already know.

As someone who's been building software for around 40 years, I've had the chance to try a lot of different stacks, for kinds of apps. Some of my favorites are below.

Web apps

My go-to stack for building anything on the web is TALL: Tailwind, Alpine, Laravel & Livewire.

Tailwind has quickly become very popular for styling websites/applications. I fell in love with utility classes when they were introduced in Bootstrap, but Tailwind takes them to an entirely new level. The ability to use components to build your user interface takes away most of the headache off utility classes in HTML.

Alpine replaced jQuery for most of the interactive things I need to do in the user's browser.

Laravel has been my preferred backend server framework for over 10 years. It's based on, gasp, the PHP language. I've used many other frameworks, even taken a try at building my own, but Laravel gives me everything I need and a lot more I didn't know at the time. The ecosystem that has built up around the framework, is amazing. You'll find support for just about anything you're trying to build.

Livewire allows you to build reactive applications, while maintaining state on the server. This sounds strange when you first start doing this. Ultimately, all/most application state will need to be sent to and persisted on the server, so maintaining it on the server actually eliminates a layer (and complexity) from your applications.

I've used: Symphony, Rails, Django, Spring, Express, Next.js, Vue, and React to name just a few other options. I learned a lot from them, if you know and use these, keep using them!

Mobile

I don't do much native mobile development, but when I do, I like to use the ionic framework.

With limited time, if you want to build a native application for iOS & Android, writing just one code base can save you a lot of time and headache. If you need that extra boost of performance or access to specific hardware, then you'll need to build for each platform natively. For an MVP in most cases you can for go this.

Recently, there are some interesting alternatives I'd explore before starting a new project.

React Native via Expo and Flutter aim to provide many of the advantages as Ionic. Backed by much larger organizations (Facebook and Google, respectively) they have active ecosystems and offer many resources for developers.

AI

Yes, we may be in an artificial intelligence bubble, but maybe we're not. AI is becoming rapidly integral to anything we do in work and fun. Although you can use just about any language to develop with AI, you're typically just hitting a hosted API, Python seems to be the go-to language. Most of the big players provide SDKs for Python first. If you're building more than another wrapper application, I would dig a little deeper into what Python has to offer.

Django is a great framework to handle all aspects of your application needs.

Never miss an update! Subscribe to our weekly newsletter.