JE Joseph Edward Lagos, Nigeria

Type to filter. Use the up and down arrows to move between results and Enter to open the highlighted one.

Quanta

Adaptive learning workspace

Role
Full-stack
Year
2026
Status
in development

An AI-assisted study app built as a Django REST API with an Expo client. It turns uploaded material into guided paths, schedules review from how well you actually recall a topic, and maps what you have learned as a memory constellation.

  • Guided study paths generated from uploaded documents
  • Spaced repetition scheduled from recall performance
  • AI tutor and generated quizzes per topic
  • Versioned REST API with pagination and an error envelope

A monorepo split into a Django REST backend and an Expo client. The backend is divided into thirteen domain apps rather than one large application, behind a single versioned API root.

  • Django
  • DRF
  • PostgreSQL
  • Expo
  • React Native
  • TypeScript
Screen recording

How it is built

A monorepo split into a Django REST backend and an Expo client. The backend is divided into thirteen domain apps rather than one large application, behind a single versioned API root.

Stack

  • Django 6.0 backend
  • DRF 3.17 backend
  • Simple JWT backend
  • drf-spectacular backend
  • PostgreSQL (psycopg 3) data
  • Gunicorn infra
  • Expo client
  • React Native client
  • NativeWind client
  • Zustand client
  • React Query client
  • Zod client

Architecture

One client, one versioned API surface, and domain apps that own their own slice of the schema.

  • Expo client client
    • Expo Router
    • React Query
    • Zustand
    • NativeWind
  • Versioned REST API service
    • DRF
    • drf-spectacular
  • Accounts service
  • Profiles service
  • Learning service
  • Documents service Extracts content from uploaded PDF and Word files
    • pypdf
    • python-docx
  • Knowledge service
  • Quizzes service
  • Tutor service
  • Intelligence service
  • Progress service
  • Replay service
  • Twin service
  • Subscriptions service
  • Dashboard service
  • PostgreSQL datastore
  • Anthropic and OpenAI external

Flow

  • Expo client Versioned REST API HTTPS
  • Versioned REST API Accounts
  • Versioned REST API Profiles
  • Versioned REST API Learning
  • Versioned REST API Documents
  • Versioned REST API Knowledge
  • Versioned REST API Quizzes
  • Versioned REST API Tutor
  • Versioned REST API Intelligence
  • Versioned REST API Progress
  • Versioned REST API Replay
  • Versioned REST API Twin
  • Versioned REST API Subscriptions
  • Versioned REST API Dashboard
  • Tutor Anthropic and OpenAI
  • Intelligence Anthropic and OpenAI
  • Versioned REST API PostgreSQL

API

REST

  • Versioned URL root with shared pagination and error envelope
  • Schema and documentation generated by drf-spectacular
  • GET /api/v1/health/ Health check
  • GET /api/docs/ Generated API documentation

Data

PostgreSQL

  • Accessed through psycopg 3

Authentication

JSON Web Tokens

  • Simple JWT, with identity owned by the accounts app

Integrations

  • Anthropic API Model access for the tutor and generated study material
  • OpenAI API Model access for the tutor and generated study material

Testing

  • Dedicated backend test package
  • Separate development requirements file

Infrastructure

  • Served by Gunicorn

Notable decisions

  • Split settings into base, development and production

    Keeps deploy-specific configuration out of the shared base

  • One versioned API root rather than per-app URL trees

    Pagination and the error envelope are defined once for every endpoint

  • Two model providers rather than one

    Neither vendor is a single point of failure for the tutor