Giter VIP home page Giter VIP logo

spent's People

Contributors

ulternate avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

spent's Issues

Add tests.

Add tests to test functionality of all components.

Save custom categories in the settings.

Needs the following:

  • The app settings set up
  • The original categories in the settings and editable (i.e can rename or remove).
  • Option to add more categories manually in settings.
  • Any categories added manually shows in the list too (i.e. adding a choice in the DetailActivity should make it show in the settings list.

Add location to transaction detail view.

When the notification is captured by the listener, record the location and save in the database.

Needs:

  • Notification preference(s) (maybe only use course location, less battery usage).
  • Update to the database to store location of notification.
  • Update DetailActivity to show the location of the transaction. (need to change detail activity to be scrollable).

Not sure if this field should be editable.

Add budget/breakdown activity

Add an activity to show the breakdown of spending by category.

i.e:

  • Show pie chart of the money spend from each category.
  • List the total amount for each category.
  • Enable filtering by date range, or preset dates (i.e. 1 week, 1 month, ....)
  • Maybe when a user clicks a category in the breakdown it takes back to the main view with only that category filtered (within any date range chosen).

Add first launch activity...

... or, add instructions to the main activity if the user has no transactions and the service isn't enabled.

  • Service isn't enabled: show helper view detailing what the application does, maybe add an introduction flow.
  • Service is enabled, but no transactions, show helper like "No transactions recorded, check back soon after using a supported payment application" <- Maybe have a list or link to view the supported apps, or use their icons (if allowed).

Add columns to Transaction database.

Add columns to the database for the Transaction entity as follows:

  1. Original merchant/description.

    This will enable the user to edit the description using the description field, whilst saving the
    merchant/description that was captured by the Notification Listener, potentially enabling us to
    match transactions that come in and auto categorise them.

    Currently, if the user edits the description (say EB SWANSTON = 8Bit) then any future
    payments there will come from EB SWANSTON and won't be able to be categorised.

  2. Payment application.
    So they can know how the payment was recorded, maybe add logos or more info to the detail screen, or even the ability to filter by those transactions.

Remove default application categories.

Issue #15 should add a column that records who gave the notification (i.e. Android Pay, PayPal...).

This shouldn't be the category unless the user adds it manually. Once Issue #15 is done, then remove these categories.

Add option to attempt to automatically categorise a transaction.

This would require something like issue #15 being completed, but add a preference, defaulting to Yes or On like "Attempt to automatically categorise matched transactions".

If the user has a few transactions, like the example below, then this would try and automatically categorise them.

id original description updated description category
1 EB SWANSTON 8Bit Burgers Meals
2 EB SWANSTON 8Bit Meals
3 EB SWANSTON 8Bit Burgers Entertainment

In the above example, if a new transaction came in as "EB SWANSTON" it would match as "Meals" as that has the most under that category.

In the event of a tie, probably best to either leave it as is, or use most recent. Probably leave it as is.

Add activity to edit categories

Chosen by settings menu.

  • Any edited category will need to update any Transactions that used the old version.
  • Any deleted category should set all previous Transactions to Unknown

Add database backup

Initially using either the inbuilt google play backup mechanism or via google drive.

  • Should back up any application settings
  • The database.

Improve date/time pickers

If there is a date/time already chosen, then select that in the picker, not the current date/time.

Restrict Maps API key

Use the Google API Console to restrict the API usage only to apps signed by the signing key.

Add filter functionality.

Add the ability to filter the transactions list.

Filter options on the transactions list should mainly be by category, but date range would be handy too.

Design app icon

Make the icon adaptive, to better support the newer versions of Android.

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.