The Hackathon Management System is a web application designed to streamline the process of organizing and participating in hackathons. It provides a platform for event organizers to create and manage hackathons, and for participants to register, submit their projects, and view their submissions.
-
Hackathon Creation: Authorized users can create hackathons by providing essential details such as title, description, background image, hackathon image, type of submission, start datetime, end datetime, and reward prize.
-
Listing of Hackathons: Users can view a list of available hackathons, including their titles and descriptions.
-
User Registration: Students can register for hackathons by creating an account with their email, username, and password.
-
Hackathon Registration: Registered users can enroll in hackathons they are interested in.
-
Submission Creation: Participants can submit their projects to a hackathon, including a name, summary, and submission content (image, file, or link).
-
Submission Validation: The system validates the submissions based on the selected type of submission (image, file, or link).
-
Authorization and Authentication: Access to various features is restricted based on user roles. Superusers have exclusive rights to create hackathons, while regular users can register, enroll in hackathons, and make submissions.
Clone the project
git clone https://github.com/pnaskardev/Hackathon-Management-Service-Django
Go to the project directory
cd Hackathon-Management-Service-Django
Create a python virtual environement
python -m venv venv
Start the virtual environement
venv\Scripts\activate
install required packages
pip install -r requirements.txt
Create your own superuser
python manage.py createsuperuser
Start the Server
python manage.py runserver
GET /hackathon/hackathons/
POST /account/register/
Parameter | Type | Description |
---|---|---|
username |
string |
Required. your username |
email |
string |
Required. your email |
password |
string |
Required. your secure password |
POST /account/login/
Parameter | Type | Description |
---|---|---|
email |
string |
Required. your email |
password |
string |
Required. your secure password |
Below this all the Routes require Authorization Bearer Acces Token which was recieved in the Login Route
Required. accessToken
POST /account/register_hackathon
Parameter | Type | Description |
---|---|---|
hackathon_id |
string |
Required. Id of hackathon |
Required. accessToken
GET /account/registered_hackathons/
Parameter | Type | Description |
---|---|---|
hackathon_id |
string |
Required. Id of hackathon |
Required. accessToken
POST /hackathon/submission/
Parameter | Type | Description |
---|---|---|
name |
string |
Required. name of the submission |
user |
string |
Required. user id of the participant |
submission |
string |
Required. submission type |
Required. accessToken
GET /hackathon/submission/