This project was initiated for Coding Fest 2023 by Udit Samant, Jennifer Tan, Devanshi Mirchandani, and Parth Bhargava. The purpose of UniTrack is to present a university services platform with a better user experience, mainly targeting degree planning, unit selection, and time table selection.
The initial tech stack was NextJS with Firebase, however for a revamp of the project, we decided on Django and SQLite with HTML and CSS.
We welcome any collaboration and contributions from the public to this project, please refer to the open source contribution section.
SSH authentication is recommended, visit this link for more information.
- Clone the repo using
git clone --recurse-submodules git@github.com:USYDUniTrack/unitrack.git cdinto the unitrack/ directory and rungit config submodule.recurse true. This will allow you to recursively pull changes to the scrape submodule every time you pull.- Create python virtual env using
python -m venv venv - Activate environment using
source venv/bin/activate - Install dependencies using
python -m pip install -r requirements.txt
You're all set! Keep in mind that you should activate the python env before
every development session, and deactivate any other environments that might be
active, eg. default conda deactivate base. If you're on a UNIX system, the
included start.sh script can be run to start the server; however need to run
chmod +x start.sh once to give execute permissions.
Read the guidelines below to write good commit messages, branch names, and make pull requests that follow the conventions we will be using throughout the project.
- Capitalise the subject line.
- Do not end with a period.
- Use imperative mood, i.e. instead of "Added ..." write "Add ...".
- Keep messages logical and relevant, do not write things like "Please work" or "I hate frontend". To help decide the extent of this, imagine trying to access a point in the project 2 weeks ago, it would be better to have something like "Add CSS for Navbar template" or , so that we know from a glance what the commit is for.
- For more detailed messages, use
git commit -m <title> -m <description>, however short and concise is still preferred.
Make a branch using git checkout -b <branch_name>.
- Names fall under one of 4 categories
- Minor Feature:
minor-FeatureName - Major Feature:
major-FeatureName - Patch:
patch-PatchName - Miscellaneous:
name- For example
documentationfor changing the README, or adding another markdown
- For example
- Minor Feature:
Summarised from this article.
- Short and descriptive summary
- Start with corresponding ticket/story id (e.g. from Jira, GitHub issue)
- Should be capitalized and written in imperative present tense
- Do not end with period
- Suggested format: #<Ticket_ID> PR description
- Separated with a blank line from the subject
- Explain what, why, etc.
- Max 72 chars
- Each paragraph capitalized
This pull request is part of the work to make it easier for people to contribute to naming convention guides. One of the easiest way to make small changes would be using the Edit on Github button.
To achieve this, we needed to:
- Find the best Gitbook plugin which can do the work
- Integrate it in all the pages to redirect the user to the right page on GitHub for editing
- Make it visible on the page so users can notice it easily
Follow the steps below to suggest a patch or a feature for this project. For information on naming conventions for pull requests or commits, read the rest of the contributing section above.
- Fork the repo
- Create your Feature Branch:
git checkout -b <branch_name> - Commit your Changes
- Push to the Branch:
git push origin <branch_name> - Open a Pull Request
- Parth Bhargava
- Devanshi Mirchandani
- Jennifer Tan
- Udit Samant
- Antriksh Dhand