Skip to main content

Project Setup & Infrastructure Decisions

Based on Meeting 2 β€” Setup & Requirements Engineering


General Decisions​

CategoryDecision
Application NameLQ (chosen over Sphinx)
RepositoryGitea (created by Wilson)
Issue TrackingGitea Issues will be used to note bugs and track tasks.
Git MethodologyLightweight GitFlow:
feature β†’ develop (via Pull Request) β†’ main (stable releases only).
Code Review PreferencesFrontend help: Blessing & Safiyyah
Backend help: Benjamin & Somnotho

Git Access Note: We initially had issues committing. Wilson resolved this by adding everyone as collaborators with write access.


The following pages will be available in the main navigation:

  1. Dashboard – shows courses you’re currently learning and your progress.
  2. Browse courses – discover and filter available courses.
  3. Communities – conversation spaces for learners.
  4. My Profile – user profile and settings.
  5. Author Workspace – courses you are currently creating.
  6. Notifications – alerts and updates.
  7. Moderator Page – only shown for users with moderator permissions.

Setup Responsibilities​

Who set up what during the foundation phase:

Team MemberSetup Responsibility
BlessingFrontend folder structure with React + Vite.
Somnotho (Somi)Backend folder structure (microservices architecture), Docker, Zod, and database schema.
NthabisengAdded Docusaurus to the repo, set up Supabase Auth and Prisma.
BenjaminCode quality tooling (ESLint, Prettier, Husky, lint-staged), and set up Express.js as the backend framework.
WilsonSet up CI/CD pipeline.
SafiyyahSet up testing tools β€” Vitest for the frontend and Supertest for the backend.

This document serves as the single source of truth for our initial tech stack decisions and infrastructure ownership.