Inspiration
We have so many special moments saved in pictures scattered all over - Instagram, Facebook, phone storage, Google Photos, desktop storage - everywhere. It makes taking a stroll down memory lane for any particular event in our life often impractical. In spite of having more image capturing capacity than ever, we're losing many captured memories to the clutter and disorganization of modern social media.
What it does
It's a website focused on image upload, storage, and collation combined with social elements that let users share comments and add reactions.
What's better than great memories? Sharing great memories with friends & loved ones!
How we built it
A collaboration of effort between myself, Codex, and ChatGPT.
- Codex provided 100% of the coding manpower (I never touched code).
- ChatGPT acted as my high-level engineering consultant.
- I provided a little system support (installing Docker, setting up Hetzner MCP, creating Hetzner keys, and other infrastructure tasks).
Most of my work was in the form of high-level creative direction - explaining exactly what I wanted and where, while testing and iterating.
The process for more significant planning looked something like this:
- I brought an idea to ChatGPT.
- ChatGPT refined and expanded it, adding technical considerations I would never have thought of.
- Together we'd make a few decisions and end up with a prompt.
- I'd give that prompt to Codex in Plan Mode and ask it to produce a technical implementation plan.
- I'd bring that technical plan back to my "ChatGPT consultant" (a permanently pinned chat), have it critique the plan, discuss improvements, and generate another prompt.
- I'd feed that prompt back into Codex to update the implementation plan.
- Repeat once or twice until the plan felt solid.
- Finally, I'd tell Codex to implement it.
We started with a five-milestone approach and asked Codex to build the application one milestone at a time.
The first milestone required some manual testing from my side. I found a few issues (including an internal server error on the initial page load that effectively broke the application), reported them back to Codex, and it resolved them quickly without introducing regressions - something I found genuinely remarkable.
The remaining milestones mostly involved code implementation, so I stepped back until the five milestones were complete.
My initial impression afterwards was:
"OK... decent foundation. Now the work begins."
Technically the project was on solid ground, but it was still a long way from the application I had in my head.
From that point onward, development became highly iterative.
I'd use the application, identify the gap between what existed and what I envisioned, then create prompts describing that bridge.
- For relatively small changes, I'd work directly with Codex.
- It would implement the change, restart the Docker containers, and within a minute or two the page would often update without me even refreshing the browser.
It honestly felt a little magical.
For larger features I'd return to the planning workflow, acting as the middle-man and decision maker between ChatGPT and Codex before finally giving Codex the go-ahead to build the agreed solution.
Challenges we ran into
I had several challenges, although none became the kind of head-banging blockers that traditional software development often creates.
The first major technical challenge was designing a usage tracking and recommendation algorithm that would eventually surface public albums and images likely to interest each user.
Had I gone directly to Codex with my original idea, I think the solution would have been much weaker because I simply didn't know what I didn't know.
That's where ChatGPT was invaluable.
After discussing the idea, it quickly became obvious just how many moving parts a recommendation system actually has.
I haven't tested it thoroughly yet, so I'm sure there's still plenty of work ahead, but one thing became very clear:
Algorithms that successfully point users toward content they'll enjoy are no joke.
Another major challenge was deployment.
I know deployments.
I'm a senior software developer with plenty of CI experience.
Yet reading the deployment plans and prompts required to deploy through Hetzner MCP honestly made me feel like a caveman.
While I list this as a challenge, it really became a challenge for the team (Codex, ChatGPT, and me), rather than just for me.
There were simply so many prompts, approvals, and moving parts that by the end my role had mostly become reading each command, convincing myself it wasn't about to destroy the server, and clicking approve.
What completely blew me away, though, was the result.
After all that...
...it just worked.
A cloud server that I owned.
Running in infrastructure under my account.
Charging my credit card.
Serving a live website at albumly.net.
Without me SSH'ing into anything.
Without manually configuring Docker.
Without worrying about deployment scripts.
Wow.
Accomplishments that we're proud of
There's still a long way to go before Albumly becomes what I ultimately envision.
But considering this was built in roughly four days, I think the result is genuinely impressive.
Reaching this point through traditional software development would almost certainly have taken me months of dedicated work.
What we learned
- The combination of Codex, a semi-skilled human, and a high-level AI engineering consultant in the form of GPT-5.6 is incredibly powerful.
- I am just a caveman.
- The future is here.
What's next for Albumly
- ๐จ Aesthetics
- โจ User experience improvements
- ๐ New features
- ๐งช Testing
- ๐ฌ Feedback processing
- ๐จโ๐ฉโ๐งโ๐ฆ Local friends-and-family marketing
- ๐ง Continued development
- ๐ฐ Business model implementation
Built With
- celery
- chatgpt
- codex
- django
- docker
- minio
- postgresql
- react
- redis
- typescript
- ubuntu
Log in or sign up for Devpost to join the conversation.