Why AI Couldn’t Build My “Simple” App: Lessons from a Frontend Dev

I set out to build a "simple" prize competition app with the help of AI, using Go, Supabase, and Netlify. The frontend? Smooth sailing. The backend? A steep climb. Here's what worked, what didn’t, and what I’d do differently next time.

Why AI Couldn’t Build My “Simple” App: Lessons from a Frontend Dev

When I set out to build a prize competition web app, I thought I was being smart about the tech. I chose fast tools, leaned into modern development best practices, and used AI tools like Cursor to help along the way.

The idea was to create a progressive web application where users can host their own UK-compliant prize competitions. Entrants answer a question, buy a ticket, and wait for the draw. Clean, legal, and fun.

I’m a frontend developer by background, and I figured with some AI help, I could manage the backend, too. Turns out, it wasn’t that simple.


The Tech Stack Behind the app

I wasn’t messing around — here’s what the app is built with:

Frontend

  • HTMX: For dynamic interactivity via HTML attributes
  • Tailwind CSS: Utility-first design system
  • Go HTML Templates: Server-side rendered pages

Backend

  • Go: The core backend language
  • Supabase: Handling PostgreSQL, Auth, and Storage
  • Netlify Functions: Where the backend logic lives (API endpoints)

Dev & Hosting

  • Docker: For local development on a Linux-based Chromebook
  • Netlify: Hosts the frontend and serverless functions
  • GitHub: For version control
  • Cursor: My AI-assisted development environment

What’s Been Going Great

From a frontend perspective, this app has been a dream to build. HTMX makes everything feel snappy and reactive without needing a JavaScript framework. Tailwind lets me style fast and clean. Go templates give me server-rendered content that’s SEO- and speed-friendly.

Even the Docker setup runs smoothly on my Chromebook. With everything containerized, I’ve got a reliable local mirror of what runs on Netlify.


Where It Fell Apart

The backend.

Despite all the hype about Go being "simple," it’s not simple when you’re not a backend dev. Cursor can write Go code, but it doesn’t teach you how Go actually works. Structs, interfaces, error handling, net/http, it’s a lot when you’re new.

And Supabase? It’s a fantastic platform with rich features, but it’s clearly geared toward JavaScript developers. There’s a lack of mature documentation for Go, and that made integrating Supabase Auth, Postgres queries, and edge functions a painful guessing game.

Netlify Functions added another twist, I was now mixing serverless patterns with a language that expects more traditional server structure. Cursor couldn’t always bridge that gap.


What I Learned (The Hard Way)

1. Cursor isn’t magic if you don’t know your stack

AI can suggest Go code. It can even scaffold a project. But it won’t tell you why a Supabase query fails silently or why your Netlify function crashes with an HTTP 500.

2. Supabase has a language gap

If you’re using JavaScript, Supabase is a dream. For Go? Expect lots of searching, trial-and-error, and half-documented libraries.

3. Go might not be for beginners

It’s clean, it’s fast, but it’s strict. You need to understand types, error handling, interfaces, and when you’re learning backend and a language at the same time, that’s a recipe for confusion.


What Comes Next

I'm seriously considering moving away from Go for certain backend logic. JavaScript or even Python (both supported in Supabase Functions) may give me a quicker, easier path to finishing this project.

I’ll likely keep the frontend stack (HTMX + Tailwind + Go templates) since it’s been rock-solid. But for API logic, I may lean into Supabase Edge Functions using JavaScript.

My goal is to keep this platform developer-friendly for others, not just backend experts.


Final Thoughts: Can AI Build Your App?

Yes — if you already understand how that app should work.

Tools like Cursor are great for speeding up experienced devs. But they’re not low-code platforms. If you’re a frontend developer diving into backend waters for the first time, know this:

  • AI tools will help, but not hold your hand.
  • Language and platform choice matters.
  • And sometimes, simpler is better, even if it’s “less cool.”

Thinking of building your own full-stack app with AI help? I’d love to hear what worked (and didn’t) for you. Drop a comment or share your experience, especially if you’ve navigated Supabase + Go + Netlify like I have.