Register
Submit a solution
The challenge is finished.

Challenge Overview

This is the medium problem of RDM-1 and carries 500 Points.
Here's the Match Leaderboard. 

Problem Description

Alice is mad over coffee and she loves to try out each type of coffee. She becomes so addictive that she decides to open an online e-commerce website for premium coffee beans. Alice goes online and collects data about various species arranged in the following format:

e-commerce/coffee/{species}/images/30sdfknl09123-arabica-23ij09d67as5123.png
e-commerce/coffee/{species}/about/desc.txt
e-commerce/coffee/{species}/about/price.txt

where {species} is the name of the coffee species, images contain multiple images of the respective species and about contains description and price of the respective species in a single file named desc.txt and price.txt respectively. Price.txt contains price with upto 2 decimal places without currency.

Alice decides to share what she has collected with the outside world. But she doesn't want to share it without knowing about them.

We need to help Alice out with an API that helps her share data in a secure and best possible way.

File samples

Platform Functionalities

  • The API should provide a way to list all the species available.
  • The API should provide a way to provide data for any specific species whose name would provide as an input.

Constraints and Guidelines

  • All file names are case sensitive depending on the underlying file system. For e.g. on Windows with NTFS file systems, file names are case insensitive, but on macOS/Linux, file names may / may not be case sensitive.
  • The provided solution should be OS independent.
  • Alice only downloads .png files.
  • Your platform should not take more than 4 seconds for any operation, for example, a request to the API should respond within 4 seconds, a screen should be shown in 4 seconds etc.
  • Your solution should have a Dockerfile and a corresponding docker-compose. Problem testers should be able to start the app with a simple command : docker-compose up -d
  • Please use the forums to ask any doubts.
  • We will judge your submission based on the requirements being fulfilled, so as long as the requirements are met, you would be rewarded with points for that particular problem.
  • Minimal code quality is expected, for the reviewer to review the submission and go through your code
    • Obvious and deliberate code obfuscation will be rejected.
    • Collaborating/Cheating in any way with anyone else (member or not) during a rated event is considered cheating.
    • An excessive amount of unused content should be avoided.
    • Code Readability is expected with necessary comments, indentation and somewhat refactored code (as much as possible)

Technology Stack

Whatever you feel like using.



Final Submission Guidelines

Your submission must be a single ZIP file not larger than 500 MB, with your solution. 

ELIGIBLE EVENTS:

2021 Topcoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30144967