If you want to level up your .NET skills, try building a 𝗣𝗲𝗿𝘀𝗼𝗻𝗮𝗹 𝗙𝗶𝗻𝗮𝗻𝗰𝗲 𝗧𝗿𝗮𝗰𝗸𝗲𝗿 that feels like a real production system.
This project is simple to understand, but deep enough to teach real architecture.
📌 Here's what we're building
You can track income and expenses, assign categories, and see spending trends.
You get dashboards with charts, monthly summaries, and a clean view of where your money goes.
And the stack is fully modern:
• ASP .NET Core 10 Web API
• React dashboard
• Neon Postgres
• Azure App Service
• Azure Static Web Apps
📌 Backend: ASP .NET Core 10 Web API
We create separate endpoints for transactions, categories, budgets, and reports.
Each module handles its own logic, transactions know how to calculate totals, reporting knows how to aggregate data.
Here is what we will use:
• Minimal APIs
• EF Core
• FluentValidation
• Scheduling with TickerQ
• Observability with OpenTelemetry
• Integration Tests with xUnit and TestContainers
📌 Why a Modular Monolith
A modular monolith keeps everything in one deployable unit but gives us clear boundaries.
1️⃣ Finance Module → transactions, categories, budgets
2️⃣ Users Module → user management and authentication
3️⃣ Reporting Module → aggregations for dashboards
This setup avoids the complexity of microservices while using structure that scales.
📌 Database: Neon Postgres
Neon is perfect here because:
↳ Autoscaling
↳ Generous free tier
↳ Serverless architecture
↳ Fully compatible with EF Core Npgsql package
We design a simple schema:
• users
• accounts
• transactions
• categories
• budgets
📌 Frontend: React Chart.js
The UI has 4 main parts:
1️⃣ Overview dashboard
2️⃣ Transactions page
3️⃣ Categories and budgets
4️⃣ Reports with charts
React Query handles data fetching.
React Hook Form handles validation.
Chart.js shows spending trends and income vs expenses.
Everything is simple, fast, and focused on real usability.
📌 Deployment: Azure App Service Azure Static Web Apps
The backend runs on Azure App Service → easy deploy, environment variables, scaling, SSL.
The frontend runs on Azure Static Web Apps → global CDN, cheap, clean CI/CD.
GitHub Actions builds and deploys both automatically.
Building this project will teach you real Architecture, Modular Monolith design, Minimal APIs, and cloud deployment.
If you want to build a Finance Tracker project, I recommend using my production-ready Modular Monolith .NET project template:
↳
antondevtips.com/templates/m…
——
♻️ Repost to help others build a real project
➕ Follow me (
@AntonMartyniuk ) to improve your .NET and Architecture Skills
📌 Save this post for future reference!