[Coinfolio] - Polished code, style, and performance

in #utopian-io8 years ago (edited)

Screen Shot 2018-01-27 at 1.02.25 AM.png

Coinfolio is a mobile app to track cryptocurrency prices. This app was having performance issues as well as mismatched colors in the UI.

Changes made


Before, this app use to load a big list of coins in the UI while using the search page. By loading all of these coins into the UI, the performance was poor because it was tracking all the items in the list. In addition, all images from the coins were downloaded in one shoot which is a waste of data. As a solution, I decided to create a new list with only the filtered items of the search to show them into the UI. By doing this, we can avoid loading all the images and all the data into the UI and thus, have a better performance.

In addition, when you add a new coin to your list and then click it again, it will not doing nothing. An expected behavior is to deselect this coin if you click it. So, I fixed it by checking the state of the coin with a simple if and else condition.

Also, when you click on the back button to go to the home page where you have all your save coins, you had to refresh the page in order to see the new one. This was fixed by creating a event that is fired when it is published before leaving the search page. When the event is fired, it basically refresh the list of coins with the new coin.

About page was added with information of the app and about the creator and the redefiner (me). And lastly, style of the app was fixed to match the desired design.

Screen Shot 2018-01-27 at 12.43.16 AM.png

Changes made (from a technical view)


  • Declare the homepage as an independent module for lazy loading
  • Fix css styles that were not matching the app
  • Add lazy loading for all pages
  • Fix some functions with the search and the API
  • Update the README
  • Create about page with information about the app
  • Production mode enabled to ensure performance
  • Avoid loading thousand of data in the UI for the search
  • Remove unnecessary, unused, and redundant code

How To Run


In order to run this application, you need to have NodeJs in your environment. Then, you can install the following dependencies globally:

$ sudo npm install -g cordova

$ sudo npm install -g ionic

Then, you can proceed and install & run the application by:

$ git clone https://github.com/hsynterkr/CoinFolio.git

$ cd CoinFolio

$ npm install

$ ionic serve -l

And a tab in your current default browser will open in the address http://127.0.0.1:8100.

Contributors


To contribute fork the CoinFolio repository and submit pull requests.

Github Proof


Screen Shot 2018-01-27 at 1.45.06 AM.png



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Hey @jaysermendez I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Thanks for the post. This would really make sense

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

thank you for passing it through

you made a new app ? ohh looks nice

I just redefined it! Thanks

Coin Marketplace

STEEM 0.04
TRX 0.33
JST 0.100
BTC 64206.40
ETH 1783.22
USDT 1.00
SBD 0.39