Teado Teacher · Product Requirements Document

Teado Teacher: a new UI/UX on the Cloud theme

A complete redesign of teacher.teado.ai (the same product as teacher.flyer.us, served on the Teado host) using the Cloud theme: one calm, dense, Cloudflare-style shell in FLYER purple, applied to every screen from sign-up and onboarding down to the smallest confirmation popup.

Product
teacher.teado.ai (partner-web)
Design language
Cloud theme
Prototype
173 screens · 198 overlays · EN / VI
Status
PRD v1 · for review
Updated
06 Sep 2026
Research on the live product (80 routes crawled with the test account) · full screen census from partner-web source · clickable prototype · 5 verification passes

Open the clickable prototype →   Start from onboarding   All screens index

1Summary

Teacher.teado.ai today is the FLYER teacher app with a different host name: a Next.js Pages-Router app (partner-web) mixing antd, MUI and Tailwind, a large sidebar with 6 uppercase groups, a dark "Tạo" button, icon-heavy KPI tiles and modal-driven onboarding. It works, but it does not look like one product and it wastes space on 1440-px screens.

This PRD specifies a full re-skin and re-layout on the Cloud theme: a 60-px top bar with the school switcher, a global Create button and a ⌘K search; a 260-px sidebar with five sections in Teacher mode (nine in School mode); and one content pattern (breadcrumb → title → actions → tabs → content) shared by every page. Data tables, KPI cards, chips, drawers and confirmation modals are standardised. Nothing is removed: every route in partner-web and every modal, drawer, popover and tour has a Cloud-theme equivalent in the prototype.

173
screens in the prototype (133 routes, incl. every tab)
198
overlays: modals, drawers, popovers, tours, toasts
0
broken links or JS errors after 5 verification passes
RecommendationShip the Cloud theme as the default layout for the Teado host behind the existing ThemeColor.CLOUD switch, module by module (shell → classes/students/assignments → resources → AI → school setup), keeping the classic theme selectable in Settings for one release.

2Context and research

What teacher.teado.ai is

The Teado host serves the same partner-web codebase as teacher.flyer.us. Two things differ: (1) the host picks the V4 onboarding (Welcome → Role → Basic info → Goals → Workspace ready) instead of FLYER's V3 flow, and (2) Teado has a Teacher mode (lite) and a School mode (full). Lite hides AI assistant, Bingo AI, challenge, exam management, finance and school setup; the sidebar footer shows "Switch to School mode".

Live crawl with the test account

Logged in as 0909469666: a multi-school account gated behind the School portal (4 schools). Work was done in Tung Nguyen's school (Owner · 4 classes · 16 students · 46.6 study hours). 80 routes were crawled in Teacher mode; the table below summarises what the account can reach.

AreaReachable in Teacher modeRedirects to home (School mode only)
Home/ lands on Explore (not a dashboard); /report opens the weekly-report modal on load
Teachingclasses, student-list (+create), assigned-tests, report/attendance, quick-startstudent-management, notification-list, profile routes
Resourcesexplore, program (+create, generate), exams (My library), creator, placement, study-lesson
Toolsflyer-ai (writing/speaking, record, upload), assistant, bingo-ai (page title "UNDEFINED" — untranslated)challenge, school-calendar
Reportsall 20 report sub-pages
Schoolsettings, billing, package, package-ai-speaking, school-portal (+system-performance)centralized-exam (3), tuition (2), bank-account, sepay, teacher/list, invite-teachers, school-setup, school-settings, permission-management, store, course (2), transfer-diamond

Source census

From partner-web/src (branch dev, Sep 2026): 133 page routes in src/pages (excluding /api and _components), 233 modal/drawer/popover/onboarding component files, 7 feature flags (tuition_fees, online_class, teacher_school_exam, teacher_school_game, trial_student, teacher_clone_voice, enable_is_mix) and 15 locale namespaces. Every one of them is mapped in §9.

Reference: current Classes page on teacher.teado.ai (Teacher mode)
Reference: current Assignments page

3What is wrong with the current UI

Screenshots taken on 06 Sep 2026 from teacher.teado.ai with the test account, Teacher mode, school Tung Nguyen's school. Prototype screens are labelled as such.

  1. Three design systems on one page. antd tables and drawers, MUI tabs on class/student detail, Tailwind cards elsewhere. Border radii, font sizes and button heights differ between modules.
    Class detail today: MUI pill tabs, icon KPI tiles, a dark "Lớp trực tuyến" button and a "Chào mừng tới … 👋" title, all in one view
    Classes list today: antd table with grey filter chips and a different button style on the same screen
  2. Sidebar does too much. Six uppercase groups, a dark "Tạo" button that floats above them, a wallet card and an "Add students" button in the footer, plus per-page guide bars. The active item is a grey pill, not the brand colour.
    The sidebar today: dark "Tạo" button, six uppercase groups, "Thêm học sinh" and the wallet card in the footer, grey active pill
    Students page today: guide bar under the top bar, one oversized KPI tile, then filters and dark buttons
  3. No real home. Teacher mode lands on Explore; the report page opens a full-screen weekly-report modal on every login. Teachers have no single place that says "what needs my attention".
    Landing page today is Explore (Khám phá), not a dashboard
    Opening Reports after login: the weekly-report modal covers the whole page
  4. KPI tiles waste space. Big icon + uppercase label + one number per tile; four tiles use a third of the viewport before the table starts.
    Assignments today: two tall tiles for two numbers, then the table starts below the fold
    Prototype: four compact KPI cards in one row, table immediately under
  5. Onboarding is scattered. V4 onboarding pages, a Welcome V3 modal, first-visit modals per route, driver.js tours, a Quick start page and a guide bar all overlap.
    Quick start today: a separate 4-step page with a video, while the guide bar and route tours offer the same guidance elsewhere
    Prototype: one onboarding flow, then a goal-driven Quick start and a single Help menu
  6. Inconsistent overlays. On Teado, "create class" and "assign homework" are full pages with a back arrow, "add students" is a page, the weekly report and class info are modals, and row actions are popovers, with different header, footer and close patterns.
    "Tạo lớp mới" today opens a full page with a back arrow and a footer
    "Giao bài" today also opens a full page, with a floating submit bar; other actions are modals or popovers
  7. Untranslated or leftover copy. Bingo AI page title renders "UNDEFINED"; mixed English/Vietnamese labels inside the same table (e.g. "Practice", "Starters" levels next to Vietnamese headers).
    Bingo AI page today: the header reads "UNDEFINED" and the title is "Chào mừng tới 👋" with no name
    Add students today: English page title "Create Students Page" on a Vietnamese UI
  8. Mode switch is hidden. "Switch to School mode" is a sidebar item at the bottom with no explanation of what changes.
    "Phiên bản cho trườ…" is truncated at the bottom of the sidebar; nothing explains that it unlocks exams, finance and school setup

4Goals, non-goals and success metrics

Goals

Non-goals

Success metrics (first 8 weeks after rollout on the Teado host)

MetricToday (estimate)Target
Time to first assignment for a new teacher (sign-up → assign)~2 dayssame session (< 15 min)
Quick start completion (all steps)~20%45%
Weekly active teachers who open Reports~30%50%
Support tickets tagged "cannot find"baseline−40%
Teacher → School mode conversionsbaseline+25%

5Design language: the Cloud theme

Tokens are taken verbatim from the Cloud theme frames at roadmap.flyer.vn/cloudtheme and from src/styles/cloud-theme.css in the feat/cloud-theme branch. Inter is the UI face; body text is 13.5 px; borders are hairlines (#e4e4e7); there are no drop shadows except on overlays.

Brand#6A309B
Brand 2#8A4BC0
Brand soft#F3EBFA
Ink#1b1b1f
Ink 2#3f3f46
Muted#71717a
Line#e4e4e7
Content bg#fafafa
Green#127a41 / #e6f6ec
Amber#92600a / #fdf3e0
Red#b42318 / #fdeaea
Blue#1d4ed8 / #e8efff

Level colours (fixed, unchanged from production)

The seven CEFR levels keep the colours they already have in the product. They come from LEVEL_OBJECT in src/constants.ts, which is duplicated as LEVEL_OBJECT_V3 and cefrLevelOptions — the redesign reads one shared map so a level never changes colour between screens. Chips are solid fill, white text, 6 px radius, 12 px/600, as production renders them. Exam names (Starters, Movers, Flyers, KET, PET) keep their own outline tag beside the CEFR chip.

Pre-A1#9E5FDD
A1#47C199
A2#F95F3C
B1#33CF4B
B2#4C70E8
C1#4FBAAD
C2#AD2CCC
ElementSpec
Top bar60 px, white, hairline bottom. Left: cloud mark, product name, school switcher, mode chip. Right: Create (brand), AI grading, Help, coins chip, bell with count, avatar.
Sidebar260 px, white, hairline right. ⌘K search, items 13.5 px/500, 8 px radius; active = brand-soft background + brand text; section labels 11 px uppercase #8e8e96. Footer: mode switch, Settings, wallet.
Page headBreadcrumb 13.5 px muted → H1 24 px/650 → sub 13.5 px muted; actions right-aligned; optional tabs row with brand underline (inset 2 px).
Content#fafafa, 24 px × 40 px padding. Cards white, 10 px radius, hairline. Grid gaps 16 px.
KPI cardLabel 12.5 px muted (+ optional chip), value 28 px/650 tabular, delta line 12.5 px with ▲/▼ in green/red.
TableHeader #fafafa 12 px/600 muted, rows 11 px padding, hairline #eeeef0, hover #fcfcfd, right-aligned numerics, row ⋮ actions, pager bottom-right.
ButtonsPrimary brand / secondary white with #d4d4d8 / danger outline red / text brand. 8 px radius, 13.5 px/600; sizes xs, sm, default, lg.
Chips6 px radius, 11.5 px/600, tonal pairs (green, amber, red, purple, blue, gray, outline); optional status dot.
Level chipFixed per CEFR level (see palette above), solid fill + white text, 12 px/600, 6 px radius. Exam-name tag sits to its left as an outline tag in the exam colour.
OverlaysModal 560 px (sm 440 / lg 760 / xl 960) 14 px radius; drawer 640 px right (sm 460 / lg 860); popover 300 px anchored; toasts top-right with left colour bar; tour spotlight + card.
IconsLine icons, 16 px in nav and buttons, 1.8 px stroke, currentColor. No emoji in UI chrome.
New Home in Teacher mode (prototype)
Class detail with 11 tabs (prototype)

6Information architecture

The sidebar is rebuilt around what a teacher does daily. Items keep their existing routes; only grouping, order and labels change. School mode adds four sections; Teacher mode stays short.

Route map

All 133 routes stay as they are. Detail pages get query-param tabs (?tab=) instead of MUI tab indices so that every tab is deep-linkable; the class page has 11 tabs, the student page 9, settings 4, billing 3, Bingo AI 3, store 2, tuition 5, explore 8.

7Shell and global patterns

8Key flows

8.1 Sign-up → onboarding → first assignment

1Sign up (phone + password)
2OTP verify (6 boxes)
3Onboarding: Welcome
4Choose role: Teacher / School manager
5Basic info + school select
6Goal (4 cards)
7Workspace ready (3 tiles)
8Explore + Welcome modal
9Quick start (8 steps, coins)
10Create class drawer → success → Add students
11Assign drawer (3 steps) → Zalo share

Onboarding runs full-screen on the Cloud grey background with a 3-px brand progress bar, one card per step, Back/Skip/Continue in the footer, and the language and log-out controls in the header. After the last step the user lands on Explore with the Welcome modal; Quick start is personalised by the chosen goal and shows a coin reward. First-visit prompts, tours and "Tour finished" share one visual (§10).

8.2 Assign homework (drawer, 3 steps)

Step 1 chooses the source (Teado library / My library / Programs / Playlists) with level, skill and type filters and inline Preview; Step 2 picks the class or individual students, start time, deadline and the four toggles (test mode, hide answers, late submission, notify parents); Step 3 confirms with the Zalo QR share card. The same drawer opens from Home, Explore cards, class tabs, student profile, Bingo AI and the Create menu.

8.3 AI grading

Hub → Writing tool (type or photos) or Speaking (record / upload, grading-type modal) → progress modal → result page with criteria bands, corrections table, transcript, pronunciation heatmap, detail modals (fluency, pronunciation, pitch), teacher note and "assign follow-up practice". Credits are shown in one note at the top of every grading page; wallet-permission and insufficient-balance modals are standardised.

8.4 Attendance and rewards inside the class

Attendance rides on the class timetable (settings drawer); the current session is a table with a 4-way segmented status per student, notes modal, unsaved-changes guard and finish confirmation; the Overview sub-tab and the Attendance report share the same table. Rewards use Wisdom Stones: reward modal with criteria tiles, groups, history drawer and the school Reward store (items + redemption approvals).

8.5 School mode: exams and tuition

Exam management is a 4-step create page (info → participants → structure & sessions → review) with the session-settings modal, a live Exam supervisor table and a score sheet with automatic shield conversion and certificates. Tuition is a three-column create page (set-up · students · preview), invoice groups, the invoice modal with QR payment, notification settings popover and SePay bank connection.

Assign homework drawer, step 1
AI Writing result (IELTS)
Class · Attendance tab
Tuition management (School mode)

9Screen inventory — 100% coverage

Every row links to the live prototype. "Screen" rows are routes or deep-linkable tabs; "Overlay" rows are modals, drawers, popovers, tours or palettes, opened on top of a class page. The right column names the route or component in partner-web that the row replaces, so engineering can tick them off one by one.

Totals173 screens · 198 overlays · 15 groups · every overlay also has a canonical page URL (for example teacher.teado.ai/create-school), reachable from the ↗ icon in its header, so any pop-up can be linked, shared and deep-tested on its own. Generated from teado-cloud-theme/manifest.js, which is also what the in-app "All screens" index and the verification script read — the three cannot drift apart.

Auth & onboarding 15 screens · 4 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Log inScreenteacher.teado.ai/loginpages/login.tsx
2Sign upScreenteacher.teado.ai/signuppages/signup.tsx
3Verify account (OTP)Screenteacher.teado.ai/verify-accountpages/verify-account.tsx
4Forgot passwordScreenteacher.teado.ai/forgotpages/forgot.tsx
5Reset passwordScreenteacher.teado.ai/forgot/resetpages/forgot.tsx (step 2)
6Email verifiedScreenteacher.teado.ai/verification/emailpages/verification/email.tsx
7Onboarding · WelcomeScreenteacher.teado.ai/onboardingOnboarding/v4/steps/WelcomeStep
8Onboarding · Choose roleScreenteacher.teado.ai/onboarding/roleOnboarding/v4/steps/ChooseRoleStep
9Onboarding · Basic infoScreenteacher.teado.ai/onboarding/infoOnboarding/v4/steps/BasicInfoStep
10Onboarding · GoalsScreenteacher.teado.ai/onboarding/goalsOnboarding/v4/steps/GoalsStep
11Onboarding · Workspace readyScreenteacher.teado.ai/onboarding/readyOnboarding/v4/steps/WorkspaceReadyStep
12Onboarding · Create first classScreenteacher.teado.ai/onboarding/create-classpages/onboarding/create-class/index.tsx
13Onboarding · Add studentsScreenteacher.teado.ai/onboarding/create-class/CL48621pages/onboarding/create-class/[classCode].tsx
14School portalScreenteacher.teado.ai/school-portalpages/school-portal/index.tsx
15School portal · System performanceScreenteacher.teado.ai/school-portal/system-performancepages/school-portal/system-performance
16Welcome modal (after onboarding)Overlayteacher.teado.ai/welcome-v3Modal/WelcomeV3Modal
17Welcome parents popupOverlayteacher.teado.ai/welcome-parentModalWelcomeParentPopup
18Session expiredOverlayteacher.teado.ai/session-expiredcommon/SessionExpiredModal
19Anonymous grading · login promptOverlayteacher.teado.ai/anon-loginflyer-ai/anonymous/LoginModal

Home & quick start 3 screens · 24 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Home dashboardScreenteacher.teado.ai/pages/report/index.tsx (home)
2Quick startScreenteacher.teado.ai/quick-startpages/quick-start/index.tsx
3Trial countdown popupOverlayteacher.teado.ai/trial-countdownquick-start/CompletePopup + FreeTrialPopup
4What's newOverlayteacher.teado.ai/whats-newModal/WhatNews
5User guide drawerOverlayteacher.teado.ai/user-guideHome/UserGuide/UserGuideDrawerV2
6Guide videoOverlayteacher.teado.ai/youtubeHome/UserGuide/YoutubeModal + IframeModal
7First-visit guide promptOverlayteacher.teado.ai/first-timeFirstTimeOnboardingModal
8Interactive guides indexOverlayteacher.teado.ai/tours-indexdriver.js tours (all *_driver_steps)
9Account popoverOverlayteacher.teado.ai/accountlayouts/main/AccountPopover
10Language popoverOverlayteacher.teado.ai/lang-popoverlayouts/main/LanguagePopover
11Notifications popoverOverlayteacher.teado.ai/notificationslayouts/main/MenuPopover (notifications)
12School switcherOverlayteacher.teado.ai/school-switcherNavSelectSchool
13Create menuOverlayteacher.teado.ai/create-menuSidebar "+ Create" button
14Help menuOverlayteacher.teado.ai/help-menuquick_access (Help)
15Command paletteOverlayteacher.teado.ai/palette⌘K quick search (new)
16Report a bugOverlayteacher.teado.ai/report-bugModal/ReportBug
17Feedback surveyOverlayteacher.teado.ai/feedbackimprove-survey-popup + FeedbackModal
18Contact supportOverlayteacher.teado.ai/contactquick_access.contact
19Download app QROverlayteacher.teado.ai/download-qrdownload_qr
20Activate codeOverlayteacher.teado.ai/active-codelayouts/main/ActiveCodeModal
21Change phone numberOverlayteacher.teado.ai/update-phoneModal/ModalUpdatePhoneNumber
22Premium requiredOverlayteacher.teado.ai/premiumModal/ModalPremium
23Seat limit reachedOverlayteacher.teado.ai/limit-userModal/ModalLimitUser
24Teado upgrade (lite → full)Overlayteacher.teado.ai/teado-upgradeModal/UpgradeTeadoToolModal + teadoTool
25Year recapOverlayteacher.teado.ai/recaprecap_2023 modal
26Content & copyright policyOverlayteacher.teado.ai/content-policycontent-policy/ContentPolicyModal
27Notification listScreenteacher.teado.ai/notification-listpages/notification-list

Interactive guides (driver.js tours) 0 screens · 19 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Guides index (15 tours · 107 steps)Overlayteacher.teado.ai/tours-indexall *_driver_steps tours
2Start guide promptOverlayteacher.teado.ai/tour-startonboarding:replay.start_title
3Replay guide?Overlayteacher.teado.ai/tour-replayonboarding:replay.confirm_title
4Guide finishedOverlayteacher.teado.ai/tour-doneonboarding/ReplayTourCompleteModal
5Guide · Home & navigationOverlayteacher.teado.ai/tour-homeonboarding:home_driver_steps
6Guide · Create a classOverlayteacher.teado.ai/tour-create_classonboarding:create_class_v4_driver_steps
7Guide · Invite studentsOverlayteacher.teado.ai/tour-create_studentonboarding:create_student_v4_driver_steps
8Guide · Explore testsOverlayteacher.teado.ai/tour-explore_testsonboarding:explore_tests_v4_driver_steps
9Guide · Explore programsOverlayteacher.teado.ai/tour-programonboarding:program_v4_driver_steps
10Guide · Build a program with AIOverlayteacher.teado.ai/tour-program_builderonboarding:program_steps
11Guide · Assign homeworkOverlayteacher.teado.ai/tour-assignmentsonboarding:assignments_driver_steps
12Guide · Create an exerciseOverlayteacher.teado.ai/tour-my_libraryonboarding:my_library_driver_steps
13Guide · Grade Writing with AIOverlayteacher.teado.ai/tour-ai_grading_writingonboarding:ai_grading_writing_driver_steps
14Guide · Grade Speaking with AIOverlayteacher.teado.ai/tour-ai_grading_speakingonboarding:ai_grading_speaking_driver_steps
15Guide · Auto-assign a programOverlayteacher.teado.ai/tour-assign_scheduleonboarding:assign_schedule_driver_steps
16Guide · Rewards (Wisdom Stones)Overlayteacher.teado.ai/tour-awardsonboarding:awards_driver_steps
17Guide · Build an AI Teacher dialogueOverlayteacher.teado.ai/tour-ai_teacher_builderonboarding:ai_teacher_builder_driver_steps
18Guide · Exam managementOverlayteacher.teado.ai/tour-centralized_examonboarding:centralized_exam_steps
19Guide · Tuition managementOverlayteacher.teado.ai/tour-tuitiononboarding:tuition_management_steps

Classes 13 screens · 21 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Classes listScreenteacher.teado.ai/classespages/classes/index.tsx
2Class · OverviewScreenteacher.teado.ai/classes/1?tab=overviewpages/[classId]/dashboard.tsx tab 0
3Class · StudentsScreenteacher.teado.ai/classes/1?tab=studentsClassDashboardStudentList
4Class · AssignmentsScreenteacher.teado.ai/classes/1?tab=assignmentsClassAssignTest
5Class · ProgramScreenteacher.teado.ai/classes/1?tab=programdashboard/ClassProgram
6Class · Auto-assign scheduleScreenteacher.teado.ai/classes/1?tab=scheduleClassProgram · assign schedule tab
7Class · AttendanceScreenteacher.teado.ai/classes/1?tab=attendancedashboard/Attendance
8Class · RewardsScreenteacher.teado.ai/classes/1?tab=awardsdashboard/Awards
9Class · Grade sheetScreenteacher.teado.ai/classes/1?tab=gradesstudent_tab.grade_sheet (tab 5)
10Class · HistoryScreenteacher.teado.ai/classes/1?tab=historyClassHistory
11Class · Online classScreenteacher.teado.ai/classes/1?tab=calendarcalendar tab (tab 8)
12Class · Point detailsScreenteacher.teado.ai/classes/1?tab=pointsClassPointDetail / PointDetailsTable
13Class · Placement test resultsScreenteacher.teado.ai/classes/1/placement-testpages/[classId]/placement-test.tsx
14Create classOverlayteacher.teado.ai/create-classFlyerComponents/CreateClassDrawer + ModalCreateClass
15Class createdOverlayteacher.teado.ai/create-class-successModalCreateClassSuccess
16Edit classOverlayteacher.teado.ai/edit-classModalEditClass
17Class infoOverlayteacher.teado.ai/class-infoClassInfoModal
18Class actionsOverlayteacher.teado.ai/class-actionsclass row ⋮ menu
19Remove classOverlayteacher.teado.ai/remove-classModalRemoveClass
20Link online classOverlayteacher.teado.ai/link-online-classonline class link (Google Meet)
21Unlink online classOverlayteacher.teado.ai/confirm-unlinkunlink confirm
22Delete auto-assign scheduleOverlayteacher.teado.ai/confirm-delete-scheduleClassProgram/ConfirmDeleteScheduleModal
23Generic confirmOverlayteacher.teado.ai/confirm-deleteClassProgram/ConfirmModal
24Timetable settingsOverlayteacher.teado.ai/timetable-settingsAttendance/TimetableSettingsDrawer
25Edit attendanceOverlayteacher.teado.ai/edit-attendanceAttendance/ModalEditAttendance + ModalAttendanceDetail
26Finish attendanceOverlayteacher.teado.ai/finish-attendanceAttendance/ModalFinishConfirmation
27Unsaved attendanceOverlayteacher.teado.ai/unsaved-attendanceAttendance/ModalUnsavedMarks
28Select class for attendanceOverlayteacher.teado.ai/select-class-attendancereport/attendance/ModalSelectClassToTakeAttendance
29Reward studentOverlayteacher.teado.ai/give-pointsAwards/GivePointModal
30Add reward criterionOverlayteacher.teado.ai/add-skillAwards/AddSkillModal
31Create groupOverlayteacher.teado.ai/create-groupAwards/CreateGroupModal
32Group detailOverlayteacher.teado.ai/group-detailAwards/GroupDetailDrawer
33Reward historyOverlayteacher.teado.ai/reward-historyAwards/HistoryDrawer
34Student achievements reportOverlayteacher.teado.ai/points-reportAwards points report

Students 13 screens · 18 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Students listScreenteacher.teado.ai/student-listpages/student-list/index.tsx
2Add students (page)Screenteacher.teado.ai/student-list/createpages/student-list/create.tsx
3Student management (seats)Screenteacher.teado.ai/student-managementpages/student-management/index.tsx
4Student · OverviewScreenteacher.teado.ai/classes/1/students/1?tab=overviewpages/[classId]/students/[studentId] OVERVIEW
5Student · ListeningScreenteacher.teado.ai/classes/1/students/1?tab=listeningTabType.LISTENING
6Student · ReadingScreenteacher.teado.ai/classes/1/students/1?tab=readingTabType.READING
7Student · WritingScreenteacher.teado.ai/classes/1/students/1?tab=writingTabType.WRITING
8Student · SpeakingScreenteacher.teado.ai/classes/1/students/1?tab=speakingTabType.SPEAKING
9Student · PracticeScreenteacher.teado.ai/classes/1/students/1?tab=practiceTabType.PRACTICE
10Student · Assigned testsScreenteacher.teado.ai/classes/1/students/1?tab=assignedTabType.ASSIGNED_TEST
11Student · Mistakes listScreenteacher.teado.ai/classes/1/students/1?tab=mistakesTabType.MISTAKES_LIST
12Student · TuitionScreenteacher.teado.ai/classes/1/students/1?tab=tuitionstudents/_components/StudentTuitionTab
13Add students drawerOverlayteacher.teado.ai/create-studentsFlyerComponentsV2/CreateStudents (drawer)
14Accounts createdOverlayteacher.teado.ai/create-students-successCreateStudents/CreateSuccessPopup
15Add to classOverlayteacher.teado.ai/add-to-classModelCreateStudent/ModalGetClass + student_limit
16Move studentsOverlayteacher.teado.ai/move-studentModalMoveStudent
17Edit studentOverlayteacher.teado.ai/edit-studentModalEditStudent
18Student actionsOverlayteacher.teado.ai/student-actionsstudent row ⋮ menu
19Bulk student actionsOverlayteacher.teado.ai/bulk-student-actionsbulk actions
20Remove studentOverlayteacher.teado.ai/remove-studentremove student confirm
21Reset passwordOverlayteacher.teado.ai/reset-passwordModal/ModalResetPassword
22Send passwords to parentsOverlayteacher.teado.ai/send-passwordModal/ModalSendPasswordUser + SendMailSuccessPopup
23Extend accountOverlayteacher.teado.ai/extend-accountModal/ModalExtendAccount
24Create userOverlayteacher.teado.ai/create-userstudent-management/CreateUser
25Delete userOverlayteacher.teado.ai/delete-userModal/ModalDeleteUser
26Refund accountsOverlayteacher.teado.ai/refund-listRefund-Upgrade/StudentRefundListModal + WarningRefundAccountsPopup
27Confirm refundOverlayteacher.teado.ai/refund-confirmRefund-Upgrade/ConfirmRefundPopup + RefundSuccessPopup
28Upgrade accountsOverlayteacher.teado.ai/upgrade-listRefund-Upgrade/UpgradeStudentListModal + ConfirmUpgradePopup + UpgradeSuccessPopup
29No student profile noticeOverlayteacher.teado.ai/no-profileModalNoProfileStudent
30Monthly report (parent email)Screenteacher.teado.ai/monthly-report/1monthly-report/[id]
31Send report to parentsOverlayteacher.teado.ai/send-parent-reportsend report to parents

Assignments 9 screens · 12 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Assignments listScreenteacher.teado.ai/assigned-testspages/assigned-tests/index.tsx
2Assignment detailScreenteacher.teado.ai/assigned-tests/1pages/assigned-tests/[id].tsx
3Assignments · parent viewScreenteacher.teado.ai/assigned-tests/parentpages/assigned-tests/parent
4Assign homework · Step 1 choose resourceOverlayteacher.teado.ai/assign-drawerAssignTest/AssignTestDrawer Step1
5Assign homework · Step 2 set upOverlayteacher.teado.ai/assign-drawer-2AssignTestDrawer Step2
6Assign homework · Step 3 done + ZaloOverlayteacher.teado.ai/assign-drawer-3AssignTestDrawer Step3 (Zalo card)
7Assignment actionsOverlayteacher.teado.ai/assignment-actionsassignment ⋮ menu
8Level filter · CEFROverlayteacher.teado.ai/level-filterlevel filter (Pre-A1 → C2)
9CEFR level keyOverlayteacher.teado.ai/cefr-keyCEFR mapping (new)
10Edit assignmentOverlayteacher.teado.ai/edit-assignmentedit deadline
11Delete assignmentOverlayteacher.teado.ai/delete-assignmentModal/ModalDeleteAssignTest
12Share to ZaloOverlayteacher.teado.ai/share-zaloZalo share card
13Submitted listOverlayteacher.teado.ai/submitted-listModal/ModalSubmittedList
14Preview testOverlayteacher.teado.ai/preview-checkpointPreviewCheckPoint/Popover
15Manual grading (Writing)Screenteacher.teado.ai/give-score/1pages/give-score/[id]
16Manual grading · IELTS writingScreenteacher.teado.ai/give-score/ielts-writing-test-result/1give-score/ielts-writing-test-result/[id]
17Grade submittedOverlayteacher.teado.ai/grade-successassigned-tests/ModalGradeSuccess
18Test resultScreenteacher.teado.ai/test-result/1pages/test-result/[testResultId]
19Test results (alias)Screenteacher.teado.ai/test-results/1pages/test-results/[id]
20Practice test result (audio)Screenteacher.teado.ai/practice-test-result/1pages/practice-test-result/[id]
21Study lesson resultScreenteacher.teado.ai/lessons/result/1pages/lessons/result/[id]

Resources 25 screens · 15 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1ExploreScreenteacher.teado.ai/explorepages/explore/index.tsx
2Explore · Topic talkScreenteacher.teado.ai/explore?t=talkexplore · TopicTalk
3Explore · StudyScreenteacher.teado.ai/explore?t=studyexplore · Study mode
4Explore · ProgramsScreenteacher.teado.ai/explore?t=programsexplore · Programs mode
5Explore · Video lessonsScreenteacher.teado.ai/explore?t=videoexplore · VideoLessons
6Explore · DocumentsScreenteacher.teado.ai/explore?t=docsexplore · Documents mode
7Explore · AI Speaking gradingScreenteacher.teado.ai/explore?t=ai-speakingexplore · AI Speaking mode
8Explore · AI Writing gradingScreenteacher.teado.ai/explore?t=ai-writingexplore · AI Writing mode
9Explore · My playlistsScreenteacher.teado.ai/explore?t=playlistsexplore · MyPlaylistContainer
10Test hover preview (on every card)Overlayteacher.teado.ai/preview-checkpointLibraryCard hover + PreviewCheckPoint/Popover
11Topic talk previewOverlayteacher.teado.ai/topic-previewTopicTalk card preview
12Video lesson previewOverlayteacher.teado.ai/video-previewVideoLessons card preview
13Study lesson previewOverlayteacher.teado.ai/study-previewStudy card preview
14Test detailScreenteacher.teado.ai/explore/1pages/explore/[id].tsx
15PlaylistScreenteacher.teado.ai/explore/playlist/1pages/explore/playlist/[id].tsx
16Create / edit playlistOverlayteacher.teado.ai/create-playlistModal/ModalCreateUpdatePlaylist
17Add to playlistOverlayteacher.teado.ai/add-to-playlistModal/ModalAddCheckpointToPlaylist
18Study lessonsScreenteacher.teado.ai/study-lessonpages/study-lesson/index.tsx
19Reminder scheduleOverlayteacher.teado.ai/reminder-schedulestudy-lesson/SetupReminderScheduleModal
20Full previewScreenteacher.teado.ai/preview/checkpoint/1pages/preview/checkpoint/[id]
21WorksheetsScreenteacher.teado.ai/preview/checkpoint/1/worksheetspages/preview/checkpoint/[id]/worksheets
22Programs (4-up cards, hover preview)Screenteacher.teado.ai/programpages/program/index.tsx
23Programs · My programsScreenteacher.teado.ai/program?t=mineprogram · My programs tab
24Programs · School programsScreenteacher.teado.ai/program?t=schoolprogram · School programs tab
25Programs · CommunityScreenteacher.teado.ai/program?t=communityprogram · community tab
26Program detail (units · lessons · exercises)Screenteacher.teado.ai/program/1pages/program/[id]/index.tsx
27Create program from blankScreenteacher.teado.ai/program/createpages/program/create
28Generate program with AIScreenteacher.teado.ai/program/generatepages/program/generate
29Program builderScreenteacher.teado.ai/program/edit/3pages/program/edit/[id]
30Auto-assign scheduleScreenteacher.teado.ai/program/1/assign-schedulepages/program/[id]/assign-schedule
31Program previewOverlayteacher.teado.ai/program-previewprogram/ProgramPreviewPopover
32Share programOverlayteacher.teado.ai/share-programprogram/ShareProgramPopover
33Edit unitOverlayteacher.teado.ai/edit-unitprogram/EditProgramModal
34Lesson infoOverlayteacher.teado.ai/lesson-infoprogram/UnitDetail/ModalInfoLesson
35Add exercise to lessonOverlayteacher.teado.ai/add-resourceprogram · add resource
36Publish programOverlayteacher.teado.ai/publish-programpublish program
37Program pending reviewOverlayteacher.teado.ai/program-pendingShareProgramPopover/ProgramPendingReviewModal
38Placement tests · new studentsScreenteacher.teado.ai/placementpages/placement/index.tsx
39Placement tests · testsScreenteacher.teado.ai/placement?t=testsplacement · tests
40Send placement testOverlayteacher.teado.ai/send-placementModalSendPlacement (tabs copy link / email / QR)

My library & creator 11 screens · 28 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1My library · ExercisesScreenteacher.teado.ai/examspages/exams/index.tsx (my-exams)
2My library · ResourcesScreenteacher.teado.ai/exams?t=docsmy-exams/document (Resources)
3My library · Shared with meScreenteacher.teado.ai/exams?t=sharedmy-exams/ListOfSharedExamsModal
4My library · AI teachersScreenteacher.teado.ai/exams?t=aiAI teachers list
5Document viewerScreenteacher.teado.ai/document/1pages/document/[id]
6Upload resourcesOverlayteacher.teado.ai/upload-documentdocument/UploadDocumentModal
7Edit documentOverlayteacher.teado.ai/edit-documentdocument/EditDocumentModal
8Share documentOverlayteacher.teado.ai/share-documentdocument/DocumentShareModal
9Document actionsOverlayteacher.teado.ai/document-actionsdocument actions (⋮)
10Play slidesOverlayteacher.teado.ai/play-slidesplay slides
11Exercise actionsOverlayteacher.teado.ai/exercise-actionsexercise actions (⋮)
12Change thumbnailOverlayteacher.teado.ai/update-imagemy-exams/ModalUpdateImage
13Select question type (13 types)Screenteacher.teado.ai/creator/select-question-typepages/creator/select-question-type
14Exercise editorScreenteacher.teado.ai/creator/1pages/creator/[id].tsx
15Add questionScreenteacher.teado.ai/creator/1/add-questionpages/creator/[id]/add-question
16Generate questions with AIOverlayteacher.teado.ai/ai-generateAIQuestionGenerator (+ SelectDocumentModal)
17Generating…Overlayteacher.teado.ai/generatingLoadingCreateQuestion
18Digitise paper testOverlayteacher.teado.ai/extract-documentcreator/ExtractDocumentModal + PdfUploadModal
19Add imageOverlayteacher.teado.ai/image-uploadQuestionMedia/ImageUploadModal
20Add audioOverlayteacher.teado.ai/audio-uploadQuestionMedia/AudioUploadModal
21Add videoOverlayteacher.teado.ai/video-uploadQuestionMedia/VideoUploadModal
22File limit noticeOverlayteacher.teado.ai/file-limitModal/ModalFileLimit
23Interactive video question drawerOverlayteacher.teado.ai/question-drawer-videoQuestionType/InteractiveVideo/DrawerQuestionTypeInteractiveVideo
24Audio response question drawerOverlayteacher.teado.ai/question-drawer-audioQuestionType/AudioResponse/DrawerQuestionTypeAudioResponse
25Advanced AI grading (open-ended)Overlayteacher.teado.ai/advanced-ai-gradingQuestionType/OpenEnded/AdvancedAIGradingModal
26Exercise settingsOverlayteacher.teado.ai/exercise-settingscreator/common/BuilderModal (settings)
27Choose themeOverlayteacher.teado.ai/choose-themecreator/ChooseThemePopover
28Share exerciseOverlayteacher.teado.ai/share-exercisecreator/SharePopover
29Publish exerciseOverlayteacher.teado.ai/publish-exercisemy-exams/publish-modal (+ PublishBingoSubjectModal)
30Save as draft?Overlayteacher.teado.ai/back-draftEditorHeader/BackModal + BackModalDraft
31Community reviewScreenteacher.teado.ai/review/1pages/review/[id] + ModalRejectOrAcceptCheckPoint
32Approve exerciseOverlayteacher.teado.ai/approve-checkpointCommunityApprovalModal
33Reject exerciseOverlayteacher.teado.ai/reject-checkpointreject reason
34AI teacher builderScreenteacher.teado.ai/creator/ai-teacher-builderpages/creator/ai-teacher-builder
35AI teacher detailScreenteacher.teado.ai/creator/ai-teacher/1pages/creator/ai-teacher/[id]
36AI teacher savedOverlayteacher.teado.ai/build-teacherAITeacher/BuildTeacherModal
37Choose AI characterOverlayteacher.teado.ai/character-selectAITeacher/CharacterSelectionModal
38Clone voiceOverlayteacher.teado.ai/voice-cloneAITeacher/VoiceClone/VoiceCloneModal
39Preview dialogueOverlayteacher.teado.ai/ai-teacher-previewAI teacher preview

AI grading & assistant 21 screens · 11 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1AI grading hubScreenteacher.teado.ai/flyer-aipages/flyer-ai/index.tsx
2Writing historyScreenteacher.teado.ai/flyer-ai/writingpages/flyer-ai/writing/index.tsx
3Grade a Writing taskScreenteacher.teado.ai/flyer-ai/writing/toolpages/flyer-ai/writing/tool
4Writing result · IELTSScreenteacher.teado.ai/flyer-ai/writing/ielts/1pages/flyer-ai/writing/ielts/[id]
5Writing result · KET/PETScreenteacher.teado.ai/flyer-ai/writing/ket-pet/1pages/flyer-ai/writing/ket-pet/[id]
6Writing result (generic)Screenteacher.teado.ai/flyer-ai/writing/1pages/flyer-ai/writing/[id]
7Speaking historyScreenteacher.teado.ai/flyer-ai/speakingpages/flyer-ai/speaking/index.tsx
8Record speakingScreenteacher.teado.ai/flyer-ai/speaking/recordpages/flyer-ai/speaking/record
9Upload recordingScreenteacher.teado.ai/flyer-ai/speaking/uploadpages/flyer-ai/speaking/upload
10Speaking result · YLEScreenteacher.teado.ai/flyer-ai/speaking/1pages/flyer-ai/speaking/[id]
11Speaking result · IELTSScreenteacher.teado.ai/speaking-test-result/ielts/1pages/speaking-test-result/ielts/[id]
12Speaking result · KET/PETScreenteacher.teado.ai/speaking-test-result/ket-pet/1pages/speaking-test-result/ket-pet/[id]
13Speaking test resultScreenteacher.teado.ai/speaking-test-result/1pages/speaking-test-result/[id]
14Topic talk resultScreenteacher.teado.ai/topic-talk-result/1pages/topic-talk-result/[id]
15Choose grading typeOverlayteacher.teado.ai/select-grade-typespeaking/record/ModalSelectTypeGraded
16Wallet permission warningOverlayteacher.teado.ai/grading-warningspeaking/record/ModalGradingWarning
17Insufficient balanceOverlayteacher.teado.ai/no-balanceinsufficient balance
18Save recordingOverlayteacher.teado.ai/save-recordspeaking/record/ModalSaveRecord
19Edit recordingOverlayteacher.teado.ai/edit-recordflyer-ai/ModalEditRecord
20Grading with AI…Overlayteacher.teado.ai/grading-progressgrading in progress (loading)
21Fluency detailOverlayteacher.teado.ai/fluency-detailspeaking/detail/modal/Fluency
22Pronunciation detailOverlayteacher.teado.ai/pronunciation-detailspeaking/detail/modal/Pronunciation
23Pitch variation detailOverlayteacher.teado.ai/pitch-detailspeaking/detail/modal/PitchVariation
24Export popoverOverlayteacher.teado.ai/export-popoverExportIeltsSpeakingPopover + writing/ExportPopover
25Transcript popoverOverlayteacher.teado.ai/transcript-popoverTranscriptPopover
26Public AI grading (anonymous)Screenteacher.teado.ai/flyer-ai-anonymouspages/flyer-ai-anonymous + free-demo
27AI assistantScreenteacher.teado.ai/assistantpages/assistant/index.tsx
28AI assistant · conversationScreenteacher.teado.ai/assistant/1pages/assistant/[id]
29Bingo AI · Student competenceScreenteacher.teado.ai/bingo-ai?tab=sispages/bingo-ai (SIS tab)
30Bingo AI · Competence profileScreenteacher.teado.ai/bingo-ai?tab=sis&student=1bingo-ai student profile
31Bingo AI · Auto-assignScreenteacher.teado.ai/bingo-ai?tab=co_teacherpages/bingo-ai (CO_TEACHER tab)
32Bingo AI · After-grading loopScreenteacher.teado.ai/bingo-ai?tab=looppages/bingo-ai (LOOP tab)

Challenge & games 3 screens · 3 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1ChallengesScreenteacher.teado.ai/challengepages/challenge/index.tsx
2Challenge detail / reportScreenteacher.teado.ai/challenge/X7K2Ppages/challenge/[code].tsx
3Create challengeOverlayteacher.teado.ai/create-challengeChallenge/ModalCreateChallenge
4Challenge createdOverlayteacher.teado.ai/challenge-successChallenge/ModalCreateChallengeSuccess
5End challenge sessionOverlayteacher.teado.ai/end-challengeend session
6GamesScreenteacher.teado.ai/gamessidebar Games (teacher_school_game)

Reports 21 screens · 3 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Reports hubScreenteacher.teado.ai/reportpages/report/index.tsx
2Weekly report (page)Screenteacher.teado.ai/report/weekly-reportreport/weekly-report + modal
3Weekly report (modal)Overlayteacher.teado.ai/weekly-reportviews/report/weekly-report/modal
4Send weekly report to teachersOverlayteacher.teado.ai/weekly-report-teachersweekly-report/teacher-popup + modal-list
5Weekly report · teacher copyScreenteacher.teado.ai/weekly-report/1pages/weekly-report/[id]
6Self-study studentsScreenteacher.teado.ai/report/activitiesreport/activities
7Activity timelineOverlayteacher.teado.ai/activity-popupactivities/ActivityPopup
8Attendance reportScreenteacher.teado.ai/report/attendancereport/attendance
9Average accuracy rateScreenteacher.teado.ai/report/average-accuracy-ratereport/average-accuracy-rate
10Average scoreScreenteacher.teado.ai/report/average-scorereport/average-score
11Classes · low study timeScreenteacher.teado.ai/report/class-low-study-timereport/class-low-study-time
12Classes · low completionScreenteacher.teado.ai/report/class-low-test-completionreport/class-low-test-completion
13Class ranking · accuracyScreenteacher.teado.ai/report/classes-accuracy-rankingreport/classes-accuracy-ranking
14Class ranking · Bingo talk timeScreenteacher.teado.ai/report/classes-conversation-time-rankingreport/classes-conversation-time-ranking
15Class ranking · study timeScreenteacher.teado.ai/report/classes-study-time-rankingreport/classes-study-time-ranking
16Skills accuracyScreenteacher.teado.ai/report/skills-accuracyreport/skills-accuracy
17Students · incomplete homeworkScreenteacher.teado.ai/report/student-incompletereport/student-incomplete
18Students · low scoresScreenteacher.teado.ai/report/student-low-scorereport/student-low-score
19Teachers · low assignmentScreenteacher.teado.ai/report/teacher-low-assignmentreport/teacher-low-assignment
20Teacher performanceScreenteacher.teado.ai/report/teachers-performancereport/teachers-performance
21Total accuracyScreenteacher.teado.ai/report/total-accuracyreport/total-accuracy
22Completed testsScreenteacher.teado.ai/report/total-completed-testsreport/total-completed-tests
23Total studentsScreenteacher.teado.ai/report/total-studentsreport/total-students
24Total study timeScreenteacher.teado.ai/report/total-study-timereport/total-study-time

Online teaching (calendar) 1 screens · 5 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Online teaching calendarScreenteacher.teado.ai/school-calendarpages/school-calendar
2New / edit eventOverlayteacher.teado.ai/event-modalschool-calender/EventModal
3Event popoverOverlayteacher.teado.ai/event-viewschool-calender/EventViewPopover
4Show more eventsOverlayteacher.teado.ai/show-more-eventsschool-calender/ShowMorePopover
5Recurring event scopeOverlayteacher.teado.ai/recurring-scopeschool-calender/RecurringEventScopeModal
6Select studentsOverlayteacher.teado.ai/select-students-calendarschool-calender/ModalSelectStudentOnClass

Exam management 6 screens · 6 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Exam listScreenteacher.teado.ai/centralized-exampages/centralized-exam/index.tsx
2Create exam (4 steps)Screenteacher.teado.ai/centralized-exam/createpages/centralized-exam/create
3Exam detailScreenteacher.teado.ai/centralized-exam/1pages/centralized-exam/[id]
4Exam supervisor (live)Screenteacher.teado.ai/centralized-exam/2/monitorpages/centralized-exam/[id]/monitor
5Score sheetScreenteacher.teado.ai/centralized-exam/3/reportpages/centralized-exam/[id]/report
6Test libraryScreenteacher.teado.ai/centralized-exam/test-librarypages/centralized-exam/test-library
7Session settingsOverlayteacher.teado.ai/session-setupcentralized-exam/SessionSetupModal
8Exam actionsOverlayteacher.teado.ai/exam-actionsexam ⋮ menu
9AI grading for examOverlayteacher.teado.ai/exam-ai-gradingcentralized-exam/ModalAiGrading
10CertificatesOverlayteacher.teado.ai/certificatecentralized-exam/CertificateModal
11End exam sessionOverlayteacher.teado.ai/confirm-end-sessionend session confirm
12Exam onboardingOverlayteacher.teado.ai/exam-onboardingCentralizedExamOnboardingModals

Finance 6 screens · 10 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Tuition · all invoicesScreenteacher.teado.ai/tuition-managementpages/tuition-management/index.tsx
2Tuition · by classScreenteacher.teado.ai/tuition-management?t=classtuition · ClassTuitionTab
3Create invoiceScreenteacher.teado.ai/tuition-management/createpages/tuition-management/create (CreateSidebar · StudentSelectPanel · PreviewPanel · ConfirmStep)
4Invoices createdOverlayteacher.teado.ai/tuition-successtuition-management/SuccessStep
5Invoice group detailScreenteacher.teado.ai/tuition-management/group/1pages/tuition-management/group/[id]
6Invoice detailOverlayteacher.teado.ai/student-invoicetuition-management/StudentInfoModal (invoice)
7Invoice actionsOverlayteacher.teado.ai/invoice-actionsinvoice ⋮ menu
8Tuition notification settingsOverlayteacher.teado.ai/tuition-settingstuition-management/SettingsPopover
9Filter popoverOverlayteacher.teado.ai/filter-popovertuition-management/FilterPopover
10Payment profileScreenteacher.teado.ai/bank-accountpages/bank-account (ExistingView)
11Legal informationOverlayteacher.teado.ai/company-infobank-account/CompanyInfoForm
12Add bank accountOverlayteacher.teado.ai/add-bankbank-account/ManualBankForm + ConnectBankStep
13Bank account actionsOverlayteacher.teado.ai/bank-actionsbank actions
14Remove bank accountOverlayteacher.teado.ai/remove-bankdelete bank confirm
15Connect SePayScreenteacher.teado.ai/sepaypages/sepay
16Bank connectedOverlayteacher.teado.ai/bankhubBankHubModal

School setup 12 screens · 15 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1TeachersScreenteacher.teado.ai/teacher/listpages/teacher/list
2Teacher detailScreenteacher.teado.ai/teacher/detail/1pages/teacher/detail/[id] (Overview · Classes · Students · Assignments)
3Add teacher (search)Overlayteacher.teado.ai/search-teacherModal/ModalSearchTeacher
4Approve / reject teacherOverlayteacher.teado.ai/confirm-teacherschool-setup/ModalConfirmOrRejectTeacher
5Add teacher to classOverlayteacher.teado.ai/add-teacher-classteacher/ModalAddTeacherToClass
6Teacher class listOverlayteacher.teado.ai/teacher-classesteacher/ModalTeacherClassList
7Teacher actionsOverlayteacher.teado.ai/teacher-actionsteacher ⋮ menu
8Edit roleOverlayteacher.teado.ai/edit-roleModal/ModalEditUserRole
9Invite userOverlayteacher.teado.ai/invite-userModal/ModalInviteUser
10Invite teachers (referral)Screenteacher.teado.ai/invite-teacherspages/invite-teachers
11Invitation landingScreenteacher.teado.ai/invite-teachers/abcpages/invite-teachers/[id]
12Send invitation emailOverlayteacher.teado.ai/send-mail-inviteinvite-teachers/ModalSendMail
13Role managementScreenteacher.teado.ai/school-setuppages/school-setup (role management)
14School settings (alias)Screenteacher.teado.ai/school-settingspages/school-settings
15Permissions and brandingScreenteacher.teado.ai/permission-managementpermission-management (+ Domain banners · DomainImageCropModal)
16Crop logoOverlayteacher.teado.ai/image-cropDomainImageCropModal
17CoursesScreenteacher.teado.ai/coursepages/course/index.tsx
18Create courseScreenteacher.teado.ai/course/createpages/course/create (CreateCourseForm)
19Course detailScreenteacher.teado.ai/course/1pages/course/[id]
20Course actionsOverlayteacher.teado.ai/course-actionscourse/CourseActionMenu
21Delete courseOverlayteacher.teado.ai/delete-coursecourse confirm_delete
22Quick create course (drawer)Overlayteacher.teado.ai/create-course-drawerCourseMultipleSelect/DrawerCreateCourse
23Reward store · redemptionsScreenteacher.teado.ai/storepages/store (transactions)
24Reward store · itemsScreenteacher.teado.ai/store?t=itemsstore · items tab
25Add / edit reward itemOverlayteacher.teado.ai/store-itemstore/AddEditStoreItemDrawer
26Approve redemptionOverlayteacher.teado.ai/approve-redeemstore approve confirm
27Reject redemptionOverlayteacher.teado.ai/reject-redeemstore reject + reason

Wallet, billing, settings 14 screens · 4 overlays

#Prototype screenTypeCanonical URL (every pop-up has its own page)Source in partner-web
1Wallet · overviewScreenteacher.teado.ai/billingpages/billing (BillingOverview)
2Wallet · current planScreenteacher.teado.ai/billing?t=planbilling/CurrentPlan
3Wallet · historyScreenteacher.teado.ai/billing?t=historybilling/BillingHistory
4PackagesScreenteacher.teado.ai/packagepages/package (PackageV1 · BenefitSchool · FAQ)
5AI grading creditsScreenteacher.teado.ai/package-ai-speakingpages/package-ai-speaking
6Payment successfulOverlayteacher.teado.ai/purchase-successpackage/SuccessLoadedModal + PurchaseSuccessModal
7Current package infoOverlayteacher.teado.ai/info-packageModal/ModalInfoPackage
8Transfer coinsScreenteacher.teado.ai/transfer-diamondpages/transfer-diamond
9Confirm transferOverlayteacher.teado.ai/transfer-confirmtransfer-diamond/ModalDiamondTransfer
10Transfer completeOverlayteacher.teado.ai/transfer-successtransfer-diamond/ModalDiamondTransferSuccess
11Billing · parent viewScreenteacher.teado.ai/billing-parentpages/billing-parent + ParentBillingPage
12Settings · ProfileScreenteacher.teado.ai/settings?page=profilepages/settings (PROFILE)
13Settings · ThemeScreenteacher.teado.ai/settings?page=themepages/settings (THEME)
14Settings · NotificationsScreenteacher.teado.ai/settings?page=notificationssettings notifications (new)
15Settings · SecurityScreenteacher.teado.ai/settings?page=securityprofile.tabChangePassword
16Profile (legacy routes)Screenteacher.teado.ai/profile-teacherpages/home/profile + profile-teacher
17Parent profileScreenteacher.teado.ai/profile-parentpages/profile-parent
18Parent dashboardScreenteacher.teado.ai/dashboard-parentpages/dashboard-parent

10States, feedback and small popups

PatternRulePrototype example
Confirm destructiveSmall centred modal, red hero icon, one-sentence consequence, secondary Cancel + solid red action. Never a browser confirm().Remove class, Delete assignment
Confirm neutralSame modal, brand action, no hero icon.Finish attendance
SuccessCentred modal with green hero only when there is a next step (share code, download credentials); otherwise a toast.Class created, Payment successful
ToastTop-right, 3 s, left colour bar (green / red / amber / blue). Used for save, copy, send, export.Any "Copy" button
Unsaved changesAmber hero, "Leave without saving" (danger outline) + "Save and leave" (brand).Attendance not saved, Save as draft?
Progress / AI workingCentred modal with brand hero, estimate, progress bar and "Run in background".Grading with AI…
Paywall / limitsCentred modal, brand or amber hero, two actions (Later / See packages).Premium, Seat limit, Insufficient balance
Row actions⋮ opens an anchored popover; destructive item last and red.Student actions
Multi-stepDrawer with a step indicator in the body and Back/Next in the footer; success is step 3 inside the same drawer.Assign homework
ToursSpotlight hole + 320-px card with step counter, Skip and Next; first-visit prompt and completion modal share the brand hero.Start guide
EmptyFolder icon in a grey tile, title, one line of help, primary action.No online class linked
Session expiredCentred modal with lock icon, single Log in action.Session expired

11Implementation plan in partner-web

The feat/cloud-theme branch already adds ThemeColor.CLOUD, theme-cloud on <html>, cloud-theme.css and antd token overrides. This PRD extends that from a colour skin to a layout.

PhaseScopeFiles (indicative)Effort
0 · TokensFinalise tokens in cloud-theme.css and CLOUD_THEME_TOKENS; Inter; icon set = existing public/static/icons/sidebar/*.svg as currentColor masks.src/styles, providers/settings.tsx1 wk
1 · ShellNew Topbar (school switcher, Create, Help, wallet, bell, avatar), Sidebar (sections per mode), PageHead (crumbs/title/actions/tabs), ⌘K palette, guide bar.layouts/main/*, NavSection, AccountPopover, MenuPopover2 wk
2 · PrimitivesKpiCard, DataTable wrapper (antd Table with cloud tokens), Chip, Button sizes, Drawer/Modal/Popover wrappers with the header/footer rules of §10, Toast, EmptyState, Steps.components/FlyerComponentsV2/cloud/*2 wk
3 · TeachingHome (new page at / for Teado host), Classes, class detail (query tabs, replace MUI tabs), Students, student detail, Assignments, assign drawer, attendance, rewards.pages/classes, [classId], student-list, assigned-tests, dashboard/*3 wk
4 · Resources & AIExplore, programs (+builder, generate, schedule), My library, creator, placement, AI grading pages and result pages, assistant, Bingo AI.views/exam-library, program, my-exams, creator, flyer-ai, bingo-ai3 wk
5 · School modeReports (20), calendar, exams, tuition, bank, teachers, courses, store, roles, permissions, billing, packages, settings, auth and onboarding.views/report, centralized-exam, tuition-management, school-setup, settings, signup, Onboarding/v43 wk
6 · RolloutDefault Cloud on the Teado host; classic selectable in Settings → Theme for one release; then remove the classic layout code paths.TeadoProvider, settings1 wk
Engineering notesKeep the Pages Router and all routes; introduce ?tab= params on detail pages with a mapping from the old numeric MUI tab values so existing deep links still work. The i18n keys already exist for almost every string in the prototype (namespaces: common, onboarding, modal, class, flyer_ai, centralized_exam, tuition_management, my_exam, program, course, challenge, bingo_ai, bank_account, student_info_modal, auth); the prototype copy is English and should be wired to those keys, not hard-coded.

12Verification: five passes

The request was to build 100% of the pages, down to the smallest popups, and to check it several times. Five independent checks were run; the last two are automated and can be re-run with verify.mjs against the deployed prototype.

1
Route census from sourceListed all 133 page files under src/pages (dynamic routes included) and mapped each to a prototype route; a second automated census on 06 Sep (loose match of every route and every modal/drawer/popover file against the manifest) found 1 route and 4 overlays not yet covered, all added since. Result: 133 / 133 routes registered in app/*.js; dynamic routes are served with sample ids.
2
Overlay census from sourceListed 233 files matching modal / drawer / popup / popover / dialog / onboarding / tour / banner, grouped duplicates (e.g. IELTS vs KET variants of the same modal) and mapped them to 170 overlays in the manifest, each opened from at least one screen.
3
Automated renderPlaywright opened every manifest screen in Teacher and School mode (241 renders) and every overlay (176) and recorded page errors. Result after fixes: 0 JavaScript errors, 0 "screen not found", every page renders more than 80 characters of content.
4
Link and overlay integrityEvery data-href and data-m reference in every rendered screen and overlay was resolved against the route and overlay registries. Result: 0 missing routes, 0 missing overlays (one dev-bar link was fixed in the process).
7
Guided-tour walk-throughPlaywright started each of the 15 guides and clicked through all 107 steps. For every step it compared the spotlight rectangle with the real target element and checked that the card stays fully on screen and never covers the highlighted element. Result: 107 / 107 targets found and aligned to the pixel, 0 cards misplaced, 0 JavaScript errors, and each guide ends on its completion card.
6
Language coverageWith Vietnamese selected, every manifest screen and overlay was rendered again and each text node checked against the English string set. Result: 92.5% of text nodes translated; the remainder is proper nouns (student, class, school and test names), student-written English (essays, transcripts, dialogue lines) and codes. 0 JavaScript errors in Vietnamese mode.
5
Visual review against the live productScreenshots of the prototype were compared with the 80 live crawl captures (same account, same school) for content parity: KPIs, filters, columns and actions present on the live page exist on the prototype page. Nits fixed: duplicate rows in class top-students, sparse "Total accuracy" report.
CheckCountResult
Routes in partner-web src/pages133all mapped
Prototype screens (routes + tabs)173render OK
Prototype overlays201 registered · 198 in manifestopen OK
Standalone pop-up pages (canonical URLs)201render OK
Vietnamese dictionary entries + number rules2,313 + 6092.5% of text nodes
Renders in verification (lite + full, incl. pop-up pages)4840 errors
Interactive guides · steps15 · 107every step walked
Missing links / overlays0 / 0clean
Live routes crawled for parity80compared

13Risks and open questions

14Sources