A learning management system created with Django. This project was made for my major SDD work, and later revised to add additional features and testing
git clone https://github.com/omackenzie/poodle
- Install the required modules by running
pip install -r requirements.txt
(create a virtualenv first if you wish) - Run
python manage.py runserver
to start the server, then navigate to localhost:8000 in the browser
- Creating classes and assigning teachers and students to those classes
- Teachers can create assignments which students can view and upload files to
- These assignments have individual sections with their own separate upload option
- Teachers can then view all submissions from students in their class
- Custom styling and the ability to add images for assignment and sections using the rich text editor Quill
- First sign into the admin account using the credentials admin:password then navigate to the admin panel (either by clicking your profile in the top right and clicking "admin panel" in the dropdown, or by going to the URL localhost:8000/admin
- Create any teachers or students you want to use, then create a class, assigning students as required to that class
- You can then go back to the main page and sign in using the teacher or student accounts you created
- A tutorial on the features of the site is available by clicking your profile in the top right and clicking help in the dropdown
- To run tests, execute
python manage.py test
- To check coverage, execute
coverage run manage.py test
, thencoverage report -m
- To install the necessary tools for linting, run
pip install -r dev-requirements.txt
- Linting uses ruff,
ruff check .
- Import ordering is done with isort,
isort .
- Quizzes