Modules¶
The product is organized as eight center-management modules plus the four IELTS practice skills and the shared question bank / assignments layer.
Center management (the eight modules)¶
| Module | Vietnamese | What the manager does | Status |
|---|---|---|---|
| Classes | Lớp học | Create classes, set level/target band/capacity/fee, assign a teacher, enroll students, generate a weekly schedule | ✅ core (some edits limited) |
| Students | Học viên | Roster with band in→now→goal, class, homeroom teacher, parent contact; per-student profile with trend, strengths, attendance, activity | ✅ read-rich |
| Teachers | Giáo viên | Teacher list with specialties and classes taught | ✅ |
| Schedule | Lịch học | Month-grid calendar of sessions; click a day to see its sessions | ✅ |
| Attendance | Điểm danh | One session at a time: mark present / late / absent (excused or not) / makeup | ✅ core |
| Tuition | Sổ học phí | Per-student fee ledger with paid / partial / overdue; create a charge, record a payment ("ghi đã thu") | ✅ (charge creation added 2026) |
| Cashflow | Sổ thu — chi | Center cash in/out, running net | ✅ |
| Reports | Báo cáo | Course-based metrics: enrollment, tuition collection, attendance, class load, AI usage vs. budget | ✅ |
No online payments — by design
Tuition and cashflow are manual bookkeeping. The manager records what was collected and spent; there is no card processing, no gateway, no automatic charging beyond raising a charge from the class fee at enrollment.
IELTS practice (the four skills)¶
| Skill | How it's graded | AI involvement |
|---|---|---|
| Reading | Auto-graded against the answer key; official band table | None — objective, instant, final |
| Listening | Auto-graded; audio streamed from storage | None — objective, instant, final |
| Writing | AI grades the 4 IELTS criteria (Task/Coherence/Lexis/Grammar); teacher approves | AI band is provisional until approved |
| Speaking | Records audio → transcribes → AI feedback on fluency/criteria; optional real per-phoneme pronunciation on read-aloud; teacher approves | AI band is provisional; pronunciation is measured only on read-aloud |
Every submission also captures integrity/behavior signals (time on task, tab-switches, paste attempts, typing bursts, audio play/seek) so a teacher can spot anomalies. This is tracked for all four skills.
The shared layer: question bank & assignments¶
graph LR
QB["Question bank<br/>(4 skills, publish/draft)"] --> AS["Assignment<br/>(pick items, set due date)"]
AS --> TGT{"Target"}
TGT --> CL["A whole class"]
TGT --> ST["Hand-picked students"]
CL --> HW["Student sees homework"]
ST --> HW
HW --> SUB["Student submits"]
SUB --> GR["Auto-grade or AI + teacher approval"]
GR --> PROG["Assignment progress<br/>(per-student status + band)"]
- Question bank: view / publish / edit / assign; tests are created in a dedicated "Tạo đề" flow (full-page editor per skill, or extract a draft from an image/PDF via OCR).
- Assignments: staff pick items from the bank and target a class (bulk) or hand-picked students (individual), optionally down to a single reading passage or listening section. Completion only flips to submitted when every item is in. Progress is tracked per student with band and submission time.
- Level gating: each test carries one of 8 levels (Beginner → IELTS 7.0+); a student can't open content above their level unless it's explicitly assigned.
Materials & AI settings¶
- Materials (Giáo trình / Tài liệu): syllabus, slides, handouts with inline rich content readable in-app and a visibility control (teachers / students / all).
- AI settings: the manager can enable/disable the AI Tutor for students and set the monthly pronunciation-minutes cap. These are enforced on the server, so the toggle actually gates behavior — not just the UI. See AI features.