Challenge Overview
Project Overview
Build REST API service for Sechi mobile app based on existing specification. Using Heroku as platform to create these API services combined with PostgreSQL addon and Node.js for server logic.
Create basic CRUD operation for API functionality defined in the reference guide provided with this contest. Server API will interact with PostgreSQL database for persistence layer for Job, Contact, Account, Payment and Parts tables. Server code should be created using Node.js and choice of framework for REST services(for example Express or Restify frameworks). We want to have automated API documentation built into this module, user can select a good framework for that purpose that plays nice with Node.js and other Frameworks, for example Swagger documentation framework. Goal is to have API docs autogenerated and delivered via the web by going to server URL.
Competition Task Overview
For this project, the following features are required:
- Node.js server code integrated with REST framework to deliver CRUD operations based on API doc and given PostgreSQL database schema.
- Integrate Swagger or other Node.js compatible documentation framework to deliver API docs via the web with no maintenance (autogenerated documentation)
- The app needs to run on Heroku platform (Each user needs to get own heroku account and create the app)
- Use Heroku addon PostgreSQL as back end database(required DB table SQL and sample data are provided for this challenge)
- Sample Server code implementing some of the API in Node.js is provided
Technology Overview
- Heroku
- PostgreSQL
- Node.js
- Swagger or other documentation framework
- REST framwork for Node.js (Restify used in the example)
Documentation Provided
Name | Description |
---|---|
SechiAPIDocument1.1.pdf | API Documentation |
db.zip | Database scripts to create tables and load test data |
node.zip | Sample Node.js API services source code |
service_bundle_reference_architecture.png | Reference architecture diagram |
Final Submission Guidelines
Submission Deliverables
A complete list of deliverables can be viewed in the TopCoder Assembly competition Tutorial at: http://apps.topcoder.com/wiki/display/tc/Assembly+Competition+Tutorials
Below is an overview of the deliverables:
- A complete solution that implements the requirements.
- A complete and detailed deployment document explaining how to deploy the application including configuration information.
Final Submission
For each member, the final submission should be uploaded to the Online Review Tool.