Alunify is a comprehensive alumni networking platform built with Django 5.0. The platform helps connect graduates, facilitates professional networking, and enables alumni to showcase their skills and experiences.
- User Management: Custom Alumni user model with extended profile information
- Profile System: Detailed alumni profiles with education, work experience, skills, and professional categorization
- Search Functionality: Advanced search capabilities to find alumni by various criteria
- Responsive Design: Mobile-friendly interface built with modern frontend techniques
- Secure Authentication: Robust login, registration, and password reset functionality
- Media Support: Profile pictures and other media uploads
The application consists of the following main components:
- user: Custom user authentication and Alumni model
- profiles: Profile management, experiences, education, skills, and professions
- search: Alumni search and query tracking functionality
- Python 3.8+
- pip
- virtualenv (optional but recommended)
-
Clone the repository:
git clone <repository-url> cd alunify -
Create and activate virtual environment (optional):
python -m venv env source env/bin/activate # On Windows, use: env\Scripts\activate -
Install dependencies:
pip install -r requirements.txt -
Set up environment variables:
cp .env.example .envThen edit the
.envfile with your settings. -
Run migrations:
python manage.py migrate -
Create a superuser:
python manage.py createsuperuser -
Run the development server:
python manage.py runserver
By default, the application uses SQLite for development. For production, it's recommended to use PostgreSQL:
-
Make sure PostgreSQL is installed and running on your server.
-
Configure the database URL in your
.envfile:DATABASE_URL=postgres://username:password@host:port/database_name
The application will automatically use PostgreSQL when the DATABASE_URL environment variable is set.
-
Set the following environment variables:
DEBUG=False SECRET_KEY=<your-secure-secret-key> ALLOWED_HOSTS=yourdomain.com,www.yourdomain.com,alunify.onrender.com DATABASE_URL=postgres://username:password@host:port/database_name -
Collect static files:
python manage.py collectstatic --no-input -
Run migrations:
python manage.py migrate
The application is configured for deployment on Render.com:
- Create a new Web Service on Render
- Connect your GitHub repository
- Configure environment variables as listed above
- Set the build command:
pip install -r requirements.txt - Set the start command:
gunicorn alunify.wsgi:application
- Create a new branch for your feature
- Implement and test your changes
- Submit a pull request for review
Run the test suite with:
python manage.py test
- Backend: Django 5.0+
- Database: SQLite (development), PostgreSQL (production)
- Media Storage: Local filesystem
- Frontend: HTML, CSS, JavaScript
- Deployment: Render.com
This project is licensed under the terms of the LICENSE file included in the repository.