TutorLink is a platform designed to connect students with volunteers for personalized tutoring and resource sharing. The project consists of a Django backend and a React frontend.
- 🔒 User authentication with JWT
- 📝 User registration and login
- 📚 Resource creation functionality
- 🤝 Connection with volunteers
- 🗂 Resource library
- 🔍 Find a Tutor
- Django
- Django REST Framework
- Django Simple JWT
- SQLite (for development)
- React JS
- React Router
- Axios
- CSS
- HTML
- Python
- JavaScript
- VSCode
- Python 3.8+
- pip
- Node.js 14+
- npm
- PostgreSQL (for production) or SQLite (for local development)
-
Clone the Repository
git clone https://github.com/SushiOnToast/Empower-Hacks-TutorLink.git cd TutorLink
-
Navigate to the Backend Directory
cd backend
-
Create a Virtual Environment
python -m venv env
-
Activate the Virtual Environment
-
On Windows:
venv\Scripts\activate
-
On macOS/Linux:
source venv/bin/activate
-
-
Install Dependencies
pip install -r requirements.txt
-
Create a
.env
FileCreate a
.env
file in thebackend
directory with the following content:DJANGO_SECRET_KEY=your_secret_key DEBUG=True
Replace
your_secret_key
with a strong secret key. You can generate one by using Django'sdjango-admin
command or an online key generator:django-admin shell -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
-
Run Migrations
python manage.py migrate
-
Create a Superuser (optional)
python manage.py createsuperuser
-
Run the Development Server
python manage.py runserver
Your Django backend will be running at http://localhost:8000
.
-
Navigate to the Frontend Directory
cd ../frontend
-
Install Dependencies
npm install axios jwt-decode react-router-dom styled-components
-
Create a
.env
FileCreate a
.env
file in thefrontend
directory with the following content:VITE_API_URL="http://127.0.0.1:8000/"
-
Run the Development Server
npm run dev
Your React frontend will be running at
http://localhost:5173
.
- Open your browser and navigate to
http://localhost:5173
to access the React frontend. - The frontend communicates with the Django backend to handle user authentication, profile management, and other features.
We welcome contributions! If you'd like to contribute to the project, please follow these steps:
- Fork the repository.
- Clone your fork to your local machine (
git clone https://github.com/SushiOnToast/Empower-Hacks-TutorLink.git
) - Create a new branch (
git checkout -b feature/your-feature-name
). - Make your changes.
- Commit your changes (
git commit -am 'Add your commit message here'
). - Push to the branch (
git push origin feature/your-feature-name
). - Create a new Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.