Quest Review APIs

Phase: Ended

Registration Deadline: February 11, 2024

Submission Deadline: February 18, 2024

Prizes

3000 EGP

1 Place

800 EGP

1 Place

400 EGP

3 Place

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 a high-quality RESTful API  that powers part of this platform. In previous quests, we successfully developed APIs for creating and listing quests, as well as handling registrations and submissions. The focus of this quest is primarily on building APIs for the quests review, scorecards, and prize management.

Requirements

  1. Use TypeScript, Node.js LTS, Feathers.js

  2. Automatically generated OpenApiSpec (OAS) must be generated automatically, using feathers-swagger  or any other alternative. Note that Models Schema can be automatically generated using sequalize-to-json 

  3. PostgreSQL Database, with Code first migrations (database generated from code)

  4. Follows 12-Factor App  principles, including accepting configurations using Environment Variables, including DB connection string.

API Resources

A detailed Design document will be shared with competitors after they register, the document will contain details about the REST APIs and the Database models. and we will share the repo that contains APIs of the previous quests.

  1. Review

  2. Score Cards

  3. Prizes

Tasks

A detailed Design document will be shared with competitors after they register, the document will list the detailed use cases as follows:

  1. Review Rules

  2. Score Card Rules

  3. Prizes Rules

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 80 (80% of 100). First, Second, Third place will be the highest score above 80.

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

Making the world a better place through competitive crowdsourcing programming.