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

Share this project:

Updates