Project Structure¶
Top-level modules¶
-
core/DSGL runtime and public DSL that is not Minecraft-version-specific. -
mc-forge-1-7-10/Minecraft 1.7.10 screen host and renderer adapter integration on top ofcore. -
mc-forge-1-7-10-demo/Demo mod and showcase window/sections used as real usage examples and manual playground. -
dsgl-hot-reload-agent/Native Rust JVMTI agent submodule for hot-reload signaling. Built with Cargo, not with Gradle module tasks.
core/ structure¶
-
src/main/kotlin/org/dreamfinity/dsgl/core/Dsl.ktPublic DSL surface (ui,UiScope, element/component builders, style DSL access). -
src/main/kotlin/org/dreamfinity/dsgl/core/DsglWindow.ktWindow contract and hook render-session lifecycle bridge for hosts. -
src/main/kotlin/org/dreamfinity/dsgl/core/DomTree.ktRetained DOM tree: reconcile, layout, paint command generation, ref commit. -
src/main/kotlin/org/dreamfinity/dsgl/core/hooks/Hook runtime and hook APIs (useState,useEffect,useMemo, etc.). -
src/main/kotlin/org/dreamfinity/dsgl/core/style/DSS parsing, stylesheet loading, style registry/model, computed style application. -
src/main/kotlin/org/dreamfinity/dsgl/core/dom/DOM node implementations, layout models, reconcile helpers, overflow/positioning behaviour. -
src/main/kotlin/org/dreamfinity/dsgl/core/overlay/Overlay layering/contracts and host-layer plumbing. -
src/main/kotlin/org/dreamfinity/dsgl/core/components/,select/,contextmenu/,colorpicker/,dnd/Higher-level public helpers and advanced interaction systems. -
src/test/kotlin/...Main regression coverage (hooks, layout, style, overlay/input, helper systems).
mc-forge-1-7-10/ structure¶
-
src/main/kotlin/org/dreamfinity/dsgl/mc1710/DsglScreenHost.ktMain runtime host path for lifecycle, rebuild, input routing, and layer composition. -
src/main/kotlin/org/dreamfinity/dsgl/mc1710/Mc1710UiAdapter.ktExecutesRenderCommandoutput against MC/LWJGL 1.7.10 APIs. -
src/main/kotlin/org/dreamfinity/dsgl/mc1710/text/MSDF runtime text rendering integration. -
src/main/kotlin/org/dreamfinity/dsgl/mc1710/scissorsHelper/Scissor/clipping helper code for backend rendering.
mc-forge-1-7-10-demo/ structure¶
-
src/main/kotlin/.../demo/ShowcaseWindow.ktMain demo window. -
src/main/kotlin/.../demo/sections/Focused examples by feature area (layout, hooks, stylesheets, DnD, modal/select/context menu, etc.). -
build.gradle.kts+gradle.propertiesDemo run configuration, including optional hot-reload agent wiring.
Build and release structure¶
-
settings.gradle.ktsIncludes the Gradle multi-module build (:core,:mc-forge-1-7-10,:mc-forge-1-7-10-demo). -
build.gradle.kts(root) Shared tasks (font atlas generation/compression, module bump tasks, convenience aliases). -
buildSrc/src/main/kotlin/*.conventions.gradle.ktsInternal Gradle convention plugins used by modules. -
core/gradle.properties,mc-forge-1-7-10/gradle.properties,mc-forge-1-7-10-demo/gradle.propertiesModule-level version/build flags and run properties.
Docs and site¶
-
docs/MkDocs content pages. -
mkdocs.ymlSite nav and MkDocs configuration. -
theme/MkDocs Material overrides.
Assets/tooling directories¶
-
fonts/Source font assets. -
precompiled_fonts*directories Generated/prebuilt font artefacts consumed during resource packaging.
Where should I change X?¶
- DSL/API behaviour: start in
core/.../Dsl.ktand relevantcore/hooksor component package. - Runtime frame behaviour: start in
mc-forge-1-7-10/.../DsglScreenHost.ktandcore/DomTree.kt. - Style parsing/application: start in
core/style/. - Overlay routing/ordering: start in
core/overlay/plus host integration inDsglScreenHost. - Demo regressions/examples:
mc-forge-1-7-10-demo/src/main/kotlin/.../demo/sections.