[Steemia] - Application Updates

in #utopian-io7 years ago (edited)

Steemia

Steemia is a social media application running over the Steem blockchain where creators and curators get paid for their effort of quality content. Steemia is aiming to be more than just a blog. Steemia is trying to be a Facebook-like application allowing its users to communicate easily through the application and the most important things, efficiently.

Changes Made

  • Modify the info of the package.json

Information with authors and description of the app was added to the package.json file

  • Sync all pages with the current logged in user

All pages were synced with the current logged in username so it can render the correct information instead of making another query in every single page

  • Update post when a vote is emitted

When an user vote/unvote a post, this post is updated with the new rewards, votes count, and comments counts just in case someone else has commented the post in this moment. This is done by querying again the data and updating the values of the post with the http request. Also, this is done easily because each post is a separated component which can be manipulated separately from the rest

  • Add vote button to comments and fix the style of big comments

Comments now have a vote button and its style was fixed for big comments coming out the screen. As the posts component, now the comment is a separated component to be able to execute actions in each one independently.

  • Unsubscribe listener after closing a page to avoid memory leak

In some pages, we subscribe events according to some states of the app. Those events were never unsubscribed when the page is destroyed. Now, they are destroyed to avoid memory leaks.

  • Independent provider for steemia and steem actions (partially done)

Steemia provider is used to replace the old steem provider used in the application. All the endpoints from Steemia are provided by Steepshot. Once all functions are migrated, the old steem provider will be deprecated and deleted. Also, a new provider was added to handle the broadcast actions in the blockchain. The idea of having two separated providers is to have an easy to maintain application.

  • Move constants to a single file

Constants were hanging out in a lot of files. Imagine needing to edit some endpoints in all these files? Now, we just moved all of them to a separated file and import them accordingly.

  • Fix lazyloading for most of the page and add priority of loading to them

Lazyloading of modules was fixed and now they have a priority order to load them making the app behave better

  • Move the comment template for an independent component

Comment is now an independent component with its own actions independently for the rest of the comments list.

  • Open pages without needing to close modals

Opening a page from a modal was not working correctly. They were opening behind the modal. As a workaround, the modal was closed before opening the page. Now, the pages are loaded in top of the modal keeping they both opened.

  • Fix aspect ratio of rounded images

Rounded images were having a bad aspect ratio when the image was not 1:1. Now, by using the object-fit: cover; property of css, these images are displayed correctly.

  • Util provider for repeated functions

Some of the common functions in the app were moved to an independent provider so they can be reused among the application.

  • Cleanup of some of the code

A lot of code was not being used. Even though these code are removed by tree shaking after compilation, it is better to always remove them manually.

  • Add indicators to determine whether there is not comments/posts (needs to be done for votes as well)

When an user opened the comments of a post, if the post does not have any comments, it showed nothing. Now, it shows an indicator telling the user that there is not any comment for this post. This was done as well for posts.

  • Remove unused files and imports

A lot of imports were not used and some of the files were not in used. All of them were removed.

  • Update dependencies

Lastly, dependencies from the application were updated to ensure the stability of the product.

Screenshots

Screen Shot 2018-02-26 at 6.29.47 PM.png
Screen Shot 2018-02-26 at 6.29.31 PM.png
Screen Shot 2018-02-26 at 6.28.57 PM.png
Screen Shot 2018-02-26 at 6.35.58 PM.png
Screen Shot 2018-02-26 at 6.36.10 PM.png

Roadmap

Feel free to check our working dashboard. Even though we do not have yet an estimated launching date, you can make a guess based on the work done in the dashboard Steemia Dashboard

Contributions

As always, contributors are most than welcome to this project. If you want to contribute, feel free to fork Steemia Repo and send us a pull request.



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

Congratulations! Your post has been selected as a daily Steemit truffle! It is listed on rank 24 of all contributions awarded today. You can find the TOP DAILY TRUFFLE PICKS HERE.

I upvoted your contribution because to my mind your post is at least 22 SBD worth and should receive 46 votes. It's now up to the lovely Steemit community to make this come true.

I am TrufflePig, an Artificial Intelligence Bot that helps minnows and content curators using Machine Learning. If you are curious how I select content, you can find an explanation here!

Have a nice day and sincerely yours,
trufflepig
TrufflePig

Thank you for the contribution. It has been approved.

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

Damn cool bro!!

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63630.04
ETH 2656.44
USDT 1.00
SBD 2.81