Coder Social home page Coder Social logo

aydenp / bank Goto Github PK

View Code? Open in Web Editor NEW
98.0 7.0 23.0 15.66 MB

A simple iOS app for viewing your bank account balance and transactions.

License: MIT License

Swift 98.82% Ruby 0.59% Objective-C 0.59%
ios banking ios-app app uikit swift plaid plaid-api bank finances

bank's People

Contributors

aydenp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

bank's Issues

Get rid of singleton SessionDataStorage

Currently, the app is very reliant on SessionDataStorage. This is a huge fault as I try to move everything to a separate framework, BankKit, as it doesn't seem right for the framework to be housing this data in a singleton. Rather, the manager should find a way to create individual sessions, which can store a Plaid item container, which will perform similarly to how SessionDataStorage does right now, except tied to a given Item. This would require a substantial rewrite.

Eventually, when we want to add multiple bank logins per app, it'll also come in handy, as it doesn't make sense to have one for all.

Allow showing balance at a certain time

By tapping on the line chart, you should be able to view the balance for a certain date. The balance label should change to that, the transactions view should fade out a bit, and the date should appear above the label. You should be able to escape this view by tapping outside of the chart.

Doesn't Load

I have Plaid API and everything but can I run this for sandbox, and also how do i put the plaid.example.plist file into plaid.plist? I keep encountering this error and that is why the code doesn't run.

Have page control move between pages

Since every page has its own page control, it looks kinda bad when scrolling. If both pages are at the top, it should move from one page to the other as the user scrolls.

About transaction location

When I run the app in swift, all the functions are working. But the location including (address, city, zip code, etc.) show the value is null. I wonder if there is no location data or I did wrong.

Allow changing of chart view

Currently the line chart only shows 30 days back. It should support increments of 1 week, 2 weeks, 1 month, 3 months, 6 months, 1 year, and all transactions ever.

Apple Watch app

Apple Watch app with recent transactions and balance for all accounts

Disable swiping horizontally if user only has one account

To support more than one account, the app lets you swipe horizontally to see your other accounts. This swipe gesture still works if there is only one account, and just seems weird having the elastic scroll without any other view controllers, so we should find a way to disable it when there is only one account there.

Fix status bar

Currently, when you scroll down, content goes right under the status bar. In the future, this shouldn't happen.

Ideally, the status bar will have a view underneath it with the same background gradient the transaction view has, and a hairline that appears as soon as content goes underneath it.

Speed up transaction history generator

The transaction line chart data generator can probably be sped up by only getting the balance on days before, of, and after transactions take place, rather than every single day.

Invalid Call to "institutions/get" & Deprecation of Public_Key

Two issues were discovered when testing that prohibit the use of the app beyond the 'Link your Bank Account' button.

Issue 1 - After inputting API Keys I received an error message in the debug window advising me of missing parameters, specifically the inclusion of "country_codes". Looking at the API documentation and code I pinpointed it to you "institutions/get" call in the PeriodicFetchDataStorage Class -> public let institutions variable. This seems to be missing an array of country_codes. To fix this issue I just added "country_codes": ["US"] to string. Code attached.

PeriodicFetchDataStorage (updated).txt

Issue 2 - After fixing the above issue I came across another related to the use of the public key. Tracing it to your PlaidManager class it seems the use of PublicKey is no longer supported by Plaid and has since been depreciated. The API now uses Public_Token. Unable to pinpoint fix for this.

Add transaction view controller

We have a lot of information on transactions that occur, but show so little of it in the table. Add a transaction view controller accessed by tapping on a transaction to show all the information we have.

Move page control

Currently the page control is at the bottom of the screen. It would probably look better underneath the balance label, and fix the layout issues causing it to appear under the notch.

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.