Challenge Overview
Challenge Objectives
-
Update the Community App to show user statistics based on the groups that the member belongs to.
Technology Stack
-
Node.js
-
JavaScript
Code Access
Repo: https://github.com/topcoder-platform/community-app
Branch: feature-group-stats
Repo: https://github.com/topcoder-platform/topcoder-react-lib
Branch: feature-group-stats
Individual requirements
As part of this challenge, you need to make the user profile page as well as the member’s statistics page(s) available under the subdomain of private communities.
We want what we currently have for our public profile page, but it needs to load the private statistics when the page is loaded within a private community, for example, topgear.topcoder.com/members/mtwomey would be the exact same profile page we have at www.topcoder.com/members/mtwomey except the TopGear page would only show TopGear statistics.
You need to reuse the existing components with the public member profile page and you should simply populate all fields with the filtered data (data from the private community).
For example, the page https://topgear.topcoder.com/members/vi313031 should load the member profile and should show statistics from TopGear challenges.
Currently, the site neither loads the profile page or pulls the private stats.
To fetch the member’s statistics for a private community, you need to pass the comma-separated group IDs from the private community in the groupIds query parameter when calling the following endpoints:
-
/members/{handle}/stats/history - Right now, the API doesn’t support this query param on this endpoint but you need to implement this on the frontend so it will work once we add the support for it on the backend.
-
/members/{handle}/stats
Make sure you don’t break any existing functionality and all existing tests pass.
Should you have any doubts, do not hesitate to ask for clarifications in the challenge forum!
Submission deliverables
- Submit a git patch for the latest commit in the mentioned branch of each repo.
- Make sure to mention the exact commit so we can apply your patch file(s).