Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Important! The review phase, as well as the Appeals/Appeals response phases, are shorter than usual. Make sure you don’t miss any deadline!

Challenge Objectives

  • Sync our existing code (develop) with the latest code from the feature-challenge-v5 branch.

Technology Stack

  • Node.js

  • JavaScript

  • React.js

Code Access

The work is to be done in the following repos:

Community App

Repo: https://github.com/topcoder-platform/community-app

Branch: develop

Topcoder React Library

Repo: https://github.com/topcoder-platform/topcoder-react-lib

Branch: develop

 

You will also have to set up and run the following services locally for testing

Challenge V5 API

Repo: https://github.com/topcoder-platform/challenge-api

Branch: develop

Resources V5 API

Repo: https://github.com/topcoder-platform/resources-api

Branch: develop

Individual requirements

In an effort to integrate the community app with our new Challenge V5 API, we created a separate branch based on a commit of the develop branch (feature-challenge-v5).

 

This branch is now very outdated, has code that is no longer needed (unrelated to the integration with the V5 API) and is causing a lot of issues with merging into develop.

 

As part of this challenge, you need to work based on the develop branch of both the community-app and the topcoder-react-lib repos and cherry-pick (manually copy) the code from the feature-challenge-v5 branch of each repo that is related to the integration with the V5 API.

 

The pages that are in the scope of this challenge are:

  • The challenge listings page (/challenges)

  • The challenge details page (/challenges/:challengeId)

  • The review opportunity page (/challenges/:challengeId/review-opportunities)

 

The expected result will be a git patch for each repo that will have all code related to the integration of the community-app/topcoder-react-lib with the v5 API and that can be applied to the develop branch.

 

After applying your patch files, we should be able to have the latest version of the develop branch working with the V5 API to display the challenge listings as well as the challenge information including all related functionalities (filtering/searching challenges, register/unregister to and from a challenge etc).

 

Do not break any existing functionality.

 

Anything that’s not clear must be clarified on the forum. 

Important Notes

  • Do not modify the response of the API to make it match with what the frontend is expecting. The frontend (community-app/topcoder-react-lib) should be modified to consume the response from the v5 instead.

  • You should follow the best practices established in the repository:

  • We use this stand-alone library: https://github.com/topcoder-platform/topcoder-react-lib for any actions/reducers/services of current ReactJS based app. 

  • As part of this challenge submission, you also might need to improve https://github.com/topcoder-platform/topcoder-react-lib for any actions/reducers/services updates

  • Properly use Redux. Properly split code into reusable, self-contained React components, conveniently grouped inside folder structure;

  • Do not violate ESLint rules for JS code, nor StyleLint rules for SCSS;

  • Properly use babel-plugin-react-css-modules and / or react-css-themr for styling;

  • Use SCSS variables and mixins from the global stylesheets (/src/styles/_tc-styles.scss). Especially, when it relates to colors, fonts, etc;

  • Do not break existing unit tests.

  • Etc.;

 

Should you have any doubts, do not hesitate to ask for clarification in the challenge forum!

Submission deliverables

- Submit a git patch for each repo.

- Make sure to mention the exact commits so we can apply your patch file.

- The winner must create a PR against our repos.

Final Submission Guidelines

Please read above

ELIGIBLE EVENTS:

2020 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30124821