Challenge Overview

************ Note: The challenge has 72 hrs submission / 24 hrs review / 12 hrs Appeals Phase ************


Challenge Objectives:

Recently we added Work / Education and Languages tab to Member Profile on www.topcoder.com  

In this challenge, we are looking to enhance the behavior of several tabs of Member Profile screen, including new tabs enabled.

Please note work needs to be done on Community App repo (
feature-profile-enhancements branch) and Topcoder - Member Service repo (profile_enhancements branch) for this challenge, so you will have front-end and back-end running locally for this challenge.


Individual requirements

  • Add  Edit option for all pages like - Work, Language, Education, Hobby, Devices, Service Providers, Subscriptions, Software etc. We need to make sure all pages have this same behavior to make the site consistent. 

  • Add Delete-Confirmation-Popup (just like in Hobbies screen) for Work / Education and Languages. We need to make sure all other pages have consistent Delete behavior.

  • Make all work/language/education AND HOBBIES fields optional (not required) except fields listed per page:

    • Language:  Only the first field - dropdown for Language should be required, others are optional.

    • Education: Make the School/University dropdown and Name as mandatory only. Other fields Major / From / To / Graduated are optional. Rename Name to Name of College or University

    • Work: Keep only Company as required, others are optional.

    • Skills: No changes

    • Hobby: Only hobby field is required, Make Description as Optional.

    • Devices: Only Device Type should be mandatory, others are optional

    • Software: No changes

    • Service Providers: No changes

    • Subscriptions: No changes

 

Technology Stack

  • Node.js

  • JavaScript

  • React.js

Code Access

The work is to be done in the Community App repo (feature-profile-enhancements branch) and the Topcoder - Member Service repo (profile_enhancements branch).

 

Important Notes

  • 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 clarifications in the challenge forum!



Final Submission Guidelines

- 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.

ELIGIBLE EVENTS:

Topcoder Open 2019

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30092312