What I built.
Website project hosted on Vercel.
- Afrikaans educational content and learner-account routes.
- Topic, video and weekly-fact management.
- Interactive learning activity pages.
- Daily activity-generation job endpoints.
Under the hood.
Next.js / React
Learning pages and admin routes
TypeScript
Application code
Supabase
Account and content integration
- Content management
- Activity-job endpoints
- Learning activity pages
A closer look.
Life Sciences beyond a textbook
The brief for Mr Bio is to make Life Sciences approachable for school learners, primarily Grades 8 to 12. I approached it as a learning experience rather than a conventional school website: clear content, a friendly interface and different ways to engage with a topic.
Routes for content and activities
I used Next.js and React with Supabase. The project includes routes for video lessons, weekly facts, learning topics, resources, learner accounts and an administration area. The learning activities have their own section, so a learner can move from reading or watching into something more active.
The code also includes daily activity-generation jobs for formats such as quizzes, word searches, matching pairs and diagrams. Keeping these as separate server routes makes the recurring-content workflow distinct from the pages that display it.
Content production has its own routes
The Next application separates the public learning routes from administration and daily activity-job endpoints. Video lessons, topic pages and weekly facts are different content surfaces; quizzes, word searches, matching pairs and diagrams are different activity formats.
That makes the job layer interesting: generating an activity and rendering it for a learner happen at different moments. Retries, duplicate daily runs and review of generated material are the next behaviours I would want to verify in depth. The existence of job routes is not enough to claim those guarantees.
Publishing tools for the teacher
Content needs to stay manageable for the person teaching as well as accessible for the person learning. That is why the administration routes cover topics, themes, videos and facts instead of hard-coding every update into the public interface.
An evolving learning platform
This is an evolving educational platform. The source shows the implemented structure and activity workflows; it does not establish learner numbers, learning outcomes or that every planned commercial feature has launched.
