Skip to content

freecodeschoolindy/student-management-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Management System

This is a simple API for:

  • creating a unified interface for keeping track of fcs students
  • accounts for students to login and see their own pages
  • admins can login and see everyone via the Django admin interface
  • it will be able to use Github OAuth

Table of Contents

Requirements

  • Students and Organizers/Admin accounts login using GitHub OAUTH

  • Private Student Profile: Visible to only the user and organizers/admins

    • FreeCodeCamp.org progress page url: freecodecamp.org/codecafecentral
    • Email
    • Discord Name
    • Phone
    • Attendenance (not editable by students)
    • List of labs:
      • Link to the lab starter
      • input field for a link to their completed version
  • Admin Dashboard

Schema

  • User

    • email
    • password
    • groups: student, admin, or volunteer (can only belong to one)
  • StudentProfile

    • first_name
    • last_name
    • preferred_name
    • discord_name
    • github_username
    • codepen_username
    • fcc_profile_url
    • current_level
    • phone
    • timezone
  • Volunteer

    • first_name
    • last_name
    • email
    • hours_available
  • VolunteerHours

    • volunteer_id
    • day: CharField with choices -> mon, tue, wed, thu, fri, sat, sun
    • begin_hour: models.PositiveSmallIntegerField(validators=[MaxValueValidator(24)])
    • end_hour: models.PositiveSmallIntegerField(validators=[MaxValueValidator(24)])
  • Lecture

    • date
    • title
    • description
    • slides_url
  • Attendance

    • lecture_id
    • student_id
  • Project (labs)

    • title
    • description
    • url
  • StudentSubmission

    • student_id
    • project_id
    • url
  • StudentCertificate

    • student_id
    • certificate_id
  • Certificate

    • name
    • description
  • Waitlist

    • first_name
    • last_name
    • email
    • notes

API

Prefix: /api/v1

/students

  • get (temporary, only for testing)
  • post

/students/:id

  • get
  • patch
  • delete

/students/:id/certificates

  • get

/certificates

  • get

Roadmap

Version 2

  • Students will be able to have public profiles with this information:

    • First Name
    • Last Name
    • Preferred Name
    • GitHub Username
    • Codepen Username
    • Certificates/Badges
  • Area where volunteers can view their own information and update their hours

  • Set type of lecture (add type field to Lecture model)

About

Management system for students of our free coding school.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages