Averra Data
A production learning platform built for a data analytics academy — course delivery, student accounts, and practice testing, running live on its own domain.
Built under a private engagement. The source is not public, so this page covers the build and the decisions behind it rather than the code.
Screenshots of the public site. The authenticated student area is not shown.
About the Project
Averra Data is a data analytics academy that needed to move from a brochure presence to a platform its students could actually learn on. I built the site and the learning system behind it as a single Django application: a public marketing front end for course discovery and enrolment enquiries, and an authenticated student area for the coursework itself.
The academy runs tracks across data analysis, data science, data governance, data quality, and AI governance, each with its own structure. The content model had to handle that variation without needing a developer every time a course changed.
What I Built
- Course structure: A nested courses → modules → lessons model, so staff can restructure a syllabus from the admin without touching templates.
- Student accounts: Email-based authentication with a custom user model, registration, and a full password reset flow.
- Lesson delivery: Video lessons alongside downloadable notes, gated behind enrolment.
- Practice testing: A quiz engine with attempts, per-question answer capture, and score review — plus bulk question import via CSV so instructors can author tests in a spreadsheet.
- Enrolment tracking: Enrolment records linking students to courses, driving what each account can see.
- Discovery: Structured data, sitemap, and location-aware metadata so the academy ranks for the regional course searches its students actually run.
Notable Decisions
A custom user model from day one. The academy identifies students by email, not username. Swapping Django's user model after launch is painful, so it went in before the first migration.
CSV import for question banks. Instructors are subject-matter experts, not admin-panel users. Letting them upload a spreadsheet of questions removed the biggest recurring support request before it existed.
Serverless deployment. The site runs on Vercel, which keeps hosting cost near zero at the academy's traffic level while still handling enrolment-season spikes.
Tech Stack
- Backend: Django 5, Python
- Apps: accounts, courses, quizzes, dashboard
- Media: Pillow for image handling
- Frontend: Django templates, custom CSS
- Hosting: Vercel, custom domain