I recently built my first Power Platform code app using React/Vite. And the honest truth? I had a working demo in a few hours. That part felt amazing.
Vibe coding is where you build by describing intent to an AI, then iterate by reacting to what it generates. It’s less about writing every line yourself, and more about steering the direction, reviewing what’s produced, and refining it until it behaves the way you want.
In our office we play table tennis a lot, so I built a small app where colleagues can:
This is the part where AI shines. You prompt → you get code → and within a short time I had:
That “momentum boost” is real, and it’s probably the biggest value of vibe coding.
After the first demo, I noticed something important. The app worked, but it didn’t feel like a mobile app yet. It felt like a dashboard squeezed into a phone.
So I started shifting the design toward a mobile-first shell: a “phone frame”, immersive match states, and tighter layouts that stay inside the viewport. This is where the project changed from “generate something” to “shape something”.
One of the more interesting lessons came from something tiny:
Deducting a point from your opponent sometimes removed TWO points.
That sounds trivial… until you realize what it forces you to confront:
It’s the kind of bug you don’t see in a happy-path demo, but you hit immediately in real play. And it’s also a perfect example of the limit of AI-generated first drafts: AI can generate score buttons fast. But state design (and reliable undo) is where you still need your own engineering brain.
This project wasn’t business‑critical. It was a fun office app. But it taught me not only about UX and state, but also about security and long‑term ownership.
When you vibe code, it’s easy to focus on “it works” and forget that generated code is still… your code. And you’re responsible for what it does, what it exposes, and how it evolves. Our internal security approach is built around secure software development: avoiding hardcoded secrets, using secure components, peer review for pro‑code, and controlled releases via pipelines. That mindset matters even for “small” apps.
AI can absolutely produce code that looks correct and behaves fine in a demo. But AI-generated code can still introduce vulnerabilities and people are often more likely to trust it than they should.
That’s why I think the real rule should be: Never ship code you don’t understand.
Vibe coding is a brilliant way to start. But the best results still come when you can fine-tune and validate the last 20% yourself. Especially around security, responsiveness, and state correctness.
AI gives you speed. You provide judgement. And honestly? That combination is awesome.
Related information: Quickstart: Create a code app from scratch