There's a piece of advice you hear constantly in the developer world: "build projects to learn." The problem is that most portfolio projects are born without a real pain behind them. And without real pain, there's no motivation to go deep, to solve the hard problem, to push through when things break.
Quita was born differently. It was born from a genuine need.
The Problem Nobody Solves Simply
I spent a few years carrying debt accumulated during a rougher phase of life. When I finally had the financial stability to deal with it, I went looking for answers — what exactly was outstanding, with whom, and what the law guaranteed me as a consumer.
What I found was a maze.
The information existed — in the Central Bank of Brazil, on the Consumidor.gov.br platform, in consumer protection legislation. But the path to accessing and using it was confusing enough to make anyone give up. Almost everything I found through searches pointed to law firms or paid consultancies. Services that charge to do something that, in theory, any citizen can do on their own.
I started thinking: if I — someone with access to information and some familiarity with technology — had difficulty navigating this, what happens to those who don't?
Brazil has decades of consumer debt history. Millions of people who can't renegotiate their debts not just because of lack of money, but because of lack of clear guidance on what to do, where to start, and what rights they have.
That's when Quita started making sense.
What Quita Is
Quita is a digital assistant built for the indebted citizen.
It guides users from obtaining their financial reports from the Central Bank of Brazil — the Registrato, a document that consolidates all debts registered in the financial system — all the way to generating structured complaints for Consumidor.gov.br, the platform where financial institutions are legally required to respond.
The core flow is:
- The user uploads their Registrato PDF
- The system automatically extracts the debts listed in the document
- Insights are generated about the debt situation — amounts, institutions, current status
- Based on this data, Quita uses AI to produce a well-founded regulatory complaint, ready to be submitted to the responsible institution The goal isn't to solve the debt for the user. It's to give them clear information and a concrete instrument to exercise their rights on their own terms.
The Tech Stack
The project was built with a modern, deliberately lean stack focused on productivity and reliability.
Backend
- Java 21
- Spring Boot 4
- Spring Security with JWT authentication
- PostgreSQL
- Flyway (database migrations)
- Maven Frontend
- Next.js
- React
- TypeScript
- Tailwind CSS
- Framer Motion Artificial Intelligence
- Google Gemini (regulatory complaint generation)
- OpenAI (fallback layer and experimentation) Infrastructure
- Railway (backend and database hosting)
- Vercel (frontend hosting — in deployment) Payments
- Mercado Pago Other
- PDF extraction and processing
- LGPD compliance: the PDF is processed in memory and deleted after extraction
The Approach That Changed Everything: Specification-Driven Development
If there's one technical lesson I want to highlight from this journey, it's not about any particular technology.
It's about process.
Most of Quita was built through SDDs — Software Design Documents. Before writing any line of code, I wrote the intent. I defined what the system should do, why, what the constraints were, the flows, the expected behaviors at the edges.
This habit transformed the quality of what I built.
When you specify before you implement, the questions that surface are different. You start asking about the user, about risks, about what happens when something goes wrong. You find ambiguities before they become bugs.
AI entered this process not as a code generator, but as an analysis partner. I would present a specification and question it together: is this clear? Is there a case I haven't covered? Does this decision make sense given this context?
In many moments, the work was more about thinking than programming.
What's Working in Production Today
The backend is live on Railway. All core features have been validated end-to-end:
- User registration and JWT authentication
- Registrato PDF upload and processing
- Automatic debt extraction
- Insight generation
- AI-powered complaint generation via Gemini
- Complaint export as PDF The frontend is in its final integration phase, with deployment planned on Vercel.
What's Coming Next
The next delivery is the first functional public version — with a complete web interface, full integration with the production backend, and the complete flow accessible to real users.
After that, the roadmap includes:
- Guided onboarding for new users
- Expanded support for additional document types
- Refinement of the complaint generation model
- Exploring monetization viability
What This Project Taught Me
Fictional projects teach syntax. Real projects teach you to think like an engineer.
The difference is in the pressure a real problem creates. When you know there's someone on the other side who can be helped, every decision carries weight. You don't skip steps. You don't accept a solution that only works on the happy path.
And perhaps the most honest lesson from this journey is that AI doesn't replace software engineering. It amplifies it. When you know what you want to build, when you have clarity about the problem, AI accelerates. When you don't, it just generates confusion faster.
Quita isn't finished yet. But it's closer than ever.
And it was built to solve a real problem, with real technology, for real people.
Top comments (0)