My AI-Powered Workflow: Building a Full-Stack App with ChatGPT and GitHub Copilot
On this page4 sections ▾
I used ChatGPT and GitHub Copilot to build a full-stack URL shortener, with the tools doing most of the implementation. I wanted to see how much of a project I could delegate while I handled architecture and review.
I handled the architecture and review, with two tools taking on different parts of the work:
- ChatGPT as my Project Manager, responsible for planning.
- GitHub Copilot as my Developer, responsible for implementation.
#Step 1: The blueprint from ChatGPT
I started with a conversation with ChatGPT. I gave it a high-level brief: a modern URL shortener with a React frontend, a Rust backend, and features like custom domains and passkey authentication. Then I asked it to break that down into a detailed list of Product Backlog Items (PBIs).

The output was solid. I copied the plan straight into the repo, created a GitHub Issue for each PBI, and had a full backlog ready to go without writing a single user story myself.
#Step 2: The AI agent development loop
For each feature, I used the same workflow:
- Open the GitHub Issue for the PBI.
- Assign it directly to GitHub Copilot from the assignees section.

Then I'd wait. Simple tasks came back in a few minutes; more complex ones took close to an hour. Either way, Copilot would open a Pull Request with a full implementation — Rust backend, React components, database logic, the lot.
#Step 3: The human in the loop
I'd review each PR by reading the diff and leaving comments, as I would with a human developer.
Some of it was refinement, some of it was bug fixes. Copilot's code was often good, but not always right. Seeing a feature working also had a way of surfacing things I hadn't thought to ask for.

My comments were blunt:
- "the test url button stopped working... please fix"
- "Don't leave TODOs... add this to the instructions too... fix it rather"
- "fetch configuration... no hardcoded urls"
Copilot would pick those up, make the changes, and push new commits to the PR. That back-and-forth loop drove most of the project forward.
#What I spent my time on
I spent more of my time on architecture, flow, and checking whether the requested features made sense once they were running. The PR review loop still needed my attention, particularly when a working implementation exposed something missing from the brief.
The full repository for Thalora is public if you want to dig into how it actually played out. Every PBI is there as a GitHub Issue, every Copilot-generated PR is there with my review comments intact.
Find it here: github.com/GordonBeeming/Thalora
I think of this as "Level 1" of AI-assisted development — one agent, one task at a time, with a human reviewing each step. It works well. I used parallel work on the portfolio project that followed.