-
-
PFMS Personal dashboard with a consolidated overview of personal finances.
-
Recent transactions and savings information stored locally.
-
Monthly Financial Snapshot showing income, expenses and net result.
-
Monthly overview with budget status, bank accounts and savings.
-
Income management for registering and reviewing income entries.
-
Expense management with categories, accounts and amounts.
-
Budget management for planning and monitoring spending.
-
Bank account management with balances and account details.
-
Savings account management with balances and interest information.
-
Loan overview for tracking financial commitments.
-
Codex with GPT-5.6 implementing and testing safe database isolation for PFMS Personal.
-
Codex with GPT-5.6 establishing a safe architectural baseline before modifying PFMS Personal.
Inspiration
Personal financial information is often scattered across spreadsheets, banking portals, documents, and separate applications. Many finance tools also depend on cloud accounts or collect more data than users may want to share.
I created PFMS Personal to provide one clear, private, offline-first environment where people can understand and manage their personal finances.
What it does
PFMS Personal is a Windows desktop application that brings important financial information together in one structured system.
The current version includes:
- A central financial dashboard
- A monthly financial snapshot
- Income and expense management
- Budget management
- Bank account management
- Savings account management
- Loan tracking
- Recent transaction summaries
- Local SQLite data storage
- Validation and automated tests
The application is designed around four principles: overview, insight, control, and freedom.
How I built it
PFMS Personal was built with C#, .NET 10, WPF, MVVM, Entity Framework Core, SQLite, CommunityToolkit.Mvvm, and xUnit.
The solution follows a layered architecture with separate application, core domain, data, and test projects. Financial values use decimal types, database operations are asynchronous, and repository patterns separate business logic from persistence.
I used Codex with GPT-5.6 as an active development partner. It helped me:
- Analyse and restructure the solution architecture
- Implement domain entities and repository patterns
- Diagnose Entity Framework tracking and context conflicts
- Design and expand automated tests
- Validate builds and database behaviour
- Preserve existing functionality during architectural changes
- Improve the demonstration, documentation, and submission materials
I remained responsible for the product direction, financial model, design decisions, testing, and final validation.
What was built during OpenAI Build Week
PFMS existed as an early prototype before Build Week. During the official submission period, I meaningfully rebuilt and extended its technical foundation using Codex and GPT-5.6.
The Build Week work included:
- Recovering and restructuring the solution into clearer architectural layers
- Moving income, expense, and budget functionality into the Core and Data layers
- Implementing repository cutovers while preserving public behaviour
- Adding the Bank Account domain foundation and IBAN validation
- Resolving Entity Framework context and tracking problems
- Expanding the automated test suite from a recovered baseline of 86 tests to 181 passing tests
- Validating that the existing SQLite database remained unchanged during the restructuring
- Creating and publishing the final working product demonstration
Challenges I faced
One major challenge was rebuilding the architecture without breaking the working application or damaging the existing database.
I also encountered duplicate database contexts, Entity Framework tracking conflicts, Windows file permission problems, and package restore and security-audit issues. Codex helped investigate these problems step by step, propose bounded solutions, and generate focused tests to verify the results.
What I learned
This project showed me that Codex works best as a transparent engineering partner rather than a one-click code generator.
Clear task boundaries, small implementation phases, automated tests, and frequent validation made it possible to improve a complex application safely. GPT-5.6 was especially valuable for understanding dependencies across the architecture and maintaining consistency between domain models, repositories, persistence, and tests.
What's next for PFMS Personal
Future versions will expand PFMS Personal with:
- Secure backup and recovery
- Global search and document management
- Financial reports and PDF export
- Tasks, notes, contacts, and projects
- Advanced financial planning
- A WIA and income-planning module
- Additional privacy and security controls
My long-term goal is to develop PFMS Personal into a complete private management environment for personal finances and important life administration.
Built With
- .net10
- c#
- codex
- communitytoolkit.mvvm
- entityframeworkcore
- git
- gpt-5.6
- mvvm
- sqlite
- visual-studio
- wpf
- xunit
Log in or sign up for Devpost to join the conversation.