Skip to content

Project.Refactoring.en

inf32768 edited this page Oct 23, 2026 · 4 revisions

English | 简体中文

Refactoring Complete: Modernizing the Project

✅ Refactoring completed (October 2026). The planned refactoring scope is complete and was released with Ultimate Scaler 0.4.0. The project now uses the modern Fabric toolchain and mojmap, a V4 configuration system with a rebuilt configuration screen, automated CI/CD, and the new documentation and collaboration workflow. Automated smoke tests and removal of the legacy configuration screen remain follow-up work. See the 0.4.0 changelog for the full list of changes, and the configuration reference for the new configuration system.

This document records the comprehensive refactoring of the Ultimate Scaler project from November 2025 to October 2026. The goal was to upgrade the project from a personal project to a modern, sustainable, and collaborative open ecosystem compliant with current software development standards.

🎯 Motivation and Goals for Refactoring

Why Refactor?

  • Accumulated Technical Debt: The old codebase is difficult to maintain and extend, hindering the introduction of new features.
  • High Collaboration Barrier: Lack of standardized processes makes it difficult for external contributors to participate.
  • Cumbersome Release Process: Manual operations are error-prone and do not provide a continuous integration experience.

Refactoring Goals:

  1. Standardization: Establish clear rules for code commits, version management, and branching strategies.
  2. Automation: Improve CI/CD pipelines for building, testing, and releasing, freeing up productivity.
  3. Documentation: Enhance code comments, API documentation, and contributor guides.
  4. Community Building: Lower collaboration barriers and foster a healthy contributor ecosystem.

📋 Scope and Core Tasks of Refactoring

Module Status Details/Subtasks
1. Version Control and Collaboration Workflow Completed - [x] Establish semantic commit and versioning standards
- [x] Adopt trunk-based development branching strategy
- [x] Create Issue templates and document the Pull Request flow
2. Continuous Integration and Delivery Completed - [x] Set up basic CI (AppVeyor)
- [x] Implement automatic release
- [x] Implement nightly builds
- [ ] Integrate automated testing (temporarily deferred)
3. Project Documentation and Community Completed - [x] Refactor README.md
- [x] Create Wiki homepage and this page
- [x] Write CONTRIBUTING.md
- [x] Create a contributor list
4. Code Quality and Architecture Completed - [x] Add doc comments for core code
- [x] Replace obfuscation maps
- [x] Standardize dependency management (Gradle)
- [x] Reorganize configuration menu

💠 Background of the Refactoring

Since I (INF32768, the author of this mod) lack software engineering practice, this project has been based on my “intuitive” ideas for commits and version releases since its inception. This resulted in pitfalls like big bang commits, making the codebase difficult to maintain and extend.

About three and a half months ago, after releasing a stable version, I hit the pause button. The reason was simple: I needed rest and had to cope with the new semester.

It was during this “interval period” that I had the chance to reflect. Through communication and learning, I encountered modern software engineering practices like atomic commits and trunk-based development. I realized that while the old workflow “worked”, it posed significant risks in code traceability, collaboration norms, and long-term maintenance. Rather than waiting for problems to erupt, it's better to proactively upgrade.

Refactoring during a stable period of the project minimizes costs while maximizing benefits. It’s like replacing the engine of a ship while it’s sailing, just to allow it to voyage further into the future.

Therefore, I decided to launch the refactoring plan for the Ultimate Scaler project and use it as a declaration for the project’s update revival. May the Ultimate Scaler project, after refactoring, become a more standardized, sustainable, and collaborative open-source project.

For the official announcement about the start of the refactoring, see Ultimate Scaler: Refactoring Workflow – A New Chapter Begins (BiliBili, Chinese)

Wiki 导航 | Navigation

🏠 首页 | Home

🧭 用户指南 | User Guide

📈 项目治理 | Project Management

📚 参考资料 | References

Clone this wiki locally