Code Quests Quest Details
Quest #25 Ended

Authentication System

Challenge-based hiring quest with structured evaluation and real project outcomes.

Status: Ended Registration: June 30, 2024 Submission: July 7, 2024
Meta Info
Category
Ended
Status
Ended
Registration Deadline
June 30, 2024
Submission Deadline
July 7, 2024
Prize
🥇
4000 EGP
1 Place
🥈
1000 EGP
2 Place
🥉
500 EGP
3 Place
Quest Brief

Brief

Code-quests is a platform that helps businesses publish projects (called Quests) and ask a community of developers and designers to compete to build the best, highest-quality implementation or design.

In this quest, the goal is to build the authentication system for the Code Quest platform 


Requirements

You will be invited to access our backend code, built using TypeScript, Node.js LTS, and Feathers.js, and our frontend code, built using React js, you will add your changes to this project 

If you win the first prize, you agree to join a publishing session (4-8 hrs) where we deploy the code to our production environment and fix any critical bugs that appear during deployment.

Authentication Provider: Auth0 https://auth0.com/developers

  • Integrate Auth0 to manage user authentication.

  • Implement both sign-in and sign-up flows.

  • Ensure proper handling of authentication tokens and session management

  • Implement role-based access control (RBAC) to manage different user roles.

CodeQuest Backend: how to enable auth0 at feathers https://feathersjs.com/cookbook/authentication/auth0

  • Integrate Auth0 with your existing codequest backend.

  • Integrate with authentication APIs for user registration, login, and profile management using Auth0. 

  • Ensure secure communication between the client and server using Auth0 tokens.

CodeQuest Frontend : Auth0 SDK for react  https://github.com/auth0/auth0-react?tab=readme-ov-file

  • Integrate Auth0 into your existing Codequest frontend application.

  • Embed Auth0 ui or redirect to auth0 then come back

  • Handle authentication states and display appropriate UI elements based on user status (e.g., logged in, logged out).

  • Retrieve quests based on the user that already logged-in 


High-Level Architecture Diagram

Acceptance Criteria

Please read the Backend Scorecard to see how the winners will be selected, and how we evaluate the best code submission.

  • Minimum acceptable score is 90 (90% of 100). First, Second, Third place will be the highest score above 90.

  • If two submissions earn the same score, the first submission will get the highest place.

C Q For Digital Solution Trading as Code Quests
Making the world a better place through competitive crowdsourcing programming.