Giter VIP home page Giter VIP logo

openbudget's Issues

Roadmap

v0.1

Budget

  • Create Budget
  • Set Budget Currency
  • Set Budget Currency Number Format
  • Budget Currency Format is used in WPF Application

Accounts

  • Add an account w/ Initial Balance
  • Set Account Type
  • Set Budgeting Type (On-Budget/Off-Budget)
  • Can reconcile an account

Transactions

  • Add a transaction
  • Edit a transaction
  • Delete a transaction
  • Transaction can be a Transfer
  • Updating Amount of Transfer updates both sides of the Transfer
  • Transaction Category can be set
  • Split Transactions Supported(in view and edit mode)
  • Sub Transaction Transfer
  • Transaction state (cleared/uncleared)
  • Transaction validation is visible when transaction is in an error state

Categories

  • Can add a Category to a Master Category
  • Can add a MasterCategory to the budget
  • Can reorder MasterCategories and Categories
  • Can add/update a note on a Category
  • Can rename a Master Category
  • Can rename a Category

Budget View

  • Virtualized Budget View(all BudgetViewMonths "exist" but arent materialized until needed for display.
  • Can updated Budgeted amount on CategoryMonth which triggers a recalculation
  • Master Category summary row
  • Right arrow red(transfer category balance to next month) on CategoryMonth
  • Add/update a note on CategoryMonth
  • Budget Month header
  • Proper formatting/colors on BudgetView rows and month headers
  • Drag and Drop on BudgetView can scroll the view
  • Master Category Expander

Storage Format

  • Have a basic cross-platform SQLite storage format for the budget
  • Have an in-memory BudgetStore to be the reference implementation of IBudgetStore and for testing purposes
  • Standard EventStream serialization format
  • Implement IBudgetViewCache extension for SQLite budget store that does most of the calculation and grouping in SQL

v0.2

  • Transaction virtualization at data level(stream from the database rather than load an entire account into memory)
  • Configurable sort order on Transaction grid
  • Storage optimization - new VectorClock binary format
  • Storage optimization - Event data compression using a predetermined deflate dictionary
  • Implement event sorting for synchronization in SQLite
  • Optimize BudgetViewCalculator to do partial re-calculation rather than a full calculation when possible
  • File directory synchronization
  • YNAB4 Import

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.