balance-io / balance-open Goto Github PK
View Code? Open in Web Editor NEWBalance Open: A GPL3-licensed macOS menu bar app for all the world’s currencies.
Home Page: https://balance.io
License: GNU General Public License v3.0
Balance Open: A GPL3-licensed macOS menu bar app for all the world’s currencies.
Home Page: https://balance.io
License: GNU General Public License v3.0
I'm not familiar with the API to I'll leave the details to @wolffan. This issue is to track whatever is needed to complete an authentication on the client side. An authenticate function in the PoloniexApi struct, plus whatever else is needed.
Problem
The balance in Balance does not reflect the balance in Coinbase. This is likely due to the one-an-hour rolling of keys.
Steps to recreate
I am not sure of the best way to get the app to do this again because when I refresh my keys the balance will be updated.
Attachments
My logs are attached:
balance-open-not-updating-coinbase-logs.zip
right now it shows the total value of holdings for a currency but not the current price of 1 unit of the currency itself which would be handy
Look at PlaidAccount for an example, I've already added checkType functions to Utils.swift.
Create whatever functions are necessary in the subscription server to complete the authentication process using our API key. Basically converting temp tokens to client usable tokens.
Tokens powered by the Ethereum Request for Comment (ERC20) specification are becoming very popular.
I am increasingly concerned about the phishing attacks people are falling victim to at MyEtherWallet.com. It seems that lots of people are losing money when they are tricked into visiting websites that look similar to the open source, Chrome-based wallet.
I think people would be much less likely to fall for a phishing attack if they had to go to a separate application on their Mac to manage their tokens.
Here is the summary of my research into the area so far:
https://theethereum.wiki/w/index.php/ERC20_Wallet_Support
https://ethereum.stackexchange.com/questions/9054/are-there-ethereum-wallets-other-that-mist-that-provide-support-for-test-netwo
https://www.reddit.com/r/ethereum/comments/669dmp/best_wallets_for_erc20_tokens/
https://ethereum.stackexchange.com/questions/15806/where-is-the-erc-20-token-code?newreg=bcb0e4522a1e476398d8b842a1aa584e
https://github.com/ConsenSys/Tokens
I would like to better understand what’s involved in building native support for tokens into Balance Open.
Danger is an amazing tool for open source projects. It automates a shit ton of the boring part of reviewing PRs.
I used it on past projects including Awesome iOS
Summary:
When you have only one currency visible, Balance looks a bit wacky.
Steps to Reproduce:
Open preferences, go to Accounts, and show only one currency.
Return to the main view and observe
Expected Results:
The minimum window height should be that to perfectly accommodate one cell.
Notes:
The minimum height seems to be fairly arbitrary right now. It's too short to perfectly accommodate two cells, and too tall for one!
The code in their now is for PlaidApi. It will need to be modified to work with the new sources' Api structs.
Balanced Software, Inc. and Balanced Software, Ltd. is holding a basket of digital assets, cryptographic currencies, and magical Ethereum Request for Comment Number 20 tokens (ERC20).
We need to have a separate interface for businesses to view, manage and interact with these digital assets.
We need to understand the tax implications of each investment and the legal reporting requirements.
Look at PlaidAccount for an example, I've already added checkType functions to Utils.swift.
This issue is to track whatever is needed to complete an authentication on the client side. An authenticate function in the CoinbaseApi struct, plus whatever else is needed.
Also other tweaks.
Tide seem like a really cool company. Business banking done right. Would be great to see account balances and transactions in Balance.
Tide seem like a really cool company. Business banking done right. Would be great to see account balances and transactions in Balance.
Since we're not in the app store we can use the simple method for this at least for first release.
Integrate the GDAX (https://www.gdax.com/) API (https://docs.gdax.com/) in Balance Open.
Probably just contains authenticate() or login() and something like getAccounts() or similar. Will leave the details to @wolffan.
Probably just contains authenticate() or login() and something like getAccounts() or similar.
Bittrex is an increasingly popular exchange. They have an API. It would be great to investigate what they are doing.
Need institution headers for the 4 supported exchanges
Right now we store account balances and transaction amounts in cents. That works for USD and other 2 decimal currencies, but doesn't work for things like bitcoin which have an indeterminate amount of decimal places. Also we make assumptions in the code when we do things like sorting by price that will need to take currencies into account.
For now, we don't need to figure everything out, since we aren't showing transactions yet, we just need a currency agnostic way to store the values for accounts that are still easily queryable.
Similar to processPlaidAccounts at the end of PlaidApi.swift in the main bal repo.
Summary:
When you have deselected all currencies in the Preferences, Balance looks very empty. :(
Steps to Reproduce:
Open Preferences, go to Accounts, and deselect everything!
Expected Results:
Perhaps there could be some placeholder text or a button to tell you that you need to enable some currencies.
Notes:
Extreme edge case, but the details make the app.
Melonport is ”Blockchain Software for Asset Management”
After meeting with @thehighfiveghost and seeing him present the concepts behind Melonport, I am really excited about the project. They are going to move asset management onto the blockchain. I want to have a fully decentralised fund that tracks the overall value of the blockchain economy as soon as possible.
It would be amazing if people could track their Melonport funds from within Balance. Eventually we could even support the creation of funds right within Balance. I have spent a little time trying to set up a fund and the process is being worked on. Here is my feedback on the onboarding experience: https://github.com/melonproject/portal/issues/303
Here was my initial research:
https://melonport.com/
https://github.com/thehighfiveghost
https://twitter.com/ricburton/status/882671702731313156
https://github.com/melonproject/portal
The app is Awesome, but we need to work on the README.md
.
First thing I tried to do was to run the command line, but that didn't work 😞
Then I had to go to 3 different websites to try to install sqlcipher. I installed it, but no luck on getting that command line to work. Then I opened the BalanceOpen.xcodeproj
and pressed the "Build and Run" button 🤘
We need a tutorial on the README page, teaching the user go from git clone
to opening the app on the menu bar.
Besides installation, the README.md
also lacks other information. I created a README template to help it out
We want Balance to be able to help people with poor eyesight to stay on top of their finances. We have made some moves in this direction but there is so much further to go.
I would love to be able to quickly send people money through the Coinbase email functionality.
Summary:
When the macOS preference for scrollbars is set to 'Always', improve the look for the window
Steps to Reproduce:
Go to System Preferences > General
and set the scrollbar preference to Always
Launch Balance and have at least two currencies visible.
Actual Results:
The width of the window increases to accommodate the scrollbar gutter. Due to the colour of the cells, this is somewhat noticeable.
Expected Results:
This is a tricky one... It wouldn't be worth creating a custom scrollview where you could implement your own scrollbar ultimately. Perhaps the colour of the cells could change to have less of a contrast
Notes:
On the whole, it's low priority. I'm filing this because I have the scrollbar preference on to catch out edge cases like this 😎
Right now we're using the BofA draw function as a placeholder, but we need draw functions for the 4 initially supported exchanges.
eg:
#if os(iOS) || os(tvOS)
import UIKit
typealias NSLayoutRelationGeneric = NSLayoutRelation
typealias NSLayoutAttributeGeneric = NSLayoutAttribute
#else
import AppKit
typealias NSLayoutRelationGeneric = NSLayoutConstraint.Relation
typealias NSLayoutAttributeGeneric = NSLayoutConstraint.Attribute
#endif
Example the SnapKit PR
Create whatever functions are necessary in the subscription server to complete the authentication process using our API key.
ShapeShift partners with lots of people to create an exchange for digital assets. I just listened to it's founder, Eric Voorhees, speak on this podcast.
Epicenter – Podcast on Blockchain, Ethereum, Bitcoin and Distributed Technologies: #190 Erik Voorhees: Prism – The World’s First Portfolio Market Platform
https://overcast.fm/+BuoRJjmOE
I want to dive into their technology more.
Swiftlint is an amazing tool to help us write better code. It has a really big amount of extra rules that add warnings and errors to the project if you're not following the swift guidelines.
Examples:
force unwrap, variables starting with uppercased letter, legacy constructor (Using CGRect make instead of CGRect(x:, y:. width:, height:)
Implementing it will be a big task because we currently have 999+ warnings and 704 errors, so we'd have to push smaller fixes at a time
In order to make Balance more approachable, and to enhance the experience, you should consider localising the app. It's better to start thinking about this earlier, rather than later.
To get started with this right now, I guess the first thing would be to move all text into a localizable.strings
file.
That way, all in-app copy is contained with that one file, and people will then be able to easily edit that if they were to add their own translations to the app.
Something to avoid when considering this would be text in images.
This is returned directly by the Coinbase API. For the others later, we'll get their current price and calculate.
Summary:
When the full keyboard access Preference is on, a double selection ring will appear around the Coinbase button.
Steps to Reproduce:
Go to System Preferences > Keyboard > Shortcuts
and turn this option on:
Launch Balance (before you have signed in)
Expected Results:
For there to be a single focus ring around the button.
Notes:
I suspect this is down to the difference in button sizes between normal and hover - macOS is drawing both, or possibly there's a wider click target than the button which is why it's not flush with the button edges
It is too tall
Similar to processPlaidAccounts at the end of PlaidApi.swift in the main bal repo.
Problem Description
When you add a new account with Coinbase the app syncs that Account with Balance and when you keep repeating "Add new account" with the same Coinbase account the app creates more Coinbase account instances of an account that already exists.
Suggestion For Solution
I have not really researched how you get all the information from the Coinbase account, however, if you could get an account ID from there and sync that with the account in Balance you could prevent creating another instance of that account if it already exists in the system.
Here is a screenshot of the multiple accounts (same Coinbase account)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.