Challenge Overview
We develop a new effective and scalable solution for management of Topcoder communities, dedicated to specific clients / projects / technologies. Think about existing Cognitive, iOS, and Predix communities. We aim to create a new ReactJS front-end for such mini-sites.
Warning: All code related to challenge listing was recently ported from another repository, and does not yet follow our standards for using Redux and unit-testing. Don't take it as an example!
2. Default appearance of the leaderboard should be similar to https://tco17.topcoder.com/development/leaderboard/. No need to copy it pixel-perfect, but it should display similar data in the same clean way.
3. Mocked data for the leaderboard should be fetched from http://www.mocky.io/v2/59077a3a1000008f139bd811, stored into Redux state, and then used for rendering of the leaderboard. As of now, these mock data are missing URLs for user avatar pictures. Feel free to add to data, once you fetched them, some mock URLs to use as profile pictures (http://placehold.it/). Keep in mind that once we move to the real API for fetching leaderboard data, names of fields are likely to change, so write your code in a way, which won't make it overcomplicated to change the data field names.
Challenge Scope
The focus of this challenge is to create the prototype of community leaderboard page. Development will be done in the Community App repository, using as the base the commit 9257ac9024f2ffb63ec87fe57f3519cad053feee, or a newer one in the develop branch. Your changes must not introduce any lint errors, and provide a resonable unit test coverage of the written code (look into existing tests for examples how to test various types of modules). You should properly use ReactJS, Redux, and support server-side rendering of the leaderboard.Warning: All code related to challenge listing was recently ported from another repository, and does not yet follow our standards for using Redux and unit-testing. Don't take it as an example!
Leaderboard Requirements
1. Prototype of the leaderboard should be added as a new page at /leaderboard route of Community App, and it should be referenced from the repo's content page.2. Default appearance of the leaderboard should be similar to https://tco17.topcoder.com/development/leaderboard/. No need to copy it pixel-perfect, but it should display similar data in the same clean way.
3. Mocked data for the leaderboard should be fetched from http://www.mocky.io/v2/59077a3a1000008f139bd811, stored into Redux state, and then used for rendering of the leaderboard. As of now, these mock data are missing URLs for user avatar pictures. Feel free to add to data, once you fetched them, some mock URLs to use as profile pictures (http://placehold.it/). Keep in mind that once we move to the real API for fetching leaderboard data, names of fields are likely to change, so write your code in a way, which won't make it overcomplicated to change the data field names.