Milestone 1
SPA + REST API development
-
Develop a web application to manage the question repository (Refer to M3 under PeerPrep features). Your task involves developing single-page applications that can perform CRUD operations on questions.
-
Each question must have the following details:
[Question Id, Question Title, Question Description, Question Category, Questio…
SPA + REST API development
-
Develop a web application to manage the question repository (Refer to M3 under PeerPrep features). Your task involves developing single-page applications that can perform CRUD operations on questions.
-
Each question must have the following details:
[Question Id, Question Title, Question Description, Question Category, Question Complexity] -
Create a backend for the web application using a (preferably NoSQL) database and establish communication between the front end and back end using REST.
-
Design APIs for the CRUD operations to maintain question records in a database (e.g., MongoDB).
Tasks
- You will design an SPA (Single Page Application), where all the functionality for Question repository feature is written within a single web page instead of having cross-references across many pages. At this point, the web application may be hosted locally on your machine; it does not need to be accessed from the internet.
- You can use any programming language/platform for developing the REST API.
- You can enter the questions manually. You are also allowed to have alternative methods of entering questions (e.g., uploading and parsing a JSON file).
- You are given a sample of 20 questions as your input data to develop, test, and demonstrate your deliverable. (See Appendix 4).
- You are required to provide a feature for viewing the list of questions (mandatorily show the title, optionally show the complexity/category, description or all) in the current state of the application on accessing the application (landing page). The question description may be shown on clicking the question title. For example, you can organize the questions in the form of a table on the SPA.
- You may use CSS to make the page usable in terms of displaying the information in an organized manner.
- Basic error handling, for example, checking for duplicates.
- [Not to be submitted] Document your Milestone D2 work in the Technical Report from Milestone D1. This report shall continue to evolve with each milestone and would result in a product document at the end. See Appendix 2 for details on what is expected from the final technical report.
Submission Instructions
-
Submit a single PDF containing (i) 1-3 screenshots of SPA, and (ii) instructions for the teaching team to set up your code and run it on their machine. Optionally, you can give a link to the web-hosted application in the PDF.
-
Use the provided template.
-
Strictly one submission per team to Project-D2 on Canvas. on Canvas.
-
Filename: [Group number]-[Milestone].pdf; for example, G01-D2.pdf
-
You can be called for demo by your grader (mentor/tutor) to demonstrate (i) a landing page that displays basic information about all the questions in the current state of the application