A Career Counselor Web Application for Junior Secondary School Students based on their academic performance from JSS 1-3
Click on the following links to access the website and the admin
You can use the credential "admin" for both the username and password to access the admin page.
This application is for students who are about to enter Senior Secondary School. Using their grades from Junior Secondary School 1-3, the application helps them decide on what field of study to go for in Science, Arts, Humanties or Commercials, based on their academic performance.
This system operates by following these key steps:
-
Via the admin interface, a student object is created, and assessment scores, including continuous assessment and exam scores, are entered into the system.
-
An access code which is generated will be sent to the email address of the student whose data was created.
-
Using the access code sent, a student can access a dedicated page that presents analysis result, and identifies their top subjects with the suggested field of study and related disciplines.
-
Django: This Python web framework is used for building the backend logic, including models for storing assessment data, and view to calculate to the assessment scores and recommend field of study.
-
Chart.js: This javascript library is utilized to visualize analysis results and present assessment score statistics in a graphical format.
-
Bootstrap: This CSS framework is employed to design the landing page and assessment dashboard of the student.
Follow the steps below to get the program working on your system locally. These steps are tailored for users developing on Linux OS with Python installed already.
-
Clone the repo
git clone https://github.com/Pythonian/career_counseling.git
-
Change into the directory of the cloned repo
cd career_counseling
-
Setup a Python virtual environment and activate it
make venv source venv/bin/activate
-
Install project requirements
make install
-
Copy and edit environment variables with desired values
cp .env.example .env
-
Run database migrations
make migrate
-
Create an admin superuser
make admin
Note: Use
admin
for both theusername
andpassword
, and skip entering theemail
. Also typey
to bypass Password validation. -
Populate the database with fake data (Optional)
make populatedb
-
Run the development server
make run
-
Visit the URL in your browser
127.0.0.1:8000
You can also visit the admin dashboard in a new tab and login with the credentials created in step 7.
127.0.0.1:8000/admin/
If you went ahead with the optional step (8), you can copy the access code for one of the students here http://127.0.0.1:8000/admin/career/student/
and use it to access the student assessment dashboard.
To run tests, run the following command
make test
Contributions are always welcome! Any contributions you make are greatly appreciated.
If you have a suggestion that would make this project better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
If you encounter any bug or problem while using the project, please open an issue
This project is licensed under the MIT License.
If you have any questions, suggestions, or feedback, feel free to reach out to me
Seyi Pythonian - @Ajibel - [email protected]