A client-side adapter capable of loading historical Minecraft resource packs on modern Minecraft versions, preserving their visual appearance, models, and user interfaces as closely as technically possible.
The repository is currently in the scoping and implementation preparation phase. Design decisions are documented prior to codebase initialization in order to keep the engine independent of mod loaders and avoid maintaining a giant pairwise version-to-version mapping matrix.
- Documentation
- Scope and Requirements
- Target Architecture
- Domain Model & IR
- Implementation Plan
- Roadmap
- Compatibility Policy
- Testing Strategy
- Architecture Decision Records
- Minecraft versions themselves are the primary source of truth; migrations are derived from comparing successive version schemas.
- Version-specific formats are converted into canonical intermediate representations (IRs).
- The conversion engine core has zero dependencies on any Minecraft mod loader.
- The original source pack remains completely immutable; the adapter exposes a virtual resource pack and caches expensive transformations.
- Unclassified or unknown changes must be visible and explicitly categorized—never silently ignored.
- Structural limits—specifically arbitrary custom core shaders and missing pixels for newly introduced geometry—are explicitly reported in the conversion output.
adapter-core/ Domain model, IRs, diff engine, and migration engine
adapter-ingest/ Version ingestion pipeline and schema generator
adapter-runtime-common/ Common Minecraft-facing runtime abstractions
adapter-fabric/ Fabric mod loader integration
adapter-forge/ Forge mod loader integration
adapter-neoforge/ NeoForge mod loader integration
adapter-cli/ Offline CLI converter, diagnostics, and CI tooling
compat-db/ Generated version database and manual semantic rules
docs/ Documentation and ADRs
Note: This layout is a target design architecture, not yet an initialized build structure.