Keep assessment rules on the server
The Go API checks deadlines and uses transactions for answer submission. A separate worker processes overdue attempts, keeping timing rules outside the mobile countdown alone.
Learning & Content
Learning & assessment
Connecting classes, flashcards, and quizzes with a Go backend that checks access, enforces deadlines, processes attempts, and supports automatic and manual grading.
Project image unavailable
The context
Teachers and learners need a connected flow from preparing materials to releasing assessment results. The server must remain responsible for access, submission rules, and deadlines even when the mobile interface changes state.
The connected workflow
Inside the implementation
The Go API checks deadlines and uses transactions for answer submission. A separate worker processes overdue attempts, keeping timing rules outside the mobile countdown alone.
Role checks are combined with ownership and class membership. Authentication uses Argon2id password hashing, Ed25519 JWTs, and refresh-token rotation.
Idempotency keys and versioning address repeated requests and conflicting changes. Flutter uses feature-based structure, Riverpod, and shared session and networking components.
Scope & validation
Core features and automated tests are documented, but remaining gaps still require verification before declaring all MVP criteria met or production readiness. Password-reset email delivery is not yet determined. Local drafts do not establish fully offline quizzes.
Have something in mind?
Tell me about your product, the people using it,
and the problem you want to solve.