📡 You're offline — changes will sync automatically when reconnected
🍎
Teacher Nikki's EFL
All-In-One Classroom System
Enter your 4-6 digit PIN
Your PIN was given to you by your teacher
Enter your teacher PIN
Your PIN is set up in your profile settings
New teacher?
🛡
Admin & Clerical Access
Enter your admin PIN
Admin and clerical PINs are provisioned by the system administrator
Sign in with email & password
👪
Parent & Guardian Access
Enter your parent PIN
Your PIN was given to you by the school
New parent?
Sign in with email & password
☁️ Secured by Firebase · Teacher Nikki's EFL System
🍎
Welcome to Teacher Nikki's EFL!
Please complete your profile to get started
🎓 Teacher Profile Setup
💬
Your login email is shown above. Used for admin notifications.
Optional — you can also log in with your email and password
🍎
Welcome!
Loading your classroom...
🍎
Create Your Account
Register as a teacher on Teacher Nikki's EFL
👤 Personal Information
💬
🏫 School Information
Optional — you can also log in with your email and password
🎓
Student Registration
Create your independent student account
1
2
3
🔌 Already have a PIN from your teacher?
Enter it below to auto-fill your details from the teacher's records.
👤 Personal Information
💬
🏫 School Information
Select your school to find your teacher.
🏫 District:
🔌 Set Your Check-In PIN
You'll use this PIN to check attendance. Keep it private.
Registration Summary
🏫 Classes
Manage your classes — changes sync everywhere in real time
Sort:Level:View:
Classes›Class
Student
Attendance %
Grade Avg
Missing HW
Good morning! 👋
Total Students
-
across all classes
Present Today
-
today's classes only
Absent Today
-
today's classes only
Classes Today
-
checking…
⚠️ At Risk
-
need attention
📊 Avg Attendance
-
all classes
📋 Missing Work
-
total overdue
🎂 Birthdays Today
-
📚 Today's Classes
🚨 Alerts
🕐 Absent Today
🔔 Attendance Changes by Clerical
⚡ This Week at a Glance
📅 Weekly Overview
✅ Today's To-Do Lists
Students
Select a class to view students
Sort:View:
Students›
Students
🔍
Name
Status
Attendance
Grade Avg
Missing HW
⭐ Behavior
Select a class to log behavior notes
Sort:View:
Behavior›
Behavior
Select a behavior type, then tap a student
Logging:
📋 Recent Behavior Log
Loading...
🔑 Student Logins
Manage student portal access — PIN is the universal login
💡 How student login works: Every student's PIN is their portal login. No email required. Students enter their PIN on the login screen → they see their grades, attendance, and homework. You can also optionally add an email/password for students who prefer it.
🔍
🎯 IELTS Placement Results
Student results from the IELTS placement test
Total Tests
—
Avg Overall Band
—
At Band 6.0+
—
Below Band 5.0
—
Loading results…
Student Name
Class
Student ID
Date
Reading
Writing
Overall
📋
No IELTS results yet. Once students complete the placement test, their results will appear here.
📱 Student Self Check-In
Students scan their QR code or enter their ID at msnikkisefl.com/studentselfcheckin
Unique PIN per class session prevents wrong class check-ins
🔄
Real-Time Sync
Instantly appears in Attendance section
✅ Teacher Approval Mode
When enabled, student check-ins show as "Pending" until you approve them here.
0
⏳ Pending
0
✅ Approved
0
❌ Denied
0
📍 Location Failed
Approval mode is OFF — student check-ins are automatically marked Present or Late based on time.
🔑 Class Session PINs
Each class session gets a unique 6-digit PIN. Share today's PIN with your class or display it on the board. The PIN only works during the class time block.
📱 Student Portal QR Code
Print or display this QR code in your classroom. Students scan it to open the self check-in page directly.
msnikkisefl.com/studentselfcheckin
Students scan → enter their class PIN and Student ID → automatically checked in
🧪
Test Self Check-In
TEST MODE
Simulate a student check-in to verify the feature works end-to-end. Select a class, pick a student, and send a test check-in — it will appear in the Live Feed below.
📡 Live Self Check-In Feed
No self check-ins yet today. Share the class PIN with students.
⚡ Live Attendance LIVE
Select a class, then scan or type a student number to mark present instantly
0
✅ Present
0
🕐 Late
0
❌ Absent
0
👥 Total
🔢 Enter Student Number or ID — press Enter to check in
Point camera at student QR code ·
🧪 Test Mode ON — check-ins are shown in the UI but NOT saved to the database. Turn off Test Mode to save real attendance.
📋 Class Roster
Attendance
Select a class
Sort:View:
Attendance›
Attendance
Present
0
Late
0
Absent
0
Excused
0
Unmarked
0
Tap a desk to cycle: ⬜ Unmarked → ✅ Present → 🕐 Late → ❌ Absent → 🏥 Excused
PresentLateAbsentExcused
👁 View Attendance Records
Date:
✏️ Edit Attendance Records · แก้ไขการเข้าเรียน
🤖 AI Attendance Sheet Scanner · สแกนใบเช็คชื่อ
Upload a photo of your attendance sheet. Claude will read the names and marks automatically.
📷
Click to upload photo of attendance sheet
JPG, PNG — taken from phone or camera
📋 AI Detection Results — Review before saving
🚫
Clear & Reset Records
(hides from reports, then permanently removes — kept in audit trail only)
⚠️
How this works — two steps in one action
Step 1 — Clear from Reports: hides the selected records from all reports and views immediately. Step 2 — Reset Records: permanently deletes the underlying data. Both steps are applied automatically in the correct order when you click the button below.
Grades
Select a class to view or enter grades
📊 Thai MOE Grading Scale
A
80–100
B+
75–79
B
70–74
C+
65–69
C
60–64
D+
55–59
D
50–54
F
0–49
⚙️ Grade Categories
Manage columns separately for L2 and L6 — saves automatically
L2 — Grade Columns
Sort:View:
Grades›
Grades
📊 Grade Filters
Date:
When these grades were assessed (for integrity audit) — separate from the view filter above
⚖ Weighted Grade Settings
Weights must total 100%
▶ Quick Entry — Spreadsheet Mode
Tab moves right · Enter moves down · Grades auto-save on change
📊 By Assignment
⚠ Missing Work
👁 View Grade Records
🚫
Grade Reset
(removes from all reports, corrections & clerical — kept in audit trail only)
🔍
A: 90+ · B: 80+ · C: 70+ · D: 60+ · F: Below 60
Assignments
Select a class
Sort:View:
Assignments›
Assignments
Assignment Manager
View, edit, reassign, print and download all saved assignments
Level:Class:
⚠️ Coverage Warning:
📊 Assignment Coverage Overview —
Lesson Planner
Select a class — or view all lessons this week
📅 Weekly Lesson Overview
Sort:View:
Lessons›
Lessons
📋 Lesson Manager
All lesson plans organized by level — create, edit, duplicate, and distribute
Level:Class:
📊 Lesson Coverage —
📓 Student Notes
Running log per student — observations, parent calls, IEP notes
📊 Class Comparison
Side-by-side analytics for L2 vs L6
Compare:Metric:
🤖 AI Lesson Generator
Type a topic and Claude builds a complete lesson plan draft
✏️ Lesson Details
📄 Upload Reference File (PDF, Word, Excel, PowerPoint, image — AI will read it)
🤖
Fill in the details on the left and click Generate
📖 Generated Lesson Plan
📁 Files
Upload worksheets, test PDFs, answer keys — share with students
📆 Next Week's Overview
Upload lesson plans — AI generates a student-friendly weekly overview
Filter:
🤖 Generate Next Week's Overview
📄 Upload Lesson Plan(s)
Select which days you teach this class and the time slot. A lesson entry will be created in your Agenda for each selected day of that week.
📢 Announcements
Create and publish announcements to selected classes or levels
Filter:
📢 New Announcement
🎬 AI Slideshow Builder
Upload a lesson plan — Claude generates a presentation automatically
1 / 1
🤖 Generate Slideshow
📄 Upload Lesson Material
🎮 Games
Upload, generate, and play interactive educational games
Select Level:
🤖 AI Game Generator
📄 Upload Lesson Plan or Worksheet (optional)
Supports PDF, Word (.docx), or text files — auto-fills title, level and content below
Resources
Sort:View:
Resources›
Resources
Reports & Export
Generate and export your data
📋
Full Report
All students — attendance, grades, homework
📊
Export Excel
Choose report type, class, student then download
📄
Export PDF / Print
Choose report type, class, student then print
📊 Weekly Grade Summary
Attendance %, average grade, and missing work per class for any week
🕐 Attendance Detail Report
Date:
📊 Grades Report
Date:
📝 Assignments & Homework Report
📋 Report
💾 Data Backup
Export saves all your data as a JSON file. Import restores from a previously exported backup.
Analytics & Insights
Class Performance
📉 Most Absent
Student Analytics
Attendance History
Grade Breakdown
🎤 Speaking & Listening Tests
Create test cards with AI study guides, teacher guides, and voice clips
🎤 New Test Card
📢 Assign To
📄 Upload Lesson Plan (AI will extract vocabulary & key content)
📢 Manage Assignment
📅 Agenda
Legend:🇹🇭 Thai Holiday⭐ Has Tasks● Entry
Select a date
Click a day to see entries
✅ To-Do List
Task selected
👤 Guardian Contact
Record that you contacted the guardian and add follow-up notes.
🔔 Notifications
Alerts and change requests from admin and clerical
Loading...
📄 Create Form / Permission Slip
💬 Request Clarification
Ask the student for more information before making a decision.
📚 Vocabulary Bank
Organised by level and week — publish each week to the student portal
🗺 Seating Charts
Select a class to view or edit its seating arrangement
Sort:View:
Seating Charts›
🗺 Seating Chart
Add desk:
🏫 Teacher's Desk
👤 Unseated
ℹ️ Drag desk label bars to move. Click + to assign a student. Click an occupied seat to remove.
✍️ Sentence Builder
Select a class, then build or AI-generate templates
Click a template to view student submissions
🖨 Worksheet Options
📅 My Schedule
Stephanie Lua — TCPL2 / TCPL6 · Click any cell to edit · Auto-saves
✅ Saved
Day / Time
Home Room
1
2
3
4
5
6
7
8
9
Remark
08:30–09:20
09:20–10:10
10:10–11:00
11:00–11:50
11:50–12:40
12:40–13:30
13:30–14:20
14:20–15:10
15:10–16:00
Monday
อ22101
TCPL2
2/9 (141)
อ22101
TCPL2
2/5 (131)
อ22101
TCPL2
2/3 (141)
อ22101
TCPL2
2/4 (131)
English
TCPL6
6/6 (141)
5
Tuesday
English
TCPL6
6/2 (131)
English
TCPL6
6/4 (141)
อ22101
TCPL2
2/7 (141)
3
Wednesday
อ22101
TCPL2
2/11 (137)
อ22101
TCPL2
2/10 (137)
English
TCPL6
6/10 (141)
อ23101
TCPL6
3/7 (141)
4
Thursday
English
TCPL6
6/9 (141)
อ22101
TCPL2
2/2 (137)
อ22101
TCPL2
2/6 (131)
3
Friday
English
TCPL6
6/3 (141)
English
TCPL6
6/7 (131)
English
TCPL6
6/11 (131)
English
TCPL6
6/8 (141)
English
TCPL6
6/5 (141)
5
Total Periods:20
Teaching Hours:16.7h
💡 Click any grey cell to add a class · Click a filled cell to edit or clear it
Settings
🎓 My Profile
🏫 School Assignment
Loading...
ⓘ Submit a request if your school or district is incorrect. Your admin will be notified to approve the change.
💾 Data Backup & Restore
Full backup includes profile, classes, students, attendance, grades, behavior, homework, and more.
⚠ On restore: you will choose Merge (keep existing + add imported) or Replace (overwrite all).
📝 Attendance Correction Requests
Click Refresh to load pending requests.
🖥️ Kiosk Display Name
This is how your name appears in the kiosk teacher selection dropdown. Include your salutation (e.g. Teacher Nikki, Mr. Smith).
Current: Loading…
☁️ Cloud Sync
Signed in as:
✅ Data syncs automatically across all your devices
🤖 Claude AI — API Key
Required for Document Converter, AI Grading, and other Claude-powered features. Your key is stored securely in your account and never shared.
Used for natural-sounding Audio Study Clips in Speaking & Listening. Without this, audio falls back to the browser's built-in voice. Enable the API then create an API key at Google Cloud Console.
🌓 Appearance
Switch between light and dark theme
Dark Mode
📚 Vocab Bank Migration
Words previously generated via AI were saved to the wrong collection (vocab_words) and are invisible. Click to copy them into the correct collection.
🎬 Demo Mode
Load sample data — no real saves. Great for demos and testing.
👤 Substitute Teacher Mode
Issue a temporary PIN for a substitute. They get read-only access to today's roster, attendance marking, and today's lesson — nothing else.
✅ Sub session active — PIN:
Expires:
⌨ Keyboard Shortcuts
NAdd New StudentAGo to AttendanceGGo to GradesLGo to LessonsRGo to ResourcesShift+LLaunch Live TeachingCtrl+KGlobal SearchEscClose modal / overlay?Show this shortcuts list
🔌 My Check-In PIN
Set or update your PIN for quick login. Always enter your password to confirm.
⚠️ Choose a unique PIN not used by anyone else in the system
🔑 Change Password
🏫 Classes
🤖 AI Grading
Upload student papers — Claude reads handwriting, extracts answers, and grades automatically
📸 Single Grade
👥 Batch Grade
📊 Results
⚡ Quick Grade
🔑 Answer Keys
✅ Mark Questions
📋 Assignment Details
Select what you're grading and who the student is
📸 Upload Student Paper
Photos, PDFs, or Word docs — add all pages before reading
📁
Drag & drop files here, or tap to browse
Images · PDF · DOC/DOCX · Multiple files OK
📱 Mobile tip: Photos are automatically compressed and optimized. For best results: good lighting, hold camera steady, frame the whole page.
⚙️ Processing Options
✏️ Review & Grade
📋
Select an answer key and upload a paper to begin grading
Total Score
—
Grade
—
📄 Uploaded Pages
1 / 1
⚡ Quick Grade — No Answer Key Needed
Describe what you're looking for. Claude grades based on your criteria — perfect for open-ended work.
🔢 Manual Entry Grader
Enter answers as C (Correct), P (Partial), or I (Incorrect). Auto-calculates score out of 100.
new column
🔍
No students selected — search above to add
Grade mode:
C = CorrectP = Partially CorrectI = Incorrect— tap each box to mark
/
—
Enter correct answers / total questions. Score auto-calculates.
0
✅ Correct
0
🟡 Partial
0
❌ Incorrect
0
📝 Left
0%
0 / 100 pts
📸 Upload Student Work
📁
Tap to upload or drag & drop
📋 Grade Result
Upload student work and click Quick Grade to see results here.
👥 Batch Grade — Multiple Students
Upload all papers at once. Claude automatically separates them by student name or number.
📚
Drop all student papers here
Or tap to select multiple files — images, PDFs, or Word docs
📋 0 papers queued
Processing...
📊 Grading Results
Student
Assignment
Score
%
Grade
Status
Date
Actions
No results yet — grade some papers to see results here
Review: Student
Original Submission
📄 Submission image not available
Question-by-Question Review
TOTAL SCORE OVERRIDE
/ ? pts
Editing individual questions auto-updates this total
TEACHER FEEDBACK FOR STUDENT
Key Name
Linked Assignment
Qs
Pts
Types
Updated
No answer keys yet
New Answer Key
Questions
Add:
No questions yet — use the Add buttons above
✅ Mark Questions
Enter how many questions and tap ✓ or ✗ for each one — total calculated instantly
questions
pts each
Thai MOE Grade Scale
A
80–100
B+
75–79
B
70–74
C+
65–69
C
60–64
D+
55–59
D
50–54
F
0–49
—
—
—
✅ 0 correct❌ 0 wrong
✅
Set the number of questions and click Build Question Grid
🚨 Alerts Dashboard
Live overview of all classes requiring attention
👥 Teachers
Browse by district and school
All Districts››
🔍
Teachers›Teacher
Select a Class
Teachers›Teacher›Class
✅ Attendance
📊 Grades
⭐ Behavior
🎓 Students
ⓘ
Edits require teacher approval. Click View / Edit / Delete on any student. Changes are sent to the teacher as notifications — they take effect only after teacher approves.
View:
Student
Attendance by Date
Overall %
Actions
📊
View Only — Grades Grades cannot be edited directly by clerical. Use 🖉 Request Change next to any grade to submit a change request to the teacher.
View:
⭐
View Only — Behavior Behavior records can only be viewed by clerical. Contact the teacher to make any changes.
View:
Student
Positive
Negative
Recent Log
Student
Attendance
Grade Avg
Behavior
📢 Guardian Alerts
Guardian contact alerts across all teachers
Select a filter above to load alerts.
📅 Agenda
📅
No items for this day
💌 Parent Messages
All parent-teacher messages across the school
Click Refresh to load.
📋 Attendance Corrections
Approve or decline all attendance excuses from students and parents
Click Refresh to load submissions.
📝 Correction Requests
Requests you have submitted to teachers — synced in real time
💬
How it works
Submit requests from a teacher's Attendance, Grades, or Behaviour tab. The teacher sees them immediately in their Corrections section and can Approve or Deny. You can View, Edit (if still pending), or Delete any request here.
Click Refresh to load your requests.
📄 Report Export
Export attendance or grade data as CSV
🔎 Teacher Actions
Passive oversight of grade, attendance, behavior, and reset actions
🔎
Loading...
👪 Parent Logins
Create login accounts for parents and guardians
✚ Create Parent Account
Create a login for a parent/guardian. They sign in via the Parent tab on the login screen to view their child's attendance, grades, and homework.
Share this PIN with the parent for quick login
👥 Existing Parent Accounts
Click Refresh to load parent accounts.
📊 Overview
Summary across all teachers
Teachers
Recent Activity
👑
Super Admin Panel
Teacher Nikki's EFL Nexus — Full System Control
📊Dashboard
👥Users
🎓Teachers
✅Approvals 0
📈Analytics
📋Audit Log
🏠Districts & Schools
⚙️System Settings
🔎Teacher Activity
📥Bulk Import
📅Terms
👥Student Import
📢Broadcast
📄Report Export
👪Parents
📋Att. Corrections
🚨 System Alerts
🕐 Recent Activity
✅ Pending Teacher Approvals
New teacher registrations waiting for approval.
🚩 School Change Requests
✚ Create New User
Leave blank to auto-generate on save
🔌 PIN Management
👥 All Users
Email
Role
Created
Actions
🏫 Assign User to District & School
🎓 All Teachers & Their Data
Period: All time
📈 Per-Teacher Breakdown
📋 Audit Log
✚ Add District
🏠 Districts & Schools
🔎 Teacher Activity Log
Click Refresh to load activity.
📥 Bulk Student Import (CSV)
Upload a CSV with columns: name, preferred, pin, class_name, email (email optional). One student per row.
No file selected
Importing...
📢 Broadcast Announcement
Send a message that appears as a banner on all teacher dashboards.
📄 Active Broadcasts
Loading...
📄 Export Reports
Export attendance or grade data as CSV for any teacher and class.
📅 Term Management
Define academic terms used as default date ranges across reports and analytics.
Active Term
Loading...
Create / Update Term
⚠️ Year-End / Semester Reset
Archives current grades, attendance, and behavior data for all teachers, then clears active data. Students remain enrolled. Cannot be undone.
Past Terms
No archived terms yet.
👥 Bulk Student Import
Import students from a CSV file into any teacher's class.