How say-lem/nativemed works
Native Med is an API for medical-education courses and products, with enrollment/access management, payments and subscriptions, case-bank access, bookings, and supporting public and admin content. The main user workflow is to reach an API route, request a product or course action, and receive a result; enrollment services also manage course access and confirmation email. The graph emphasizes documented route mounting and sampled enrollment behavior. Other domain modules are represented from the tree and app imports; their internal call paths were not sampled.
Main entry points: app.ts Express API · enrollments.service.ts Enrollment service · enrollments.controller.ts Enrollment controller · enrollments.routes.ts Enrollment routes
Components 28
API runtime
- Express API
src/app.ts - Authentication
src/modules/auth - Contact form
src/modules/contact - Uploads
src/modules/uploads
Learning commerce
- Free products
src/modules/freeProducts - Product catalog
src/modules/catalog - Bookings
src/modules/booking - Payments
src/modules/payments - Subscriptions
src/modules/subscriptions - Enrollments
src/modules/enrollments - Enrollment service
src/modules/enrollments/service/enrollments.service.ts - Enrollment controller
src/modules/enrollments/controller/enrollments.controller.ts - Enrollment routes
src/modules/enrollments/routes/enrollments.routes.ts - Enrollment records
src/modules/enrollments/model/enrollments.model.ts
Learning content
- Courses
src/modules/courses - Live courses
src/modules/liveCourses - Case bank
src/modules/cases - Content management
src/modules/content - Homepage
src/modules/homepage - Reviews
src/modules/reviews - Activities
src/modules/activities - Course records
src/modules/courses/model/courses.model.ts
Shared services
- Environment config
src/config/env.ts - User records
src/modules/auth/model/auth.model.ts - Google Drive
src/config/google-drive.ts - Enrollment email
src/modules/enrollments/email/enrollments.email.service.ts - Email delivery
src/shared/services/email.service.ts
Other components
- API client
Connections 27
- API client → Express API: sends requests
src/app.ts - Express API → Authentication: mounts routes
src/app.ts - Express API → Courses: mounts routes
src/app.ts - Express API → Live courses: mounts routes
src/app.ts - Express API → Case bank: mounts routes
src/app.ts - Express API → Content management: mounts routes
src/app.ts - Express API → Enrollment routes: mounts routes
src/app.ts - Express API → Payments: mounts routes
src/app.ts - Express API → Subscriptions: mounts routes
src/app.ts - Express API → Contact form: mounts routes
src/app.ts - Express API → Reviews: mounts routes
src/app.ts - Express API → Activities: mounts routes
src/app.ts - Express API → Homepage: mounts routes
src/app.ts - Express API → Free products: mounts routes
src/app.ts - Express API → Bookings: mounts routes
src/app.ts - Express API → Product catalog: mounts routes
src/app.ts - Express API → Uploads: mounts routes
src/app.ts - Express API → Environment config: reads config
src/app.ts - Enrollment routes → Enrollment controller: dispatches requests
src/modules/enrollments/routes/enrollments.routes.ts - Enrollment controller → Enrollment service: calls
src/modules/enrollments/controller/enrollments.controller.ts - Enrollment controller → Subscriptions: grants case access
src/modules/enrollments/controller/enrollments.controller.ts - Enrollment service → Enrollment records: reads and writes
src/modules/enrollments/service/enrollments.service.ts - Enrollment service → Course records: reads course data
src/modules/enrollments/service/enrollments.service.ts - Enrollment service → User records: reads user data
src/modules/enrollments/service/enrollments.service.ts - Enrollment service → Google Drive: manages permissions
src/modules/enrollments/service/enrollments.service.ts - Enrollment service → Enrollment email: sends confirmation
src/modules/enrollments/service/enrollments.service.ts - Enrollment email → Email delivery: sends messages
src/modules/enrollments/email/enrollments.email.service.ts