Challenge
The existing setup had three major problems. The site ran on WordPress with a LMS theme. Performance was poor, the admin interface was confusing and extremely limiting, and only one person knew how to use it. The entire team depended on that single person. Costs were $180/month for hosting and plugins. With 11,000 users accessing daily, migration needed to be error-free.
Action
The existing setup had three major problems.
Building from scratch
A custom LMS replacing the WordPress setup. Handles 120+ courses, payment processing across multiple countries, secure Vimeo streaming, and a unique membership system that extends course access rather than providing it.
UI/UX Design
Full interface design in Figma covering five device sizes (primarily focused on mobile, as 89% of traffic is mobile). Consistent design system across student platform, admin panel, and public pages. Every component built for usability, turning complex actions like course management and checkout into intuitive flows.
Migration strategy
The migration handled 11,000 active users. Database reorganized, then imported into SQL via terminal commands. Passwords maintained the same hash for seamless login. Course progress, purchase history, and certificates all transferred intact with no data loss or disruption.
The membership system
The most complex feature. Memberships extend viewing time for purchased courses (1 year default) rather than granting access. Extensions calculate from expiration date, or purchase date if expired. Each tier offers specific discounts shown automatically in cart with visual badges. Custom logic spans payment processing, access control, and checkout.
Payment infrastructure
Integrates two payment processors: local Peruvian for domestic transactions (Mercado Pago) and LemonSqueezy for international. Both use webhooks for payment verification and automatic access provisioning.
Problems while building
Technical challenges during development.
Order migration complexity
Migrating orders was very difficult. Years of WordPress data with inconsistent structures: promotional discounts, pre-sale deadlines, country-based pricing, and combinations of all factors. Each order mapped carefully to ensure students kept correct access and purchase history.
API reliability
API failures would impact thousands of users, so reliability was critical. All endpoints include error handling, validation, and fallback mechanisms. Testing and monitoring ensure stability under real-world load.
Performance optimization
Page speed mattered since many students access from regions or devices with slower internet. Spent nearly three weeks optimizing image delivery through Cloudflare's CDN with smart routing. Configured proper caching headers, implemented responsive image loading, and fine-tuned CDN distribution for nearest edge delivery. Database queries also optimized for concurrent user volume.
Platform
Students can browse courses, purchase with multiple payment methods, watch lessons, track progress, and download certificates. The interface is fast and works well even on slower connections.
Admin Panel
WordPress admin created a dependency problem. The confusing interface meant only one person could create orders, edit courses, or manage students. Redesigned from scratch with owner input to get a fully customized dashboard. Team members now handle course creation, enrollment management, sales review, and promotion setup without training.
Backend
Handles authentication, payment processing, video streaming integration, automated emails, certificate generation, and membership logic. Built to scale. The infrastructure can handle 68,000+ users without requiring a rebuild.
Result
Reduced infrastructure costs by 87%, from $180/month to $24/month. Students experience faster load times, conversion rates improved, and the team gained independence. Anyone on the team can manage courses and students without technical knowledge. Built to scale as the school grows internationally.