Overarching Project
So far, the ovearching project has relied on the following two database tables.
CREATE TABLE courses (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL
);
CREATE TABLE questions (
id SERIAL PRIMARY KEY,
course_id INTEGER REFERENCES courses(id) ON DELETE CASCADE,
title TEXT NOT NULL,
text TEXT NOT NULL,
upvotes INTEGER NOT NULL DEFAULT 0
);
There have been no users, and there has not been a possibility to answer questions. In the following four parts of the overarching project, you will (1) modify the server-side functionality to add users to the application, (2) add client-side functionality that allows registering and logging in, (3) add server-side functionality for adding, listing, and upvoting questions, and (4) add client-side functionality for working with the questions.
After completing the above step, your project should have an API that allows registering and logging in users. Next, you build the client-side functionality, adding the login and registration forms.
After adding the registration and login functionality to both the server-side application and the client-side application, the next step is to add API endpoints for adding, listing, and upvoting question answers.
Finally, with the API endpoints for the question answers, you will implement the client-side functionality for adding, listing, and upvoting question answers.