How I Refactored a Bloated Open‑Source Admin into a Lean Backend Solution
The author shares a personal journey from early backend work to full‑stack responsibilities, critiques heavyweight admin frameworks, and explains how they rebuilt a lightweight enterprise admin using MyBatisPlus, Lombok, and streamlined architecture, while outlining future enhancements such as email, payment, multi‑tenant, and distributed scheduling.
Origin
When I first started my career I thought completing backend APIs meant the job was done. After a few years I began handling front‑end tasks as well, and in every company I worked for the front‑end and back‑end were separated but the people were not, forcing continuous learning.
Insights
After three to five years I realized the importance of summarizing business logic, technical choices, improving development efficiency, and scaling from an individual to a team. Using excellent open‑source projects can save a lot of development effort.
Company Needs a Backend System
Most companies require an enterprise‑grade admin system with similar core features:
Organizational structure
Personnel management
Permission management (classic RBAC)
Log monitoring
System monitoring
Scheduled tasks
Low‑code generation
Building these from scratch is time‑consuming, so many turn to open‑source solutions such as Ruoyi, EL‑Admin, Ruoyi‑Plus, or Yudao‑Admin.
Problems with Existing Open‑Source Admins
Feature bloat: many modules are unnecessary, making the project heavy.
Outdated technology: some still rely on MyBatis XML files in 2024.
Refactor, Simplify, Upgrade, Optimize
I created a lightweight enterprise admin by dissecting and iterating on Ruoyi:
https://ruoyi.vip/(the official Ruoyi site, credited to the original authors).
Key changes include:
Removed the Maven aggregation structure and unnecessary dependencies, simplifying the project to a single module.
Switched from MyBatis XML to MyBatis‑Plus and added Lombok, eliminating the need for manual XML mapping.
Discarded the low‑code generator and sharding features that were not required.
Removed redundant dependencies such as template engines.
Refactored front‑end code from Promise chains to async/await, reducing code size and improving readability.
Optimized UI components, removing rarely used elements.
These changes reduced project size, improved maintainability, and increased development speed.
Future Plans
Further optimizations and new modules are planned, including email tasks, payment integration, multi‑tenant support, and replacing the Quartz scheduler with a distributed job framework (e.g., xxx‑job). The project is currently deployed internally and not open‑source.
Top Architect
Top Architect focuses on sharing practical architecture knowledge, covering enterprise, system, website, large‑scale distributed, and high‑availability architectures, plus architecture adjustments using internet technologies. We welcome idea‑driven, sharing‑oriented architects to exchange and learn together.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.