From 6cb61b29f1aa24ca0b4d97102414e4b810f47c3a Mon Sep 17 00:00:00 2001 From: Sebastiaan de Schaetzen Date: Wed, 13 May 2026 12:26:05 +0200 Subject: [PATCH] Add GEMINI.md --- GEMINI.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 GEMINI.md diff --git a/GEMINI.md b/GEMINI.md new file mode 100644 index 0000000..18d2c04 --- /dev/null +++ b/GEMINI.md @@ -0,0 +1,21 @@ +# DiceOS + +DiceOS is a custom desktop-like environment built on top of the LibGDX framework using Java. It features a custom rendering pipeline, windowing system, and modular service-based architecture managed by Avaje Inject. + +## Building and Running + +The project uses Gradle. + +* **Build:** `./gradlew build` +* **Run:** `./gradlew run` (Assumes an application task is defined) +* **Test:** `./gradlew test` + +## Development Conventions + +* **Language:** Java +* **Dependency Injection:** Uses `avaje-inject`. Components are marked with `@Component` and injected via constructor. +* **Boilerplate:** Uses `lombok` for boilerplate reduction. +* **Rendering:** Built on LibGDX. Main entry point is `DiceOS.java` which extends `ApplicationAdapter`. +* **Project Structure:** + * `src/main/java/be/seeseemelk/diceos/system`: Core OS services (Display, Window, Input, etc.). + * `src/main/resources`: Assets (backgrounds, system textures, fonts).