mirror of
https://github.com/oxc-project/oxc.git
synced 2026-09-14 19:36:11 +08:00
f1862c4303
Goal of this PR is too feed AI with more context. ## Summary Add extensive documentation to guide development of the world's best JavaScript minifier. ## Documentation Added ### New Files - **ARCHITECTURE.md**: Design philosophy and component overview - **OPTIMIZATIONS.md**: Catalog of all 17 current optimizations and planned additions - **ASSUMPTIONS.md**: Document code assumptions for safe optimizations - **CORRECTNESS.md**: Testing strategies and validation guarantees - **ROADMAP.md**: Development phases and success metrics - **CLAUDE.md**: AI assistant guide for development ### Updated Files - **README.md**: Updated with features, testing infrastructure, and documentation links - **src/lib.rs**: Enhanced module documentation with examples ## Goals This documentation establishes the vision for oxc_minifier: - 🎯 **Smallest output size** (beat Closure Compiler) - ✅ **100% correctness** (full test suite compliance) - ⚡ **Reasonable performance** (competitive with esbuild) ## Inspiration Learning from industry leaders: - Closure Compiler (advanced size optimizations) - Terser/UglifyJS (comprehensive battle-tested transforms) - esbuild (efficient algorithms) - SWC (modern Rust architecture) ## Benefits - Clear development roadmap - Comprehensive optimization documentation - AI-friendly development guide - Testing and correctness guarantees - Documented assumptions for safe optimizations 🤖 Generated with [Claude Code](https://claude.ai/code)
1.7 KiB
1.7 KiB
Development Roadmap
Phase 1: Foundation ✓
- Basic peephole optimizations
- Constant folding
- Dead code elimination
- Test infrastructure (minsize, coverage, e2e)
- Fixed-point iteration
Phase 2: Complete Optimization Suite ✓
- Port safe optimizations from Closure Compiler
- Port core optimizations from Terser/UglifyJS
- Advanced constant propagation
- Cross-statement optimizations
- Template literal optimization
- Array/object patterns
Phase 3: Advanced Optimizations (Current)
- Function inlining (when provably safe)
- Switch statement optimization
- Advanced string concatenation (extending
oxc_ecmascriptstring operations) - Enum unboxing
- Property collapsing
- Better RegExp optimization
- Loop optimizations
- Cross-module optimization
- Perfect side effect analysis (extending
oxc_ecmascriptcapabilities) - Advanced DCE with escape analysis
- Type-aware optimizations (from TS types)
- Framework-specific optimizations (React, Vue, Angular)
Phase 4: Production Ready
- Differential testing framework
- Fuzzing infrastructure
- Performance optimization
- Source map improvements
- Custom optimization plugins
Goals
Size: Beat Closure Compiler, smallest output for top npm packages Correctness: 100% test262/Babel/TypeScript conformance Performance: < 2x slower than esbuild, < 10x faster than Terser Adoption: Integration in major build tools
Contributing
- Port optimizations from Closure Compiler, Terser, esbuild
- Test with real-world code and report issues
- Performance profiling and optimization
- Documentation improvements
See CONTRIBUTING.md for guidelines.