Getting users to actively participate in community groups is often a struggle for new communities. Most community groups only have a few members that contribute, while the rest of the members are only spectators. Some members might have useful information that can be helpful to others, but they might not think of sharing that information in the group. For example, a member in a community of ReactJS developers might have discovered a great CSS library that works very well with ReactJS, or a member might have found a really helpful tutorial for beginners on YouTube, but that member might not even think about sharing that information in the community group. Some members might just be too lazy to share information with the group, other members might have even forgotten that the group exists. As a result, you have a group with only a few members contributing, while the rest stay completely unengaged.
To combat this problem I built Group Points, a web application that uses gamification, to help boost community engagement in Facebook groups, by rewarding group members with points for sharing information or content that is helpful and relevant to the community. The app uses leaderboards to display the most engaged users in a group and to encourage meaningful competition amongst the group members. The main goal of Group Points is to motivate group members to contribute more to their communities and transform that engagement into points and rewards. This would bring community group members together within the group as they share knowledge with each other.
Group Points was inspired by tools like StackOverflow that use gamification to reward users with points and badges for answering questions, and I think this concept can also be applied to community groups on Facebook, this would encourage group members to be more engaged and it would bring community group members together within the group as they share knowledge with each other.
What it does
Group Points is a tool is aimed towards community groups that have little to no engagement, it allows group admins to reward members with points for sharing information or content that is helpful and relevant to the community. Group Points uses leaderboards to rank group members by the number of points they have earned, the leaderboard is there to showcase how members are performing against each other and to challenge members to get ahead of each other by simply contributing to the Facebook group, this will encourage group members to contribute more, therefore, increasing community engagement.
Admin's Role: A group admin will have to log in to Group Points with Facebook, once logged in the admin will be able to see all the groups they manage and they can choose which groups they would like to add to Group Points. The group admins will have to keep an eye on the Facebook group to spot members who are posting content that is helpful and relevant to the community.
Members Role: Members will have to join the group on Group Points via an invite link shared by the group admin, members will use Facebook to login to Group Points, once logged in members will be able to see the points they have earned and the leaderboard.
Rewarding Points: When a group admin sees a post that deserves points, the admin will have to do the following to reward the member:
- Copy the link address of the member's post
- Select the member on Group Points
- Paste the link address and save
A member must be rewarded points for each deserving contribution, if the admin wants to give points to a member who has not yet joined Group Points, the admin will have to send that member an invite link to join. The app does not allow group admins to earn points only members can earn points. The admin will reward points to members based on how helpful and relevant the contribution is to the community, the admin has to pick from 3 options when rating the contribution:
- Good is 10 points
- Great is 30 points
- Excellent is 50 points
Admins can also choose to reward members with valuable prizes depending on the number of points they have earned, for example, the admin can reward a member with an iTunes gift card if they manage to get 500 points, that would increase the motivation for members to contribute to the community group even more.
How I built it
The frontend of Group Points was built using React, for the database and web hosting Firebase was used. For user authentication Facebook Login was used this was the best option because Group Points is mainly targeted towards Facebook users who are part of community groups, Facebook login also allows Group Points to get facebook group information using the Graph API with the "groups_access_member_info" permission. A CSS framework called Bulma was used to style the web application
Challenges I ran into
One challenge I ran into was closed down Facebook APIs, the original plan was to import all the group member information from the Facebook group to Group Points but since Facebook closed down some API endpoints that was not possible, so instead I decided to let the group moderators invite their members to join Group Points with an invitation link. Another problem was that the Graph API permission used to get user-managed groups was removed during development but that problem was solved by using the "groups_access_member_info" permission, which allows Group Points to get a user's public groups information.
Accomplishments that I'm proud of
The accomplishment that I'm proud of is that I was able to create this tool that will be very useful to many Facebook community groups struggling with member inactivity and bring back to life all the dead community groups. And despite having to deal with deprecated APIs I still found an alternative solution.
What I learned
While building Group Points we learned a lot about using React Js and also all the options that the Facebook Graph API provides and I also learned about the concepts of gamification, in applying game-design elements and game principles in non-game contexts and in turn using that knowledge to create meaningful competition in facebook groups to enhance engagement.
What's next for Group Points
Seeing that rewarding a lot of group members can get very tedious I plan to use A.I to help group admins find posts that are helpful and relevant to the community, this would save the admin a lot of work in large groups. Another addition to make the group moderators job a lot easier is to create a browser extension or a messenger bot that allows group moderators to easily reward their members without having to open another tab to go to Group Points. Currently, only one admin can reward members, in future updates, there will be support for multiple admins. Lastly, I plan to add a way to notify members via messenger when they get rewarded.
- Only public and closed groups can be added to group points
- Facebook groups can only be added to Group Points by moderators