Elevo is an AI-powered placement preparation platform built with Django. It combines coding practice, aptitude preparation, social learning, and resume-driven mock interviews in one system.
Live Demo: https://elevo.13.51.206.127.nip.io
- Coding practice with problem lists, submissions, and tutor-managed content
- Aptitude module with categories, topics, practice sets, and quiz sessions
- AI mock interviews with Technical and HR tracks
- Resume analysis with ATS-style score, breakdown, and improvement suggestions
- Interview reports with transcript and performance insights
- User system with student/tutor/admin roles and profile management
- Social feed (posts, comments, likes, repost/share, follow)
- Backend: Django 5
- Database: PostgreSQL (production-ready)
- AI: Gemini with OpenAI fallback
- Frontend: Django templates + Tailwind-style utility classes
- Clone and enter project:
git clone https://github.com/Pinkesh2905/Elevo.git
cd Elevo/elevo- Create and activate virtualenv:
python -m venv ..\\.venv
..\\.venv\\Scripts\\activate- Install dependencies:
pip install -r requirements.txt- Configure
.env(example):
SECRET_KEY=your_secret
DEBUG=True
ELEVO_ENV=development
DATABASE_URL=postgres://postgres:password@localhost:5432/Elevo
GEMINI_API_KEY=your_gemini_key
OPENAI_API_KEY=your_openai_key
AI_PROVIDER=gemini
APTITUDE_DATA_DIR=private_data/aptitude
PRACTICE_DATA_DIR=private_data/practice
ELEVO_CONTENT_CSV=private_data/elevo_content.csv- Run migrations and start:
python manage.py migrate
python manage.py seed_subscription_plans
python manage.py runserverElevo now supports explicit settings profiles:
ELEVO_ENV=development->elevo.settings_developmentELEVO_ENV=staging->elevo.settings_stagingELEVO_ENV=production->elevo.settings_production
Use optional feature flags to control the sales demo path:
SALES_DEMO_MODE=True
SHOW_SOCIAL_IN_SALES_DEMO=False
ENABLE_CHAT=TrueUse optional media serving override only for local/insecure environments:
SERVE_MEDIA_INSECURE=False- This repository keeps only sample datasets:
data/*_sample.csvpractice_data/*_sample.csvelevo_content_sample.csv
- Real production datasets must stay outside Git in a private location.
- Set private paths in
.env:
APTITUDE_DATA_DIR=private_data/aptitude
PRACTICE_DATA_DIR=private_data/practice
ELEVO_CONTENT_CSV=private_data/elevo_content.csvImport commands:
python manage.py import_aptitude_data
python manage.py import_problems --clear
python manage.py import_csvThe commands first use private files (*.csv) and automatically fall back to sample files (*_sample.csv) if private files are not present.
- Set
DEBUG=False - Use managed PostgreSQL and set
DATABASE_URL - Set secure
SECRET_KEYand allowed hosts - Configure deployment host values, for example:
ELEVO_ENV=production
ALLOWED_HOSTS=elevo.life,www.elevo.life
DOMAIN_NAME=elevo.life
CSRF_TRUSTED_ORIGINS=https://elevo.life,https://www.elevo.life- Run:
python manage.py migrate
python manage.py check --deploy
python manage.py collectstatic --noinputLegal draft endpoints:
/privacy-policy//terms-of-service//data-processing-addendum/
Main remote: https://github.com/Pinkesh2905/Elevo.git