How kaiquegeraldo/controle-financeiro works
This is a personal-finance and life-tracking SaaS with a Next.js frontend and Spring Boot modular-monolith API. A user authenticates, can prepare an onboarding draft, and then records and reviews financial activity; separate product areas cover cards, planning, investments, goals, habits, and reporting. The sampled transaction path shows a controller delegating to a transactional service, while the README documents broader capabilities. Several subsystem links are dashed because their implementation or wiring was not sampled.
Main entry points: TransactionService.java Cash ledger · AuthService.java Auth service · OnboardingDraftService.java Draft handling · authScreen.tsx Auth screen
Components 28
Web experience
- Auth screen
controle-financeiro-frontend/src/screens/public/auth/authScreen.tsx - Auth workflow
controle-financeiro-frontend/src/hooks/useAuth.ts - Auth client
controle-financeiro-frontend/src/services/authService.ts - API proxy
controle-financeiro-frontend/src/app/api/[...path]/route.ts
Identity and onboarding
- REST API
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api - Auth endpoints
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/AuthController.java - Auth service
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/AuthService.java - JWT tokens
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/infra/security/TokenService.java - Recovery email
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/infra/mail/EmailService.java - Onboarding API
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/OnboardingController.java - Draft handling
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/onboarding/OnboardingDraftService.java - Draft completion
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/onboarding/OnboardingApplicationService.java - Onboarding state
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/onboarding
Financial records
- Transaction endpoints
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/TransactionController.java - Cash ledger
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/TransactionService.java - Accounts
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/account/Account.java - Categories
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/category/Category.java - Cards and invoices
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/CreditCardService.java - Investments
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/investment - Coverage reporting
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/ReportingCoverageService.java
Planning and life tracking
- Monthly planning
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/planning - Annual summary
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/AnnualSummaryController.java - Goals and checklist
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/GoalService.java - Habit tracking
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/domain/habit - Dashboard
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/DashboardController.java
Other components
- User
- PostgreSQL
- Brapi market data
Connections 25
- User → Auth screen: uses
README.md - Auth screen → Auth workflow: starts auth
- Auth workflow → Auth client: calls
controle-financeiro-frontend/src/hooks/useAuth.ts - Auth client → API proxy: requests
- API proxy → REST API: forwards requests
- Auth endpoints → Auth service: delegates
- Auth service → JWT tokens: creates tokens
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/AuthService.java - Auth service → Recovery email: sends recovery
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/AuthService.java - Onboarding API → Draft handling: handles drafts
- Draft handling → Onboarding state: reads and writes
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/onboarding/OnboardingDraftService.java - Draft handling → Draft completion: delegates completion
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/onboarding/OnboardingDraftService.java - Draft completion → Onboarding state: persists preparation
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/onboarding/OnboardingApplicationService.java - Transaction endpoints → Cash ledger: delegates
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/controller/TransactionController.java - Cash ledger → Accounts: updates ledger
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/TransactionService.java - Cash ledger → Categories: uses category
controle-financeiro-backend/src/main/java/com/controlefinanceiro/api/service/TransactionService.java - Cash ledger → PostgreSQL: persists records
- User → Transaction endpoints: records activity
- User → Cards and invoices: manages cards
- User → Investments: tracks assets
- Investments → Brapi market data: gets quotes
README.md - User → Monthly planning: plans month
README.md - User → Goals and checklist: tracks goals
README.md - User → Habit tracking: logs habits
README.md - User → Annual summary: reviews year
README.md - Dashboard → Coverage reporting: shows coverage