We built a WordPress LMS the slow way. Now we need fifty people to break it.
Fifty testers get every Pro feature free during the beta, and a founding deal afterwards. Built by Rafi Ahmed, who led development of Fluent Support and contributed to WordPress 5.9, 6.0 and 6.1. The free core has passed WordPress.org review. Now it needs real courses.
No card. A person reads every application and replies within 24 hours.
| Order | Course | Total |
|---|---|---|
| #1042 | Digital marketing basics | $79.00 |
| #1041 | Copywriting for small shops | $49.00 |
| #1040 | Digital marketing basics | $79.00 |
| #1039 | Email for beginners | $29.00 |
- Passed WordPress.org plugin reviewThe free core goes up for listing next.
- Built by a WordPress core contributorRafi is credited in 5.9, 6.0 and 6.1.
- 0% platform feeYou pay only your payment provider.
- Your data stays yoursStudent records live in your own database.
- GPL, with a free corePro adds the paid-course tools.
The beta deal
What you get, and what we ask in return.
Testers get the full product during the beta, and Pro for life on one site if they finish. In return we need real use and honest feedback, on a schedule that fits around a job.
Your offerPro for life
Earned lifetime licence
- Every Pro feature, free, for the whole beta.
- Finish the beta and you keep Pro for life on one site. No renewal.
- Your name in the launch credits, if you want it there.
- Early access to RootWright Community and every plugin after it.
What “finish” means
You sent the setup check-in, the day-10 check-in and the final form,You sent the setup check-in and the final form, and built one course with at least three enrolments (test accounts count). Lifetime means updates and support for as long as RootWright LMS Pro is sold. If we ever sell RootWright, honouring lifetime licences will be a condition of the sale. One site; you can move it, but not transfer or resell it. Didn’t finish? Your Pro key keeps working until [launch + 30 days], then any plan is [40%] off for as long as you renew. Never tied to reviews or ratings.
What we ask
- Days 1–3Install the ZIP and answer a two-minute setup check-in.
- Week 1Build one course you would really teach.
- Day 10Midpoint check-in. Five questions.
- Weeks 2–3Enrol at least three students (test accounts count), try the Pro features, report what breaks.
- Day 21Final feedback form, plus an optional 20-minute call.
- Day 1Install the ZIP on a staging or fresh site and answer a two-minute setup check-in.
- Days 2–9Build one course you would really teach, and enrol at least three students. Test accounts count.
- Day 10Fill in the feedback form. It takes about fifteen minutes.
- Any dayReport what breaks. Screenshots beat adjectives.
Plan on about [two hours a week]. If life gets in the way, tell us and we’ll pass your seat to the next person.
50 seats
Closes 15th Nov 2026, or sooner if the seats go. Round 2 opens after we’ve fixed what round 1 finds.
50 seats left
Full
The form now adds you to the round 2 waitlist.
Never tied to reviews
Perks depend on feedback sent to us. Paying for reviews breaks WordPress.org guideline 9, and we wouldn’t want them that way anyway.
Your data stays put
Courses and students live in your database. The beta updates to the release like any plugin update.
Leave whenever you like
Tell us and we pass your seat on. You still get the founding price.
Where we started
We started from three complaints about WordPress LMS plugins.
We read through 500+ public reviews of the big WordPress LMS plugins. Three problems kept coming back, so those are the parts we built first.
The problem
Learner data spread across tables that weren’t built for it, and sites that slow down as enrolments grow.
Student data gets its own tables.
Enrolments, progress, quiz attempts and reviews each get their own table: 35 in the free plugin, 54 with Pro, indexed for the queries an LMS runs.
The problem
Students land in the WordPress dashboard, or a theme update breaks the lesson page.
Students get their own app.
Lessons run in a separate app that doesn’t depend on your theme. Students never land in the dashboard, and every request checks permissions first.
The problem
Every request a student makes waits for the whole of WordPress to load first.
A fast lane for the busiest requests.
The requests students make most, like opening a lesson or checking access, are answered before the rest of WordPress loads.
What you’ll be testing
What’s in the build right now.
Fourteen reasons to switch, each tagged Free or Pro. Every beta tester gets Pro, so you can try all of them.
See all 208 featuresMost LMS plugins measure clicks. RootWright measures memory, and brings each lesson back right before the learner would forget it.
In FreeBuilt-in spaced repetition (the modern FSRS-6 algorithm), a daily Today session with goals and streaks, and a 0-100 memory strength score for every course.
Pro addsConfidence ratings, recall tuned to each course, nightly retention reports, reminder emails answered in one click without logging in, and Today offline.
Learning-science practice is built into the lesson itself, so learners don’t just read along.
In FreeKey concept, Quick check and Pre-question blocks inside any lesson. Misses go into recall, and answers never reach the browser before they should.
Pro addsPredict-then-reveal, explain-it-back, anonymous peer feedback, questions inside videos, and mixed-module challenges.
Learners move through skills, not just a list of lessons, and get a plan that fits their own deadline.
In FreeA skill map with mastery that fades to “needs refresh”, learn-next pins and optional locks until skills are mastered.
Pro addsPlacement tests to skip what a learner already knows, plus study plans across courses that fit each learner’s deadline and minutes a day, rebuilt nightly, with behind-schedule nudges.
Other free LMS plugins give a course one price. RootWright’s free plugin gives it as many as you need.
In FreeOne-time, subscription and payment-plan prices on the same course, each with its own sale price, setup fee and access length, pushed to WooCommerce, EDD, SureCart or FluentCart and kept in sync.
Pro addsThe same price options on native Stripe and PayPal checkout, plus bundles, single-lesson sales and recurring coupons.
Keep the store you already use, or sell with no store plugin at all.
In FreeWooCommerce, EDD, SureCart and FluentCart with two-way sync: products created from the builder, prices, coupons and currency kept in step, and one order list across all stores.
Pro addsNative Stripe and PayPal checkout with subscriptions, instalment plans, bundles, single-lesson sales, sales tax and EU VAT, refunds and a full transaction ledger with automatic webhook retries.
Go from a brief to a full draft course while you watch it being written, with your house style and your budget in charge.
In ProThree lessons written at once and streamed live, outline check-ins, agent mode, course audit, AI covers and AI marking that waits for a human when unsure. Seven providers including WordPress’s own AI, a reusable skill library, and enforced monthly budgets.
Real exam controls plus practice tests that adapt to each learner.
In ProExams as their own lesson type with booked windows, approval, cooldowns and must-pass gates, plus mock exams drawn per learner and broken down by skill, with weak areas fed back into study.
Connect Claude Desktop or any MCP agent straight to your courses.
In ProA built-in MCP server and WordPress Abilities registration, with scoped, revocable tokens. Student data is off by default and no AI key is needed.
# rootwright-lms · MCP · token “course-editor” (revocable) › list_courses Digital marketing basics · 13 lessons › add_lesson course="Digital marketing basics" title="Welcome emails that get read" ✓ Draft lesson added. No AI key needed in WordPress.
Built to stay quick on a small server with no Redis.
In FreeThe fast lane answers the busiest learner requests before WordPress fully loads. The plugin also uses custom indexed tables, a persistent cache that works without Redis, X-Sendfile / X-Accel file delivery and background jobs.
| Table | Holds |
|---|---|
| rootwright_lms_course_data | Courses |
| rootwright_lms_course_topic_lesson | Curriculum |
| rootwright_lms_course_prerequisites | Gates |
| rootwright_lms_course_instructors | Teams |
| rootwright_lms_course_products | Stores |
| … | 54 in all |
# rootwright-lms · MCP · token “course-editor” (revocable) › list_courses Digital marketing basics · 13 lessons › add_lesson course="Digital marketing basics" title="Welcome emails that get read" ✓ Draft lesson added. No AI key needed in WordPress.
| Table | Holds |
|---|---|
| rootwright_lms_course_data | Courses |
| rootwright_lms_course_topic_lesson | Curriculum |
| rootwright_lms_course_prerequisites | Gates |
| rootwright_lms_course_instructors | Teams |
| rootwright_lms_course_products | Stores |
| … | 54 in all |
Also in the build
Swipe →
Also in the build
All 208 featuresControl and privacy you can explain
Every permission has a reason you can see, and every byte of learner data can be exported or erased.
Certificates people can trust
Credentials that can be verified, and designs that never change after they are issued.
Reach learners where they already are
Learning nudges that arrive in the inbox and chat apps learners already use.
Found by Google and by AI
Courses are ready for search engines and AI assistants without extra setup.
Looks right on any block theme
No page builder needed.
Student dashboard app
Today, Your courses, Announcements, Achievements, Purchase history, Apply to teach, Settings.
Reusable lesson library
Use one lesson in several courses; removing it from a module keeps it in the library.
Drip content
Unlock by date, days after enrolment, in sequence, after a prerequisite, or a mix; per-student overrides and expiry.
Counted, not claimed
Numbers from the code, not from a slide.
Every figure here comes from the beta build itself. When the code changes, so do these.
35database tables in the free plugin. Pro adds 19 more.Code count · 19 Oct 2026
238REST API endpoints in the free plugin. Pro adds 47.Code audit · 8 Sep 2026
10quiz question types, all in the free plugin.Code audit · 8 Sep 2026
0%of your course sales taken by RootWright, on every plan.Pricing terms
What isn’t finished
What’s not done yet. You should hear it from us.
A beta has rough edges. Here are the ones we already know about, so your time goes into finding new ones.
- Community discussions inside courses, right after launchPlanned
- WhatsApp reminders. Email and Telegram work now.Planned
- Importers from other LMS plugins. In progress
- Docs, written during the beta In progress
- Final prices, before launch. Testers get theirs first.Planned
- Full DRM (Widevine or FairPlay). We use encrypted streams and a moving watermark instead.Not planned
From the build log
All entries- Private beta opensRound 1: fifty seats, 21 days.
- Passed WordPress.org plugin reviewThe final version goes up for listing next.
Who’s building it
Two people you can actually email.
The same story kept coming up about WordPress LMS plugins: student progress scattered across postmeta, sites that got slower with every enrolment, and learners sent into wp-admin to take a lesson. So we started from those parts. Fifty testers is enough to find what we got wrong while it’s still cheap to fix.
Rafi Ahmed
Founder · Product and engineering
Rafi led development of Fluent Support and worked as a software engineer at Awesome Motive and Thrive Themes. He contributed to WordPress core in releases 5.9, 6.0 and 6.1, and built WP Vite, which brings Vite’s build pipeline to plugin development.
Reza
Cofounder· Beta, pricing and partnerships
Reza runs the beta programme, pricing and partnerships. If something about the beta doesn’t feel fair, he’s the person to tell.
Pricing
Plans after the beta. Testers lock theirs first.
Every plan includes every Pro feature. Plans differ only in how many sites you can use them on. Beta testers get the founding deal on top.
Founding terms for beta testers
Finish the beta and keep Pro for life on one site. Everyone else accepted gets the founding price.
- Every Pro feature in every plan
- 0% platform fee on every sale
- Refund, renewal and lapse terms published before you pay
Questions
Before you apply.
Something we missed? Write to [email protected]. We’ll answer you within 24 hours.
All beta questionsIs RootWright LMS free?
Yes. The free plugin is heading to WordPress.org and includes the course builder, the student app, dedicated tables, lessons with quizzes and checkpoints, spaced recall, the skill map, course reviews, SMTP support and the REST API. Pro adds drip, exams, study plans, AI course building, native checkout with sales tax and EU VAT, and video hosting with a viewer watermark.
Can I use the beta on a live site?
You can, but we’d suggest a staging site or a fresh site for your first course. It’s beta software, so back up first and don’t move your only paying course on day one.
Do I have to leave a review?
No. Your perks depend on feedback you send to us, never on public ratings. Reviews on WordPress.org are entirely your choice.
What happens to my Pro key if I don’t finish?
Your Pro key keeps working until [launch + 30 days]. After that, any plan is yours at the founding price, [40%] off for as long as you renew.
Is the 50-seat limit real?
Yes. About fifty is the most we can support while reading every report and replying properly. When round 1 is full, the form turns into a waitlist for round 2.
What if I’m not picked?
You go on the waitlist for round 2, and you can use the free plugin as soon as it’s on WordPress.org. We delete declined applications after [6 months] unless you ask us to keep you on the list.
Apply for round 1
Want a seat? Tell us what you teach.
The form takes two minutes. A person reads every application, and we reply either way.
- ApplyTwo minutes. Tell us what you teach and what you use today.
- We read itA person reads every application. You hear back within 24 hours, yes or no.
- You installYou get the free ZIP, a Pro licence key and a one-page setup note.
- You shape itBuild, break, report. Fixes ship as beta updates, and we tell you which ones came from you.