Learning & professional communities

Permanent Academy

An LMS for paramedical permanent makeup: protected video lessons, knowledge checks, certificates and cohort communication.

Learning platform · Next.js / Fastify / Prisma / PostgreSQL / Telegram

The product problem

Connect learning material, progression and student support within one journey.

Stage

A multi-package platform and learning flows are present in source; this is a system description, not a course-enrolment announcement.

Concept illustration: Permanent Academy
A concept illustration, not a screenshot of a running product.

From lesson to recorded progress

An illustrative intended journey, not a demonstration of the current live release.

  1. A learner opens an available cohort module.
  2. Studies the lesson and checks understanding in a quiz.
  3. Progression rules determine the next available step.
  4. Completion connects to certification and learner support.

System components

  • Courses and curriculum: material access, progress, cohort-language selection and shared modules.
  • Assessment and completion: quizzes and rules for progressing to subsequent stages.
  • Certificates: a separate PDF worker and QR-based document verification.
  • Academy Messenger, Telegram bot and retention worker: cohort communication and support workflows.

Architecture & ownership

Next.js serves the interface, Fastify the LMS API; Prisma and PostgreSQL store learning data. Certificate generation, the bot and retention are independent packages.

How can courses, access, progress and communication share a journey while learner data stays private?

What to validate before use

Student data and internal course material remain private. Learning outcomes, accreditation and integration availability are not established by this catalog.

This describes the development scope. This page does not run the product, process payments or verify real-time availability.

Related products, distinct problems

Next step

Discuss a Permanent Academy workflow

Describe the problem, current system, constraints and desired outcome. We agree scope and deliverables before cost and launch.

Discuss the task on Telegram ↗

The link opens a human contact; it does not send a message automatically.