Redesigning My LMS for 10K Users, Day 15/30 – Refactoring the Edit Course Flow. https://lnkd.in/gNQAHY8v Today I focused on improving the Edit Course component to align it with the new architecture I built for course creation. As the course system evolved (topics, lessons, structured payloads), the edit flow also needed refactoring to stay consistent. So I cleaned up how course data is handled and validated on the client side. What I Refactored i) Category, Topics, and Lessons Handling Refactored how these parts are managed inside the Edit Course flow. Changes included: • Cleaner state handling • Better separation between course sections • Easier updates when editing topics or lessons This makes the edit flow more predictable and easier to maintain. ii) Video Duration Parsing Hook Integrated the reusable hook for parsing video duration during lesson updates. Now when a lesson video is edited or replaced: • Duration is extracted automatically • Course metadata stays accurate • Manual input errors are avoided Reusable hooks help keep component logic clean. iii) Payload Builder for Structured Requests Introduced a payload builder utility for constructing the update request. Instead of assembling payloads inside components, the payload is now generated through a dedicated builder. Benefits: • Consistent API structure • Cleaner component logic • Easier debugging and maintenance iv) Error Validation Schema Added a validation schema to standardize error handling and form validation. This ensures: • Consistent validation messages • Safer form submissions • Better user feedback during course edits Reusable hooks, payload builders, and validation schemas keep both flows aligned. Tomorrow: Continuing improvements in the course editing workflow and finalizing the client-side course management flow. #FullStack #FrontendArchitecture #SystemDesign #React #ScalableSystems
Refactoring LMS Edit Course Flow for 10K Users
More Relevant Posts
-
Day 14/30 – Redesigning My LMS for 10K Users, https://lnkd.in/gNQAHY8v Improving Course Builder Inputs (Topics & Lessons) Today I continued improving the course creation interface on the client side. The focus was on making the course builder more structured and easier to use by refining the input system for topics and lessons. ---What I Implemented ---i) Input Fields for Topics Added dedicated input fields to manage course topics more cleanly. Each topic now has: • Structured input handling • Proper state mapping • Clear separation from lesson logic This allows topics to be managed independently instead of being mixed with other course data. ---ii) Select & Input Fields for Lessons Improved the lesson creation flow by adding structured fields for lesson inputs. Lessons now support: • Clear input fields for lesson data • Select fields for structured choices • Better state updates when creating multiple lessons This makes adding lessons more predictable and avoids messy state updates. -Why This Matters Course creation forms can become extremely complex as features grow. By introducing structured inputs: • Form logic becomes easier to maintain • UI behavior becomes predictable • Data mapping to backend models becomes cleaner Small UX improvements also reduce the chance of invalid payloads reaching the backend. Good form architecture prevents bugs before they happen. Tomorrow: Continuing improvements in the course creation flow and refining how lessons and topics interact with the overall course payload. #FullStack #FrontendArchitecture
To view or add a comment, sign in
-
-
The BUY VS. BUILD calculus has fundamentally changed, and it’s time to rethink the old rules. For Skill-Wanderer this meant making a bold move: REPLACING MOODLE WITH A FULLY CUSTOM-BUILT LMS. Many of us choose off-the-shelf solutions to SAVE TIME. But after months of running the Dojo on Moodle, we realized that SAVED TIME was being swallowed by: ⚠️ DEPENDENCY RISKS: Navigating the shift away from third-party image packaging. 🐌 ADMINISTRATIVE BLOAT: Fighting endless sub-menus just to add simple content. 🧱 ARCHITECTURAL FRICTION: Struggling against "login walls" to keep our open-source knowledge truly open and SEO-friendly. The game-changer? AI-ACCELERATED DEVELOPMENT. With AI as a force multiplier, the barrier to building custom, purpose-built software is lower than ever. We've already seen massive success moving our blog to a custom stack, and we're applying that same iterative, AGILE APPROACH to our learning platform. The new Skill-Wanderer Dojo is now live faster, cleaner, and built on our own terms. We aren't just building a platform; we’re OWNING OUR FUTURE. Check out the video below to see the side-by-side comparison of the old friction vs. the new flow. 👇 #SoftwareDevelopment #LMS #AI #OpenSource #EdTech #Agile #BuildVsBuy #SkillWanderer #CleanCode #TechLeadership #SelfHosting
To view or add a comment, sign in
-
The BUY VS. BUILD calculus has fundamentally changed, and it’s time to rethink the old rules. For SKILL-WANDERER, this meant making a bold move: REPLACING MOODLE WITH A FULLY CUSTOM-BUILT LMS. Many of us choose off-the-shelf solutions to SAVE TIME. But after months of running the Dojo on Moodle, we realized that SAVED TIME was being swallowed by: ⚠️ DEPENDENCY RISKS: Navigating the shift away from third-party image packaging. 🐌 ADMINISTRATIVE BLOAT: Fighting endless sub-menus just to add simple content. 🧱 ARCHITECTURAL FRICTION: Struggling against "login walls" to keep our open-source knowledge truly open and SEO-friendly. The game-changer? AI-ACCELERATED DEVELOPMENT. With AI as a force multiplier, the barrier to building custom, purpose-built software is lower than ever. We've already seen massive success moving our blog to a custom stack, and we're applying that same iterative, AGILE APPROACH to our learning platform. The new Skill-Wanderer Dojo is now live—faster, cleaner, and built on our own terms. We aren't just building a platform; we’re OWNING OUR FUTURE. Check out the slides below for the full breakdown of the "Why" and the "How." 👇 #SoftwareDevelopment #LMS #AI #OpenSource #EdTech #Agile #BuildVsBuy #SkillWanderer #CleanCode
To view or add a comment, sign in
-
Redesigning My LMS for 10K Users, Day 26/30 – Refactoring User Progress APIs https://lnkd.in/gNQAHY8v Today I focused on improving the user progress system by refactoring both the GET and POST progress routes. Progress tracking is one of the most critical parts of an LMS—it directly affects user experience, course completion, and engagement. What I Refactored 1) Refactored Get User Progress Route Improved how progress data is fetched: • aligned fully with the normalized Progress model • cleaned up query logic • ensured accurate progress calculation • reduced unnecessary data fetching Now the API returns clean and consistent progress data. 2) Refactored Create Progress Route Updated how progress is initialized and stored: • ensures progress is created only once per user-course • prevents duplicate progress documents • maintains clean structure for completed lessons tracking • improves reliability for first-time course access Why This Matters Progress tracking runs very frequently in an LMS: • every lesson completion • every resume action • every progress check Optimizing these routes ensures: • consistent learning experience • accurate completion tracking • better performance under scale What’s Coming Next Backend • Complete review system • Add rate limiting • Implement helpful score calculation • Spam detection & user behavior tracking • Update & delete progress routes Frontend Architecture • topics • lessons • category • reviews • like system For high-frequency systems like progress tracking: • avoid duplicate records • keep schema minimal and normalized • optimize both reads and writes Because even small inefficiencies can scale into major performance issues.
To view or add a comment, sign in
-
-
Hot take: Instructional design is becoming too data-driven. With learning analytics, AI-powered LMS dashboards, and adaptive learning systems, we now have more learner data than ever before. In theory, this should help us design better, more personalized learning experiences. But here’s the tension: When we focus heavily on metrics (clicks, completion rates, engagement dashboards), are we actually improving learning—or just optimizing what’s easy to measure? 💬 Discussion prompt: What’s one metric or data source you actually trust when making instructional design decisions—and why? Curious how others in the field are balancing data-informed design with real learning impact. #InstructionalDesign #LearningAnalytics #EdTech #LearningExperienceDesign #eLearning
To view or add a comment, sign in
-
If you’re using LearnDash “out of the box”… you’re not scaling—you’re leaking ROI. Most people think LMS limitations are a feature problem. They’re not. They’re a system design problem. At small scale, default LearnDash works fine. At real scale, it quietly creates friction that kills growth: → Drop-offs during registration → Admin teams stuck in the backend → Reporting that doesn’t justify renewals → Assessments that cap your pricing → Accessibility gaps = lost users you never see And here’s the shift most people miss: LearnDash is just the engine. Your business lives in what you build on top of it. The highest-performing programs don’t rely on templates. They build custom layers that drive revenue: • Registration → becomes a segmentation engine • Dashboards → reduce cost-to-serve • Reporting → proves outcomes (and drives renewals) • Assessments → unlock premium pricing • Accessibility → increases real-world completion rates This is where CLV is actually created. Not in your content. Not in your branding. But in how your system adapts to who your user is. Because “one-size-fits-all” LMS = average experience And average experience = average revenue If you’re scaling an e-learning program right now: What’s the biggest bottleneck in your setup? Registration, reporting, dashboards, or assessments? #LearnDash #ELearning #EdTech #OnlineCourses #LMS #SaaS #CustomerExperience #CLV #BusinessGrowth #WordPress #CustomLearnDash #UXDesign #Accessibility #SaffireTech
To view or add a comment, sign in
-
The moment we realized course creation was unnecessarily complicated During one onboarding call, a client showed us how they normally create a course. Step 1 - Write the content in a document. Step 2 - Move it into an authoring tool. Step 3 - Create visuals using another platform. Step 4 - Translate the content for regional teams. Step 5 - Upload everything to the LMS. Five steps..... Three tools......A lot of copy-pasting...And the interesting part? Everyone in the call just accepted that this was normal. That conversation pushed us to rethink something. If most learning teams already spend their time inside the LMS… why does course creation usually happen everywhere else first? So we started building more content tools directly into MyPass LMS. Things like: • an in-LMS authoring tool for building courses • image generation for learning content • course translation tools for multilingual teams • built-in survey blocks • essay responses with grading workflows The goal wasn’t to replace every specialized tool. It was to make everyday course creation simpler and faster for teams that manage learning programs. Because when updating training is easy, it actually happens more often. Curious to hear from learning teams here :- How many tools does your team use today just to publish one course? #MyPassLMS #LearningAndDevelopment #DecisionMaking #CorporateTraining #FutureOfWork #NonProfitLeadership #LearningAndDevelopment #MyPassLMS #EdTech #VolunteerManagement #AgenticAI #LMS #SaaS #BankingTechnology #FinTechSolutions #EngineeringExcellence #Upskill #EdTech #DevOps #LearningMadeSimple #CorporateTraining #EmployeeEngagement #Upskilling #WorkplaceLearning #TrainingSolutions #AIPoweredLearning #EdTechAI #AgenticAI #AIForEducation #DigitalLearning #SaaSProducts #ProductivityTools #TeamTraining #CreditBasedPricing #PayPerUse #LearningCredits #OnlyPayForWhatYouUse #SmartPricing
To view or add a comment, sign in
-
-
Ever feel like your LMS could do more? You want courses that are more interactive. More engaging. More aligned with how students actually learn. The good news? Tools exist that unlock your LMS’s full potential. Möbius integrates seamlessly with platforms like Canvas, Moodle, Blackboard, and Brightspace. Instead of working around limitations, you create richer learning experiences within your existing setup. If you’re looking to take your online STEM courses to the next level, this is worth exploring: Learn more: https://hubs.la/Q045rcbX0 #EdTech #LMS #HigherEducation #STEMeducation
To view or add a comment, sign in
-
‼️ The most interesting learning metrics right now are NOT inside the LMS. 📊 They’re inside product analytics. More learning teams are leveraging a learning health score. Not just measuring completions or feedback, but building a broader view of whether learning is actually influencing adoption. In SaaS, we have access to these signals: - Product usage data - Feature adoption - Workflow drop-off points Teams are bringing these signals together in BI tools to create a learning health score that looks like this: Learning activity → user behavior → real workflow performance. The problem is that these systems do not talk to each other. LMS platforms can’t ingest product analytics. Product analytics tools can’t measure learning impact. So teams are often exporting data from multiple systems and modeling it externally. If you’re building a learning health score or connecting BI dashboards to learning data, what signals are proving most useful? Feature adoption? Time-to-productivity? Workflow errors? Something else? And for teams not doing this yet – do you see this becoming part of how L&D measures impact?
To view or add a comment, sign in
-
𝗬𝗼𝘂𝗿 eSkilled 𝗟𝗠𝗦 𝗝𝘂𝘀𝘁 𝗚𝗼𝘁 𝗦𝗺𝗮𝗿𝘁𝗲𝗿 — 𝗔𝗿𝗲 𝗬𝗼𝘂 𝗨𝘀𝗶𝗻𝗴 𝗜𝘁 𝘁𝗼 𝗜𝘁𝘀 𝗙𝘂𝗹𝗹 𝗣𝗼𝘁𝗲𝗻𝘁𝗶𝗮𝗹? eSkilled has officially upgraded to Moodle 5.1 — and it’s more than just a UI refresh. We’re talking about smarter content creation, built-in AI tools, and a more intuitive learning experience for both admins and learners. 📅 Join our upcoming webinar to see what’s new and how to actually use it: 𝗬𝗼𝘂𝗿 𝗲𝗦𝗸𝗶𝗹𝗹𝗲𝗱 𝗟𝗠𝗦 𝗝𝘂𝘀𝘁 𝗚𝗼𝘁 𝗦𝗺𝗮𝗿𝘁𝗲𝗿: 𝗜𝗻𝘀𝗶𝗱𝗲 𝘁𝗵𝗲 𝗠𝗼𝗼𝗱𝗹𝗲 𝟱.𝟭 𝗨𝗽𝗴𝗿𝗮𝗱𝗲 𝘈𝘱𝘳𝘪𝘭 9, 2026 | 1:00 𝘗𝘔 𝘈𝘌𝘚𝘛 (𝘘𝘓𝘋) | 1-𝘩𝘰𝘶𝘳 𝘴𝘦𝘴𝘴𝘪𝘰𝘯 𝗙𝗲𝗮𝘁𝘂𝗿𝗶𝗻𝗴: Hayley Zeinstra, eSkilled Customer Success Manager 𝗪𝗵𝗮𝘁 𝘆𝗼𝘂’𝗹𝗹 𝗱𝗶𝘀𝗰𝗼𝘃𝗲𝗿: 🟢 A cleaner, more intuitive interface for easier navigation 🟢 The upgraded TinyMCE editor for faster, richer content creation 🟢 Built-in AI tools to generate text and images directly inside Moodle But here’s where it gets interesting: 𝗧𝗵𝗲𝘀𝗲 𝗔𝗜 𝘁𝗼𝗼𝗹𝘀 𝗰𝗮𝗻 𝗵𝗲𝗹𝗽 𝘆𝗼𝘂: ☑️ Summarise complex learning content ☑️ Simplify topics for better learner understanding ☑️ Boost engagement with more accessible, digestible materials 𝗪𝗮𝗹𝗸 𝗮𝘄𝗮𝘆 𝘄𝗶𝘁𝗵 𝗽𝗿𝗮𝗰𝘁𝗶𝗰𝗮𝗹 𝘄𝗮𝘆𝘀 𝘁𝗼: ✅ Streamline your course creation process ✅ Enhance the quality of your training content ✅ Get more value from your LMS investment If you're using 𝗲𝗦𝗸𝗶𝗹𝗹𝗲𝗱 𝗟𝗠𝗦, this is a must-attend session. 𝗦𝗮𝘃𝗲 𝘆𝗼𝘂𝗿 𝘀𝗽𝗼𝘁 𝗻𝗼𝘄 👉 https://lnkd.in/gXV6T6JM #LearningManagement #LMS #Course #ContentCreation #Moodle #LearningExperience #Learning
To view or add a comment, sign in
-