KURE Development Update 6 - View Content and Communities, Request to Join Communities, and Approve/Deny Requests

in #utopian-io2 years ago (edited)

Some important achievements to interactivity and UX were made this week. Viewing communities is now available, finally. Kinda hard to join a community if you can't see them, right? With that done, I got the actual joining of communities done as well ;)

Previously, joining a community was only possible through someone adding a user manually. Now, a user can request to join a community. Staff can then choose to Approve or Deny the request to join the community.

Also, viewing content from Steem can be done. Preciously, a post could be added from the post summary listing alone on the Kurate page, or manually with the URL. Now, you can click on the title of content and view it, then add the post to a community from there.

Some other data improvements were also done, such as showing the current number of Users and Join Requests in a community, as well as updating the data when you add, delete, approve or deny users.

I think it's time for the site to go up? What do you think?


Repository

https://github.com/KrNel/kure


Index

  1. What is KURE?
  2. New Features
    2.1 View Content from Steem
    2.2 Communities Page to View Communities
    2.3 User Send Request to Join a Community
    2.4 Community Staff can Approve or Deny a Request to Join
  3. Bug Fixes
    3.1 Home page not updating when going back to the page
  4. Other Changes/Improvements
    4.1 Users and Join Request info for Community listed
  5. Pull Request / Latest Commits
  6. Roadmap
  7. Contact

1. What is KURE?

Kindred United to Reward Everyone.

A Community Platform and Curation Network Remedy for Steem

Do you want to find content that other people really value? How?

Upvotes don't do it, because so many upvotes come from autovoting, autobots, or curation trails. You don't know if a vote for content is done by a real person, or some automation. The content isn't being evaluated when it's automated.

Imagine a curation network where people are interacted through community groups to share and value content, and you can really see what they value globally through various communities that people organize and collaborate together to build.

KURE provides a network hub for people to create their own community groups for evaluating content to curate. It will also develop into communities to create posts within.

Create your own communities and have others join to contribute. Make up your own criteria. Manage who can add curation links to your community group. Anyone else can follow your community and engage.

My goal is to make content easier for everyone to find by all of us sharing the content we like trough communities. Others can find communities they are interested in and see what is being curated within that community to also support it with upvotes, resteems and comments.

Maybe you want to share what you value, and get others to see it or support it, but don't want to resteem it, or want more people to see it. On KURE, the community you create and those who are involve din it will popularize content you value and allow others to see it. Another way of thinking about it, is it's kind of like having a custom community feed, based on a community that engages in creating it, rather than just one person.


2. New Features

Video Demonstration


2.1 View Content from Steem

Instead of just viewing the summary of content in a list format on the Kurate page, you can actually view the whole post now! Wo0ot!

Click on the title, and you will be brought to post page for viewing.

Visualized

The author, category and time are already in a component used for the post summary listings. So I just use that again and pass in the data I get from the Steem blockchain.

Then, I set the HTML of the content body of the post in question, and follow that by the post actions for upvoting, comments, resteeming and flagging.

Code Snippet

I had some trouble getting regular links to images to show up as an image. e.g. https://...jpg would just stay like that and not show the image. After messing around with some regex from the Steemit condenser code, I got it working ;)


2.2 Communities Page to View Communities

Another important part that was previously missing, was the ability to see what communities existed. For now, you can view the Newly Created and Recently Active communities. They display some data about each community, such as the number of Posts and Users, when it was Created, and who the Owner is.

Visualized

The Recently Active part has the options to join communities, which I will improve upon and add elsewhere later on. I just put it there only for now to get it working.


2.3 User Send Request to Join a Community

This is a big step towards interactivity between users on the site. With the communities visible, you can request to join them.

If you're not a member of a community, you can click on Join. It will then change to Requested. If you're already a member, you won't see any option to join.

Visualized

Depending on the user being logged in or not, and their access level, a different option appears.

If not logged in, you see Login to Join.
If logged in, and not joined, you see the option to Join.
If you pressed Join, you then see Requested as the status for the community.
If you joined the community, you see nothing ;)

Code Snippet

When requesting a join, the view gets updated, and the request gets sent to the database for the group members to know and see that a request has been made which needs to be approved or denied.


2.4 Community Staff can Approve or Deny a Request to Join

In the Manage section, there is now a Join Requests section above the Members list:

You can see the User who requested to join the community, When they requested to join, and the actions to Approve or Deny the request to join.

Visualized

As a staff member, you can choose to Approve or Deny a request to join a community you own or manage. When you click either, a loader spinner shows up to lock out the table row, and stops once the database update has been completed.

Code Snippet


3. Bug Fixes


3.1 Home page not updating when going back to the page

Something was not working right when going back to the Home page after visiting another page and having already been there. For example, click on Home, then on Manage, then back on Home. Home wasn't fetching new data. So when a new post or user was added, clicking on Home would simply show the old data.

I finally figured out the issue, and it was some code I used to originally build the Redux part of the site. I used Redux on the home page data fetching only (in addition to the authentication). Once I removed the if() check to not update the data, the data was getting updated each time the page was visited. That way, any new data added, like a new user or post, would now be seen.


4. Other Changes/Improvements


4.1 Users and Join Request info for Community listed

Some minor changes, but important for the UX (user experience), are some stats for the communities you can see in the Manage page.

In addition to Posts, the Users and Join Requests are now visible. They will update on-the-fly when you manually add/delete a user, or when approving or denying a user who has requested to join.

Visualized

When the user is approved or rejected, the onUserUpdate function gets called to increment or decrement the User count for the community info being displayed. The state gets updated and re-renders the page with the new correct info.

Code Snippet


5. Pull Request / Latest Commits

I forgot to merge the PR #3, so the previous commits from this week were added to PR #3 and merged. You can view them below. A small PR has been issued this week.

Misplaced commits in PR #3:

These were meant for PR #4, but I forgot to merge PR #3 and kept committing the new code there...

New PR #4


6. Roadmap

I got the Communities page and Post viewing done from the previous roadmap. I also went for the Join Requests that wasn't included in the past weeks' work roadmap, but was a good thing to get done sooner ;)

Coming up:

  • More work on the Communities page
  • Liking and rating submissions
  • Upvoting
  • Posting content to Steem (not just curation post submissions)
  • Posting comments
  • Posts submitted page
  • Infinite scroll

You can see the longer roadmap in a previous post.


7. Contact

If you want to contact me, you can reach me on Discord at https://discord.gg/ApUp4jJ, or email at [email protected]. I'm not really on steem.chat, but I think I get emails if you send me a message.


Thank you for your time, attention and support! I appreciate it!

Peace.

Sort:  
  • Great post with lots of images, code samples and an awesome video.
  • The commits and PR comments are awesome. Very clear and informative.
  • Lots of comments in the code and a lot of code improvements for the project.
  • Great advancement for the project and the communities concept.

Your contribution has been evaluated according to Utopian policies and guidelines, as well as a predefined set of questions pertaining to the category.

To view those questions and the relevant answers related to your post, click here.


Need help? Chat with us on Discord.

[utopian-moderator]

Thanks for the review! Glad to have nailed all the areas with this development ;)

Thank you for your review, @helo! Keep up the good work!

I'm a bit unsure as to how useful this can be without actually being able to vote. Did I misunderstand that feature was not yet available? Otherwise I am very impressed, and looking forward to seeing how this baby rolls.

Thanks!

Em yea its time for the site to go live 😁

Posted using Partiko Android

Hehe, yup, thx, on the way, setting up this weekend ;)

Great, feel free to ping me in the announcement post

Posted using Partiko Android

For the technologically semi-literate...and the too-busy-to-research-it-all types:

How do I get in on this?

I'm setting up the site this weekend (hopefully get it done), I'll let you know once it's up ;)

Sweet! Thanks, k!

That looks amazing! Can't wait to give it a try.

On it's way ;)

Hi @krnel!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 7.359 which ranks you at #62 across all Steem accounts.
Your rank has not changed in the last three days.

In our last Algorithmic Curation Round, consisting of 226 contributions, your post is ranked at #9.

Evaluation of your UA score:
  • Your follower network is great!
  • The readers appreciate your great work!
  • Great user engagement! You rock!

Feel free to join our @steem-ua Discord server

Congratulations! Your post has been selected as a daily Steemit truffle! It is listed on rank 8 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 13 SBD worth and should receive 173 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

Hey, @krnel!

Thanks for contributing on Utopian.
Congratulations! Your contribution was Staff Picked to receive a maximum vote for the development category on Utopian for being of significant value to the project and the open source community.

We’re already looking forward to your next contribution!

Get higher incentives and support Utopian.io!
Simply set @utopian.pay as a 5% (or higher) payout beneficiary on your contribution post (via SteemPlus or Steeditor).

Want to chat? Join us on Discord https://discord.gg/h52nFrV.

Vote for Utopian Witness!

This post has been included in the latest edition of SoS Daily News - a digest of all you need to know about the State of Steem.