I almost didn’t start this project.
I kept thinking:
- “I should learn more backend first.”
- “I should understand AI properly first.”
- “I should probably build smaller projects before touching RAG.”
So I delayed starting longer than I should have.
But eventually I started anyway.
And honestly, this project taught me more than the previous 2–3 months of passive learning combined.
Not just about RAG or AI.
About debugging, architecture, async systems, API design, and how quickly complexity grows once AI enters the picture.
This article is basically a retrospective on the project — what worked, what broke, and the lessons I’d carry into future AI apps.
If you’re unfamiliar with RAG (Retrieval-Augmented Generation), I wrote a beginner-friendly introduction earlier:
🪞 What This Actually Taught Me
The hard part wasn’t the RAG pipeline itself.
It was everything around it — deployment, frontend integration, state management, edge cases, and all the small system behaviors you only notice while debugging.
Those aren’t AI engineering problems.
They’re software engineering problems showing up inside AI applications.
And honestly, that was probably the biggest surprise of the entire project.
SOCIAL SHARE CARD GENERATOR