Platform Training Guide
Everything you need to manage courses, students, content, and progress on the A Transform Hub LMS. Covers Admin and Teacher roles.
🏠 Overview
A Transform Hub LMS is a web-based learning platform that allows you to create and manage courses, enroll students, deliver content in multiple formats, and track progress — all from a browser with no software to install.
Courses & Content
Create courses with modules and chapters. Deliver video, PDF, DOCX, presentations, audio, and more.
Students
Add and approve students, assign them to batches, and track their progress through every chapter.
Progress & Grades
See exactly which chapters each student has completed. Assign, collect, and grade assignments.
Sessions
Schedule live classes and coaching sessions. Students receive reminders and meeting links.
atransformhub.com/admin.html. You must be on a device with a stable internet connection — all changes save directly to the server.👥 Roles & Access
| Role | Who | Can Do | Cannot Do |
|---|---|---|---|
| Admin | Platform owner / manager | Everything — create courses, add students, view all data, publish content, change settings | — |
| Teacher | Instructor / tutor | View student progress, access Hindi teacher dashboard, view assignments and grades | Create or edit courses, approve enrollments, change settings |
| Student | Enrolled learner | View enrolled course content, mark chapters complete, submit assignments | Admin panel access |
🔑 Login & Sessions
Admin Login
- Go to admin.htmlVisit
atransformhub.com/admin.htmlin your browser. - Enter your passwordThe default password is set in admin Settings. Change it immediately after first login.
- Stay logged inThe admin session is stored in your browser. Clearing your browser cache will log you out — your data on the server is safe.
Student / Teacher Login
- Go to login.htmlVisit
atransformhub.com/login.html. - Enter email addressMust be the email registered by the admin. A 6-digit code is sent to that email.
- Enter the codeValid for 10 minutes. Request a new code if it expires.
- Redirect to dashboardStudents land on their course dashboard. Teachers are directed to their assigned view.
api/config.php on the server.📊 Admin Dashboard
The dashboard gives you a live snapshot of the platform state.
| Card | What it shows |
|---|---|
| Courses | Total programs in the system, including hidden ones. |
| Blog Posts | Total articles created, including drafts. |
| Visible Courses | Programs currently shown on the public Courses page. |
| Visible Posts | Published blog articles live on the site. |
| Active Students | Students with status = Active (approved and enrolled). |
| Pending | Enrollment requests waiting for admin approval. |
The Programs at a Glance row shows each program with a (hidden) tag if it's not publicly visible. Click any program card to jump directly to its course content.
📚 Courses
A Course (called a Program in the system) is the top-level container. Students enroll in a course and access its modules and chapters.
Creating a new course
- Dashboard → + Add CourseOr navigate to Courses in the sidebar and click Add.
- Fill in course detailsTitle, icon (emoji), category, description, subtitle, and feature list.
- Set visibilityHidden courses are not shown on the public Courses page but can still be enrolled in directly by admin.
- Set enroll type
login= standard student login.innerarc= access via InnerArc assessment link (for special programs). - SaveThe course is created immediately and appears in Course Content for content to be added.
Editing a course
Go to Courses in the sidebar → click the pencil icon on any course row → update fields → Save. Changes are live immediately.
Hiding / showing a course
Toggle the Visible switch on any course row. Hidden courses still work for enrolled students — they just don't appear in the public catalog.
🎬 Course Content
Course content is organised as: Course → Module → Chapter. A Module is a topic group (e.g. "Module 1: Foundations"). A Chapter is an individual lesson within a module.
Adding a module
- Course Content → Select a courseChoose the program you want to edit from the dropdown.
- Click + Add ModuleEnter a module title and optional description. Click Save.
- Reorder modulesDrag the handle on the left of any module row to reorder.
Adding a chapter
- Open a moduleClick the module row to expand it and reveal its chapters.
- Click + Add ChapterEnter a chapter title, select the content type, and provide the content source (URL or inline text).
- Set duration (optional)A display label like "12 min" — for student reference only, not enforced.
- SaveChapter is added to the module and immediately accessible to enrolled students.
Content types
| Type | What to enter in URL/Content field |
|---|---|
| Video | YouTube or Google Drive embed URL. See Adding Videos below. |
| Direct URL to a PDF file (uploaded via the file uploader, or a public URL). | |
| DOCX | Direct URL to a Word document. Rendered inline — students can read without downloading. |
| PPTX | Direct URL to a PowerPoint file. Displayed via Microsoft Office Online viewer. |
| Markdown | Raw Markdown text entered directly in the Content field, or a URL to a .md file. |
| HTML | Raw HTML entered in the Content field — useful for rich formatted notes. |
| Image | Direct URL to an image (JPG, PNG, WebP, GIF). |
| Audio | Direct URL to an audio file (MP3, WAV, OGG). |
🎓 Students
Viewing the student list
Go to Students in the sidebar. The table shows each student's name, email, enrolled programs, batch, and status (Active / Pending / Suspended).
Adding a student manually
- Students → + Add StudentEnter name, email, and phone number.
- Assign a courseSelect which program(s) to enroll them in.
- Assign a batch (optional)Assign to a class group if batches have been created.
- Set status to ActiveOnly Active students can log in. Leave as Pending if they haven't paid yet.
- SaveStudent can now log in using OTP at their registered email.
Editing a student
Click the pencil icon on any student row. You can update their name, email, enrolled courses, batch, status, and points.
Suspending a student
Change their status to Suspended. They will no longer be able to log in. Their progress data is preserved — reactivate by setting status back to Active.
📋 Enrollments
When a visitor fills in the enrollment form on the Courses page, their request appears here with status Pending.
Approving an enrollment
- Enrollments → review the requestCheck the student's name, email, phone, and requested course.
- Click ApproveThis creates an Active student account and sends them a welcome email with login instructions.
- Or click RejectThe request is dismissed. No account is created.
🏫 Batches
A Batch is a class group within a course — for example, "Class 7 – Morning Batch" or "EFT Cohort June 2026". Batches allow you to assign sessions, assignments, and announcements to a specific group of students.
Creating a batch
- Batches → + Add BatchEnter a batch name, select the course it belongs to, and set a schedule description (e.g., "Mon/Wed 10–11 AM").
- Set capacity (optional)Maximum number of students allowed in the batch.
- SaveThe batch is now available to assign students to.
Assigning students to a batch
Go to Students → edit a student → set their Batch field to the relevant batch. Multiple students can be in the same batch.
📈 Progress Reports
Progress Reports show you how far each student has progressed through their enrolled courses.
Reading the progress report
| Column | Meaning |
|---|---|
| Student | Student name and email. |
| Course | The enrolled program. |
| Chapters Done | Number of chapters marked complete by the student. |
| Total Chapters | Total chapters in the course (only counts where content exists). |
| Progress % | Chapters done ÷ total chapters × 100. |
| Last Active | The last chapter the student accessed (resume point). |
📝 Assignments
Creating an assignment
- Assignments → + Add AssignmentEnter title, subject, batch target, total marks, and due date.
- Add instructionsEnter the full assignment text in the description / content field. You can use HTML for formatting.
- Attach a file (optional)Paste a URL to a PDF or document that students should download as part of the assignment.
- SaveAll students in the target batch can now see this assignment in their dashboard.
Grading submissions
- Assignments → click any assignmentSee the list of students in the batch and their submission status.
- Click a student's rowView their submitted text or download their file submission.
- Enter marks and feedbackType the score out of total marks and optional written feedback.
- Save gradeThe student is notified and can view the grade and feedback in their dashboard.
Assignment statuses
| Status | Meaning |
|---|---|
| Pending | Student has not yet submitted. |
| Submitted | Student submitted — awaiting grading. |
| Graded | Marks and feedback have been entered. |
| Late | Submitted after the due date. |
| Returned | Sent back to student for revision. |
📅 Sessions
Sessions are scheduled live classes, coaching calls, or group meetings. Each session is assigned to a batch and includes a meeting link.
Scheduling a session
- Sessions → + Add SessionEnter session title, batch, date and time, and duration.
- Add the meeting linkPaste a Google Meet, Zoom, or any video call link. Students see this link in their dashboard when the session is upcoming.
- Add a description (optional)What will be covered, any preparation notes.
- SaveSession appears in the student dashboard under Upcoming Sessions.
✍️ Blog Posts
Creating a post
- Blog Posts → + Add Blog PostEnter title, excerpt (shown on listing page), category, and reading time estimate.
- Write the contentFull post content in the body field. HTML is supported for formatting.
- Set gradient coloursThe card colour on the blog listing page. Use hex values (e.g.,
#F4721B). - Toggle VisibleOnly visible posts appear on the public blog. Keep posts as hidden drafts until ready.
- SaveLive immediately if visible is turned on.
⚙️ Settings
Settings control the homepage content, payment details, and booking call links.
| Setting | Where it appears |
|---|---|
| Hero Headline | Large banner text on the homepage. |
| Hero Subtitle | Smaller supporting text under the headline. |
| Stats (Students, Instructors, Courses, Rating) | The four stat cards on the homepage. |
| Payment QR / UPI ID | Shown on the payment confirmation screen after enrollment. |
| Payment Instructions | Text shown alongside the QR code. |
| WhatsApp Number | The floating WhatsApp button on all pages. |
| Book a Call — Caller Names & Links | The "Book a Call" buttons on course detail pages. |
| Admin Password | Change the admin panel login password here. |
👩🏫 Teacher Overview
Teachers access a read-only view of student data. They cannot create or edit course content, approve enrollments, or change settings.
What teachers can do
- View all active students and their progress
- See which chapters each student has completed
- View assignment submissions and grades
- Access the Hindi Teacher Dashboard for Hindi Mastery students
- View scheduled sessions for their batches
Teacher login
Teachers log in via the standard OTP login page at atransformhub.com/login.html using their registered email. The admin must first add the teacher as a student with their email before they can log in.
🇮🇳 Hindi Teacher Dashboard
The Hindi Teacher Dashboard is a dedicated panel for teachers managing the Hindi Mastery program. It is accessible at atransformhub.com/Hindi/teacher_dashboard.html.
Dashboard sections
| Section | What it shows |
|---|---|
| Student Roster | All students enrolled in Hindi Mastery (course ID: c3). Shows their current progress level. |
| Progress Overview | Which topics each student has completed in Bolo Hindi and Hindiwala Everyday. |
| Recordings | Audio recordings submitted by students via the speaking practice feature. |
| Timetable | Weekly class schedule view. Scrollable on mobile. |
🎞️ Supported Content Formats
Every chapter in the course player renders the content inline — students do not need to download files to read them. A download button is always shown as a backup option.
Video
YouTube or Google Drive. Embedded player, full controls. Does not count against hosting storage.
Rendered page-by-page with retina quality. Text is selectable and searchable with Ctrl+F. Large files load lazily.
DOCX (Word)
Converted to HTML inline. Tables scroll horizontally on mobile. A warning appears if equations were dropped during conversion.
PPTX (PowerPoint)
Displayed via Microsoft Office Online viewer. Full slide deck, all animations preserved. Requires a public file URL.
Audio
HTML5 audio player with playback controls. Useful for pronunciation guides, recorded lectures, and language exercises.
Image
Full-width responsive image. Supports JPG, PNG, WebP, GIF.
Markdown / HTML
Write structured notes directly in the admin panel. No file needed. Markdown renders headings, lists, bold, code blocks.
▶️ Adding Videos
YouTube
- Upload your video to YouTubeSet it to Public or Unlisted. Unlisted means it won't appear in search results but anyone with the link can watch.
- Copy the video URLStandard URL:
https://www.youtube.com/watch?v=VIDEOIDor the share URLhttps://youtu.be/VIDEOID. Both work. - Paste it in the chapter URL fieldSet chapter type to Video. The player converts the URL to an embed automatically.
Google Drive
- Upload video to Google DriveRight-click the file → Share → Change to "Anyone with the link".
- Copy the sharing linkFormat:
https://drive.google.com/file/d/FILE_ID/view - Paste in chapter URL fieldSet type to Video. The player detects Google Drive links and adjusts the embed.
📄 Adding Files (PDF, DOCX, PPTX, Audio, Image)
Option 1 — Upload to the server
- Use the file upload endpointPOST to
api/upload.phpwith your admin key. Returns a public URL for the uploaded file. - Copy the returned URLPaste it into the chapter URL field.
- Set the chapter typeMatch the file type (PDF, DOCX, PPTX, Audio, Image).
Option 2 — Link from Google Drive
- Upload the file to Google DriveShare → Anyone with the link → Viewer.
- Get the direct download URL
For a file with ID
FILE_ID, the direct URL is:
https://drive.google.com/uc?export=download&id=FILE_ID - Paste into chapter URL fieldSet the correct type. PDF and DOCX will render inline. PPTX uses Office Online viewer and needs a publicly accessible URL.
File size limits
| Format | Max size |
|---|---|
| 25 MB | |
| DOCX | 10 MB |
| PPTX | 50 MB |
| Audio (MP3, WAV) | 15 MB |
| Image | 5 MB |
| HTML / Markdown / TXT | 1 MB |
❓ Frequently Asked Questions
A student says they can't log in — what do I check?
- Is their status set to Active? Pending and Suspended students cannot log in.
- Is the email in their student record exactly the same (including capitalisation) as the one they're entering?
- Is the OTP email going to their spam folder?
- Has the OTP expired (valid for 10 minutes only)? Ask them to request a new code.
A student says their progress is gone after clearing their browser
Progress is saved to the server — it should survive any browser action. Ask them to log in again. If progress is truly lost, it was likely from before the Phase 2 migration. Progress going forward is fully server-backed.
Course content isn't showing in the course player
- Check that modules and chapters have been created in Course Content for that program.
- Check that the student is enrolled in the correct course (matches the
courseIdson their student record). - If you just added content, the student may need to refresh their browser to pull the latest sync.
A PDF or DOCX is not rendering — just a blank area
- Check that the URL is publicly accessible (try opening it in an incognito browser window).
- For Google Drive files, make sure sharing is set to "Anyone with the link".
- A download button should still appear even if the preview fails.
PPTX is not loading
Microsoft Office Online viewer requires the file URL to be publicly accessible on the open internet — it cannot access files on private networks or Google Drive files that require sign-in. Use a direct download URL or host the file on the server.
How do I change a student's enrolled courses?
Go to Students → edit the student → update the Course(s) field. The change takes effect on their next login.
Can two students share the same email?
No. Each email address is unique in the system. If a student registers with a different email by mistake, create a new record with the correct email and delete the duplicate.
🔧 Troubleshooting
| Problem | Likely cause | Fix |
|---|---|---|
| Admin panel shows no students / courses | Browser localStorage cleared; page loaded before server sync completed | Hard refresh (Ctrl+Shift+R). If data still missing, check server sync by visiting api/sync.php in the browser. |
| OTP emails not sending | SMTP credentials incorrect or email quota exceeded | Check SMTP_PASS and SMTP_USER in api/config.php on the server. Verify in cPanel → Email Accounts. |
| Student sees "Account not yet active" | Student status is Pending or Suspended | Admin → Students → edit student → set Status to Active → Save. |
| Video not playing (blank iframe) | Video is Private on YouTube, or Google Drive sharing is restricted | Set YouTube video to Public or Unlisted. Set Drive file to "Anyone with the link". |
| PDF renders blurry on retina screens | Browser zoom is above 100% | Set browser zoom to 100% (Ctrl+0). PDF rendering is retina-aware at 100% zoom. |
| Admin panel password forgotten | — | In Namecheap cPanel → phpMyAdmin → lms_store table → find ath_admin_pass row → edit the value to a new password. |
| Backup cron not running | BACKUP_KEY not set, or cron command incorrect | Verify BACKUP_KEY in api/config.php, then test manually by visiting api/backup.php?key=YOUR_KEY. |
Last updated: June 2026 · For support contact info@atransformhub.com