Skip to content

Early-stage AI-driven budgeting and event-sourcing solution built on .NET, SignalR, and Google Drive. Integrates Semantic Kernel for voice/text command processing.

License

Notifications You must be signed in to change notification settings

pavel-zhur/Economy

Repository files navigation

Economy Web App

This project is still in its early stages.

Functional Overview

This application provides a layered financial architecture (transactional, planning, and analytical) for tracking income/expenses, setting budgets, and forecasting. Drawing on best practices like zero-based budgeting and the envelope method, it offers clear data flows and auditing. By integrating accounting logic, the system supports accurate transaction recording and plan management, while also enabling advanced scenario simulations and goal tracking.

Overview

This repository contains a web application that uses event sourcing for data storage and synchronization. All data is kept exclusively on each user's Google Drive, ensuring privacy and user ownership of information. The interface is intentionally read-only, while all create/update/delete operations happen through AI-driven voice or text commands.

Architecture

  • Event Sourcing: Instead of directly updating data in conventional databases, every state change is recorded as an event. This allows for an audit log of all changes over time and supports powerful replay capabilities.
  • Google Drive Storage: User data is saved in each individual's Google Drive under an app folder. This removes the need for a central database, letting users personally control their data.
  • Read-only GUI: The UI only displays data, so no direct edit forms exist. To modify records, users talk or chat with the AI, which interprets commands.
  • Domain Agnostic: Although the domain focuses on budgeting and financial features, the codebase is structured so it can handle any entity definition. Budgeting is simply one example within specialized libraries and front-end parts.
  • Voice/Text-based Updates: The application automatically sends changes to the AI from user messages (voice or text). Voice input is transcribed and interpreted, then corresponding domain events are generated.
  • Extensibility for Future Views: Plans include letting the AI dynamically produce and update the front-end views. This could enable on-the-fly generation of dashboards or analytics charts.
  • Telegram Chat Integration: Future expansions will allow users to manage data via Telegram chats, using the same AI handling logic seen in the web app.

Technical Details

This solution leverages .NET (ASP.NET Core) on the backend and SignalR for real-time interactions. Most of the code is generated by AI, reflecting an experimental approach to building layered data features and event sourcing logic. The Semantic Kernel library processes AI commands, interpreting user requests to create or update domain entities. Each layer (transactional, planning, and analytical) ensures data is properly isolated, traceable, and consistent across events, while the AI routines handle voice/text commands for creating or modifying application state. Since this is an early-stage experiment, design decisions and generated code are actively evolving based on feedback and further AI suggestions.

Purpose for End Users

  1. Full Ownership of Data: You hold your financial and personal records in your Google Drive—no external service stores it.
  2. Simplicity: The interface shows a clean, read-only list or chart of information. Inserting new transactions, budgets, or custom items is as easy as sending the AI a message.
  3. Privacy: Because event and state information live only on Google Drive, you’re in total control of access.
  4. Guided by AI: You can request help via voice or text, and the AI can create or modify records under the hood.

Use Cases

  • Budgeting & Expense Tracking
    Record planned and actual spending, incomes, or transfers. Voice commands like “Add a $100 grocery expense” instruct the AI to generate and store the event.
  • Goal Planning
    Keep track of progress on savings or business goals. The app visually presents your current status, while the AI helps you plan new milestones.
  • What-If Scenarios
    Explore future transactions or changes in recurring income using AI-driven simulations, enabling you to forecast and adjust your plans.

Getting Started

  1. Authentication Setup: Provide Google Drive API credentials so the app can write to your personal Drive.
  2. Configure AI Keys: Ensure the AI service is set up for transcribing audio and text completion.
  3. Run Locally: Launch the web application, sign in with Google, and let the AI handle your spoken or written commands.

Future Plans

  • Dynamic View Generation: Let AI build custom UI layouts for each user’s scenario.
  • Telegram Chatbot: Send messages or audio clips on Telegram to update your data, with the app reflecting new changes in real time.
  • Additional Domains: Broaden into more areas—ticket management, tasks, or inventory—using the same event sourcing model and AI-based interface.

Additional Data Views

This application supports flexible visualizations for budgeting, event tracking, and forecast scenarios. Below are some commonly requested perspectives.

User Views

  • Planned expenses and distribution of real funds over time.
  • Future distributions, showing predictions vs. real data and minimal safety thresholds.
  • Tracking how prior and upcoming incomes are allocated across budgets and categories.
  • Synchronizing wallet balances from real transactions (audits) with system predictions.
  • Visualizing delays between when funds arrive and when they are actually spent.
  • Monitoring negative balances and unlinked transactions that require action.
  • Goals progress tracking and “what if” scenario modeling to compare planned vs. actual finances.
  • Calendar-based view for large events, irregular incomes, or one-time expenses.
  • Annual forecasts assuming no changes vs. with major changes (e.g., new income streams).
  • Identifying overly optimistic plans and suggesting realistic adjustments.

Detailed Visualization Features

Building on the “User Views” already listed, several additional front-end features are planned, drawing from both approved and future-view ideas:

  • Highlighting irregular incomes and large, one-off expenses on a timeline view.
  • Displaying deviation logs between budgeted and actual data so users can adjust their plans.
  • Simulating year-long outcomes by comparing a current lifestyle forecast versus an updated scenario with changed income or expenses.
  • Providing an “unrealistic plan” alert where spending or saving goals don’t match historical patterns.
  • Creating strong visual cues (e.g., calendars, progress bars, and trend graphs) to guide day-to-day financial decisions.

Contributing

Contributions and ideas for new features are welcome. The entire system can be extended for custom entities and new front-end solutions.

About

Early-stage AI-driven budgeting and event-sourcing solution built on .NET, SignalR, and Google Drive. Integrates Semantic Kernel for voice/text command processing.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published