/Gradebook

Gradebook application Portal

Primary LanguagePython

Gradebook Application Portal

Gradebook Application Portal is a simple Flask application used for maintaning student's detail and their enrolled cources

Home

Index

Features

  • Add a student
  • Update/ delete a student
  • View particular student information

File Structure

.
├── static
    └── css
        └── style.css
├── templates
    ├── create.html
    ├── create_exist.html
    ├── index.html
    ├── update.html
    └── view.html
├── README.md
├── app.py
├── database.sqlite3
└── requirements.txt

Database Structure

Course Table Schema

| Column Name        | Column Type | Constraints                      |  
|--------------------|-------------|----------------------------------|
| course_id          | Integer     | Primary Key, Auto Increment      |
| course_name        | String      | Not Null                         |   
| course_code        | String      | Unique, Not Null                 |
| course_description | String      |                                  |

Student Table Schema

| Column Name        | Column Type | Constraints                      |
|--------------------|-------------|----------------------------------|
| student_id         | Integer     | Primary Key, Auto Increment      |
| roll_number        | String      | Unique, Not Null                 |
| first_name         | String      | Not Null                         |
| last_name          | String      |                                  |		

Enrollment Table Schema

| Column Name        | Column Type | Constraints                                      |
|--------------------|-------------|--------------------------------------------------|
| enrollment_id      | Integer     | Primary Key, Auto Increment                      |
| student_id         | Integer     | Foreign Key (student.student_id), Not Null       |
| course_id          | Integer     | Foreign Key (course.course_id), Not Null         |

Getting Started

Prerequisites

  • Python 3.x
  • Flask
  • Flask-SQLAlchemy

Installation

  • Clone the repository:
    git clone https://github.com/Vaibhav0221/Gradebook.git
  • Navigate to the project directory:
    cd Gradebook
  • Install the required packages:
    pip install -r requirements.txt
  • Run the app file
    flask run

Screenshots

Add_student

Student_details

Further Api Implementation

Method Path Description
GET /api/course/{course_id} Operation to Read Course resource
GET /api/student/{student_id} Operation to Read Stduent resource
GET /api/student/{student_id}/course Operation to get the list of enrollments, the student is enrolled in.
PUT /api/course/{course_id} Operation to update the course
PUT /api/student/{student_id} Operation to update student resource
DELETE /api/course/{course_id} Operation to delete the course resource
DELETE /api/student/{student_id} Operation to delete the student resource
DELETE /api/student/{student_id}/course/{cource_id} Operation to delete the student in particular enrolled course
POST /api/course Operation to create course resource
POST /api/student Operation to create student resource
POST /api/student/{student_id}/course Operation to add student enrollment