The Universal Executable Framework (UBuilder) is a cross-platform solution designed to package and distribute applications written in various programming languages (Python, PHP, Node.js, etc.) as single, dependency-free executables. This framework addresses the critical deployment challenge faced by software engineers who need to distribute applications across different operating systems without requiring end-users to install runtime environments or dependencies.
"One executable, everywhere" - Create a unified deployment solution that transforms any application into a portable, self-contained executable that runs consistently across Windows, Linux, and macOS without external dependencies.
- Dependency Hell: Users must install language runtimes, libraries, and configurations
- Platform Fragmentation: Different deployment strategies for each OS
- Version Conflicts: Runtime version mismatches between development and production
- Distribution Complexity: Multiple files, installers, and setup procedures
- Support Overhead: Users struggling with environment setup issues
- Increased support costs due to deployment issues
- Reduced user adoption due to installation complexity
- Longer time-to-market for application releases
- Inconsistent user experience across platforms
- Universal Compatibility: Support Windows, Linux, and macOS from a single build
- Zero Dependencies: No runtime installation required on target machines
- Multi-Language Support: Python, PHP, Node.js, Java, and extensible architecture
- Single File Distribution: One executable file per platform
- Performance Optimization: Minimal startup overhead and resource usage
- Deployment Time: Reduce from hours to minutes
- Support Tickets: 80% reduction in installation-related issues
- Platform Coverage: 95% compatibility across target OS versions
- Binary Size: <50MB for typical applications
- Startup Time: <2 seconds for embedded applications
- Cross-platform compatibility layer
- Embedded resource management
- Runtime extraction and execution
- Process lifecycle management
- Automated embedding pipeline
- Cross-compilation support
- Resource optimization
- Digital signing integration
- Platform-specific runtime selection
- Version management
- Security sandboxing
- Resource isolation
- Source code embedding
- Dependency resolution
- Asset bundling
- Compression optimization
| Component | Technology | Rationale |
|---|---|---|
| Core Framework | C/C++ | Maximum portability, minimal dependencies |
| Build System | CMake + Shell Scripts | Cross-platform build automation |
| Compression | LZ4/ZSTD | Fast decompression for startup performance |
| Runtimes | Portable Python, PHP CLI, Node.js | Minimal footprint versions |
| Configuration | JSON/YAML | Human-readable configuration |
Deliverables:
- Project repository setup with CI/CD
- Basic C framework with embedding capabilities
- Python runtime integration (single platform)
- Simple "Hello World" demonstration
- Build system prototype
Acceptance Criteria:
- Successfully embed and execute Python script on Linux
- Automated build generates single executable
- Documentation covers basic usage
Deliverables:
- Windows and macOS compatibility
- Cross-compilation build system
- Platform-specific runtime handling
- Automated testing on all platforms
- Error handling and logging
Acceptance Criteria:
- Single build produces executables for all platforms
- Identical functionality across Windows, Linux, macOS
- Comprehensive test suite with 90% coverage
Deliverables:
- Modular runtime architecture (one runtime per build)
- PHP runtime variant
- Node.js runtime variant
- Build system for runtime-specific executables
- Runtime plugin system foundation
Acceptance Criteria:
- Generate separate executables:
myapp-python.exe,myapp-php.exe,myapp-node.exe - Each executable contains only its specific runtime (no bloat)
- Plugin architecture allows easy addition of new runtimes
- Build system supports
--runtime=python|php|nodeflags
Deliverables:
- Resource compression and optimization
- Digital signing and verification
- Plugin architecture for new languages
- GUI application support
- Advanced configuration options
Acceptance Criteria:
- 50% reduction in binary size through compression
- Code signing for Windows/macOS distribution
- Plugin system allows adding new runtimes
Deliverables:
- Production-grade error handling
- Comprehensive documentation
- Example applications and tutorials
- Performance optimization
- Security audit and hardening
Acceptance Criteria:
- Enterprise-ready stability and security
- Complete user and developer documentation
- Production deployment case studies
build example to build antoerh project
./ubuilder --project-dir='/path/to/project/entry.ext' --runtime=php gui=true ...