Building a web app with AI. I’m Not a Web Developer. I Shipped a Web App anyway.
The last time I wrote anything resembling front-end code, it was 2003, and it was classic ASP. So when I tell you that back in March, I had an idea for a web application and decided to build it myself, you should hold a healthy amount of scepticism.
As of yesterday, 11th June, that idea was a live platform with 500-plus players, integrated payments, automated email, real football data syncing in the background, and support for multiple tournaments. I built it as someone whose day job is Microsoft data and AI consulting, not web development. This is the honest account of what building a web app with AI actually looked like, where the AI coding tools genuinely earned their keep, and where they very much did not.
I’m writing it down because the conversation I keep having with clients right now is some version of the same question: is this AI-assisted development thing real, or is it a demo that falls over the moment you ask it to do something that matters? Having just taken a project from a back-of-a-napkin idea to a running product, I have a more useful answer than I did six months ago.
What I Built
The application is called Last Person Standing. The game itself is simple yet engaging: It’s based on a real-life sports game. Initially, the English Premier League, but at the moment the World Cup, and if this works, I’ll look to do the NFL come the autumn. How it works: each round, you pick one team to win. If they win, you survive. If they lose or draw, you’re out. The twist is that you can’t pick the same team twice, so the strategy compounds as the season or game goes on, and your options thin out. Last player standing takes the pot/prize.
That’s the core game. What it grew into is a football competition platform that now runs three formats side by side, the survivor game, a points-based league that keeps eliminated players engaged even when they’ve lost, and a sweepstake for offices, pubs and fundraisers. It launched into World Cup 2026 mode, which meant supporting an international tournament alongside domestic football, with all the data-model upheaval that implies. My vision for it was a platform that grassroots youth football teams, clubs and other fundraising organisations could use as a way generate funds to support their activities. More on that in another post.
None of that is the interesting part, at least for this post. The interesting part is how it got built.
The Stack, and the “Vibe Code” Reality
The platform is a React and TypeScript front end on a serverless, PostgreSQL-backed architecture, built on Supabase, with Claude Code doing a great deal of the heavy lifting on the actual coding. No traditional web servers to babysit. Authentication, security and business logic delivered through managed services and serverless functions. Fixture data synced automatically from external providers, with scheduled background jobs handling competition progression, notifications and admin.
On paper that’s a perfectly sensible modern cloud-native design. The honest bit is that I did not sit down and architect all of it on day one like a seasoned web engineer or architect. A lot of it emerged through conversations with AI tooling, a working knowledge of data platforms, and a willingness to be repeatedly wrong until the shape was right.
This is what people mean by “vibe coding”, and the term does the practice a disservice. It makes it sound like you wave your hands and software appears. You don’t. You make hundreds of small decisions, you reject a lot of what the AI proposes, and you carry the architectural responsibility the whole way through.
Where AI Genuinely Earned Its Keep
I want to be precise here because the value was real and specific.
Speed of getting from nothing to a working loop. Within the first week I had user accounts, competitions, teams, fixtures, rounds, player picks and elimination logic all working. Players could join, pick a team, and progress or get knocked out based on real results. As a solo non-developer, getting to a functioning core game loop in days rather than months is the difference between a project that happens and one that stays a note in my phone.
Filling the gaps in my own knowledge. I know data. I do not know the current idioms of React state management or the finer points of serverless function design. AI tooling let me operate above my front-end skill level without pretending I’d suddenly acquired ten years of experience. It’s the closest thing I’ve had to a pair programmer who never gets tired of my basic questions.
Boilerplate, plumbing and the boring 80%. Email confirmations, reminders, fixture synchronisation, the scaffolding around payments. The unglamorous machinery that makes a product usable, not a tech demo. This is exactly the work AI is good at, and exactly the work that usually eats a side project alive.
What Still Needed Me
Here’s the part the hype merchants skip.
Architecture was on me. The AI will happily generate code for whatever you ask, including a design that will hurt you in three weeks. Deciding how the data model should be structured, where the boundaries between competitions and tournaments sit, and how to keep it scalable. That judgement came from twenty years of working with data platforms, not from a prompt.
Business rules were on me. Football is full of edge cases. Extra time. Penalty shoot-outs. Draws eliminate a survivor pick but score differently in the league. A team you’ve already used. The AI doesn’t know your rules until you’ve thought them through clearly enough to specify them, and thinking them through clearly is most of the actual work.
Testing and trust were on me. When real money is involved through entry fees, “it seemed to work when I tried it” is not good enough. Someone has to care whether the elimination logic is correct on the gameit matters. That someone was me and it still is as we’re testing as going live here
The pivots were on me. The biggest change in the whole build was going from a Premier League-only app to a multi-tournament platform that could handle the World Cup. If this works we’ll bring in the NFL next. That touched the data model, the business rules and the interface all at once. No tool made that decision or absorbed its consequences. I did, and I had to revisit earlier choices to make it work.
AI accelerated the build dramatically. It did not replace the engineering judgement that decided what to build, how it should be shaped, and whether it could be trusted.
The Shape of the Build
One thing worth showing plainly is how non-linear it was. The roadmap below looks tidy in hindsight. In reality, most of it emerged from testing and feedback rather than a master plan.
- March: Core game, then payments, email, the points league, and early analytics like expected goals and win probability.
- April: World Cup support, referral codes, in-competition messaging, and the first real automation.
- May: Security hardening, caching, the sweepstake module, and launch preparation.
- June: Invite codes, live statistics, rules pages, onboarding polish and past 600 players.
If there’s a single lesson in that sequence, it’s that building software is rarely a straight line. New ideas came out of testing and user feedback. One of my competition organisers and the team manager of DMC Hamburg, once they got setup produced lots of great ideas. A big thanks to the team there for their input. User feedback reordered the priorities. A major pivot forced me back through earlier decisions. That’s not a failure of planning. It’s just what real delivery looks like, and AI tooling doesn’t change it. If anything, it makes the cost of changing direction lower, which means you change direction more often.
What This Means If You Lead a Delivery Team
Strip away the football, and there’s a commercial point here that applies directly to the teams I work with.
AI-assisted development is real, and it changes what a small team or a determined individual can ship. The productivity gain is not marketing. I lived it. A project that would have been uneconomical to build the old way became a weekend-and-evenings reality.
It does not remove the need for engineering discipline. It relocates it. Less time typing boilerplate, more time on architecture, business rules, testing and judgement. The hard parts. If your team has those skills, AI makes them faster. If your team lacks them, AI helps them produce more code they can’t properly evaluate, which is a different and worse problem.
The winners will be the people who pair domain knowledge with these tools. I’m not a web developer, but I understood the domain, the data, and football, well enough to direct the tooling and catch it when it was wrong. That combination, not the tool on its own, is what shipped a product.
The breathless version of this story is “anyone can build anything now”. The honest version is more useful: the floor has risen, the speed has changed, and the responsibility hasn’t moved an inch. That’s the version I’d want a client to plan around.
Want to Make AI Actually Work in Your Business?
Building Last Person Standing was a personal project, but it’s the clearest proof I have of the same thing I help organisations with every week: getting real, useful output from AI rather than impressive demos that don’t survive the rigours of production. If you’re trying to work out where AI-assisted development genuinely fits in your delivery, and where it’ll quietly cost you, that’s exactly the conversation I’m built for. Have a look at how the AI enablement work fits together, or get in touch and we’ll talk it through.
PakarPBN
A Private Blog Network (PBN) is a collection of websites that are controlled by a single individual or organization and used primarily to build backlinks to a “money site” in order to influence its ranking in search engines such as Google. The core idea behind a PBN is based on the importance of backlinks in Google’s ranking algorithm. Since Google views backlinks as signals of authority and trust, some website owners attempt to artificially create these signals through a controlled network of sites.
In a typical PBN setup, the owner acquires expired or aged domains that already have existing authority, backlinks, and history. These domains are rebuilt with new content and hosted separately, often using different IP addresses, hosting providers, themes, and ownership details to make them appear unrelated. Within the content published on these sites, links are strategically placed that point to the main website the owner wants to rank higher. By doing this, the owner attempts to pass link equity (also known as “link juice”) from the PBN sites to the target website.
The purpose of a PBN is to give the impression that the target website is naturally earning links from multiple independent sources. If done effectively, this can temporarily improve keyword rankings, increase organic visibility, and drive more traffic from search results.
Comments are closed, but trackbacks and pingbacks are open.