Inspiration

BudgetPro started from a simple personal question: how can someone clearly understand where their money goes and what will remain at the end of the month?

I began building the application without programming experience. My role was to define the product idea, financial rules, screen behavior, visual structure, and the problems the app needed to solve. I tested every stage and requested corrections until the application worked as intended. ChatGPT helped me turn those decisions into a real Android application, step by step.

Before OpenAI Build Week 2026, BudgetPro was already a functional production application published on Google Play. For Build Week, I wanted to add something genuinely useful without rebuilding or destabilizing the existing product: a privacy-first Smart Financial Forecast.

What it does

BudgetPro helps users manage:

  • income and expenses;
  • customizable financial jars;
  • money sources and balances;
  • savings;
  • subscriptions and payment history;
  • credits and installments;
  • projects, investments, revenue, expenses, and profit;
  • local backup and restore;
  • multiple currencies;
  • account-specific financial data.

The new Smart Financial Forecast uses the financial information already recorded by the user to estimate their position at the end of the current month.

It displays:

  • a primary projected end-of-month balance;
  • a more conservative projection;
  • current balance, received income, and recorded expenses;
  • comparison with the previous month;
  • estimated remaining discretionary spending;
  • upcoming subscription payments;
  • upcoming credit installments;
  • possible future recurring income;
  • a seven-day safety buffer;
  • estimated saving capacity;
  • a financial health score;
  • risk and confidence levels;
  • clear recommendations and data-quality warnings.

Users can expand the score breakdown and calculation method to understand how the result was produced.

Privacy by design

The forecasting feature is deterministic and rule-based.

All forecast calculations run locally on the device. Personal financial records are not sent to OpenAI or to any external AI service, and the feature does not call the OpenAI API at runtime.

The forecast reuses the user’s existing account-specific local data and does not persist a second copy of the calculated result.

BudgetPro is not presented as completely offline because authentication and some existing application services use Firebase. However, the new financial forecast itself remains local.

How we built it

The Build Week implementation was completed with Codex using GPT-5.6.

First, Codex inspected the existing React Native and Expo architecture, including authentication, local storage, subscriptions, credits, currencies, navigation, translations, and backup compatibility.

We then created a non-destructive implementation plan designed to preserve all existing application behavior.

The forecast engine:

  1. Starts from the current balance already stored in the user’s money sources.
  2. Avoids applying income or expenses again when they are already reflected in that balance.
  3. Estimates remaining discretionary expenses from recorded activity.
  4. Includes unpaid subscriptions and credit obligations.
  5. Considers evidence of future recurring income.
  6. Produces both a primary and a conservative estimate.
  7. Generates health, risk, confidence, recommendations, and warnings.

Invalid, incomplete, duplicated, ambiguous, missing-reference, and future-dated records are handled defensively. Instead of silently corrupting the projection, the application surfaces translated warnings.

The user interface was built as a responsive financial dashboard with:

  • one-column layouts on narrow phones;
  • two-column metric layouts on wider screens;
  • live currency formatting;
  • locale-aware dates;
  • accessible controls;
  • expandable explanations;
  • translated loading and error states;
  • automatic reload when the screen gains focus;
  • manual recalculation;
  • protection against stale asynchronous results.

The feature was translated into eight languages: English, Romanian, French, German, Spanish, Italian, Portuguese, and Russian.

No external forecasting library, charting package, or runtime AI dependency was added.

Challenges we faced

The most important technical challenge was preventing double counting.

The current balance already includes recorded income and expenses, so simply adding and subtracting all transactions again would produce an incorrect forecast. The engine therefore distinguishes between historical activity already reflected in the balance and future obligations that still need to be considered.

Another challenge was working with real production data that may be incomplete or inconsistent. Subscriptions can have missing history, transactions may reference missing or duplicated money sources, and some records may be dated in the future. The engine had to remain useful without modifying or damaging the original data.

We also needed to preserve:

  • compatibility with existing accounts;
  • local backups and imports;
  • account-specific data separation;
  • the existing five-tab navigation;
  • all eight languages;
  • responsive behavior across different Android screen sizes.

Accomplishments that we are proud of

I am proud that the new feature was integrated into an existing published application without breaking its established workflows.

The implementation includes:

  • a deterministic local forecast engine;
  • an explainable primary and conservative projection;
  • financial health, risk, and confidence scoring;
  • defensive data-quality handling;
  • a polished responsive dashboard;
  • accessibility improvements;
  • complete translations for eight languages;
  • successful TypeScript validation;
  • ESLint validation with zero errors;
  • successful testing on a real Android device;
  • production release version 1.0.37.

The repository also includes the tag build-week-2026-baseline and the branch build-week-2026, allowing evaluators to clearly compare the application before and after the Build Week work.

What we learned

This project taught me that creating software is not only about writing code. It is also about understanding the user’s problem, defining clear rules, testing real behavior, protecting existing data, and improving the result through many careful iterations.

As a non-technical creator, I learned how to communicate product requirements precisely, review changes, run validation commands, inspect Git history, test on a real device, and publish an Android release.

Codex and GPT-5.6 made it possible to inspect a complex existing codebase, reason about financial-data flows, implement a scoped feature, and validate the result while keeping the process understandable and controlled.

What’s next

The next steps for BudgetPro include:

  • improving forecast accuracy as more historical data becomes available;
  • adding clearer month-to-month trend visualization;
  • expanding scenario planning;
  • refining recommendations;
  • continuing accessibility and localization improvements;
  • resolving remaining legacy lint warnings in separate safe maintenance work.

The Smart Financial Forecast is an informational budgeting estimate and not financial advice.

Built with

  • React Native
  • Expo
  • Expo Router
  • TypeScript
  • AsyncStorage
  • Firebase Authentication and existing Firebase services
  • React i18next
  • Codex
  • GPT-5.6
  • Android and Google Play

Built With

Share this project:

Updates