Onion99/KMP-MineStableDiffusion

🎨 Multiplatform AI image generation app powered by Stable Diffusion • Built with Kotlin Multiplatform & Compose • Supports SDXL, FLUX, SD3 & more • Native performance via C++/JNI • Android/iOS & Desktop ready

★ 127Forks 11KotlinGitHub ↗Compare
aiai-artandroidcompose-multiplatformdesktopgenerative-aiggufgithub-appioskotlinkotlin-multiplatformlinuxmacos-appoffline-aioffline-llmondevice-aistable-diffusionstable-diffusion-androidtxt2imgwindows

README

Mine StableDiffusion logo

Mine StableDiffusion 🎨

The kotlin multiplatform Stable Diffusion client
Generate stunning AI art locally on Your devices

Kotlin Platforms Release GitHub stars

Compose Multiplatform Koin Vulkan Metal

App preview

✨ What is Mine StableDiffusion?

Mine StableDiffusion is a native, offline-first AI art generation studio resting right in your pocket or on your desk. Built entirely on modern Kotlin Multiplatform and powered by the blazing-fast stable-diffusion.cpp engine, it delivers desktop-class inference capabilities across Android, iOS, and Desktop platforms.

🎯 The Edge

  • 🚀 Native Performance — Pure C++ backend combined with JNI bindings ensures maximum hardware utilization.
  • 🔒 100% Privacy — Everything runs offline. No cloud, no subscriptions, no data harvesting.
  • 📱 True Multiplatform — A unified, beautiful Compose Multiplatform UX natively adapted for Mobile & Desktop.
  • 💠 Pro-Level Controls — Granular control over VRAM (Flash Attention, CPU Offloading, Direct Convolution).
  • 🧩 Endless Expansion — Out-of-the-box support for external .safetensors LoRAs, advanced Samplers, and metadata injection.

📸 See It In Action

📱 Mobile Experience (Android / iOS)

App Settings Generating View Output Gallery

💻 Desktop Experience (Windows / macOS / Linux)

Fluid UI Creative Workflows macOS Native

🔥 Highlighted Features

🖼️ Batch / Text-to-Image Generation

Never generate just one idea again. Batch Generation synchronously crafts up to 10 iterations of your prompt with beautiful inline progress tracking right in your chat flow.

🎭 Infinite Styles via LoRA

Drag-and-drop support for .safetensors LoRA extensions. Mix multiple LoRAs simultaneously with precision weight sliders built right into the UI.

🎛️ Transparent Sampling & Prompting

Master the machine. Switch Sampler algorithms on the fly (Euler a, DPM++ 2M, LCM, TCD, etc.) to discover exactly how they mutate your art.

🏷️ Self-Documenting Art

Exported PNGs automatically embed all generation parameters (Prompt, Seed, Model, Sampler, CFG, LoRAs). Just drop the image back into any SD tool, and your exact setup is retrieved.


🎲 Model Support & Tiers

We cover bleeding-edge architectures. Ensure the models you pick fit within your device's VRAM limits:

Tip

Start Small: We highly recommend testing the waters with SD-Turbo or SD 1.5 models to gauge your device's capabilities before moving to demanding architectures like FLUX.

🎮 Entry & Speed (Fastest, Minimal VRAM)

⚖️ Balanced Performance (Moderate VRAM)

💎 Professional Quality (High Requirements)

Best for high-detail 1024x1024+ generation. Requires modern GPUs with ample VRAM.


🛠 Advanced Controls Deep Dive

Tuning Parameter What it does Pro Tip
Quantization (wtype) Formats weights to limit RAM footprint (F16, Q8_0, Q4_K).
(Note: Not applicable for pre-quantized .gguf files)
Leave on Auto unless explicitly tuning for low VRAM targets.
Offload to CPU Offloads model computations from GPU to CPU. Enable if you encounter OOM errors while loading the model.
Keep CLIP on CPU Forces the CLIP text encoder to stay on CPU. Enable if you experience crashes during image generation.
Keep VAE on CPU Forces the VAE decoder to stay on CPU. Enable if you encounter OOM errors during decode.

Memory Setting Example


� Platform Compatibility

OS Status Hardware Requirement
🤖 Android ✅ Stable Android 11+ (API 30+) running Vulkan 1.2+
🪟 Windows ✅ Stable Windows 10+ running Vulkan 1.2+
🐧 Linux ✅ Stable Standard modern Vulkan 1.2+ drivers
🍎 macOS ✅ Stable  Silicon or Intel with Metal Support
📱 iOS ✅ Beta A13 Bionic or newer, Metal Support

�️ Architecture

Under the hood, Mine StableDiffusion relies on zero compromises:

graph TB
    A[Compose Multiplatform UI] --> B[Cross-Platform ViewModels]
    B --> C[Koin Dependency Injection]
    C --> D[JNI Bridge]
    D --> E[C++ Native Optimization Layer]
    E --> F[stable-diffusion.cpp / llama.cpp]
    F --> G[Vulkan / Metal Hardware Acceleration]
Loading

🚀 Get Started Now

Option 1: Quick Install (Recommended)

  1. Head over to our Releases Page.
  2. Download the package crafted for your OS (.apk, .dmg, .exe).
  3. Simply launch it, point it to a model (.gguf or .safetensors), and begin typing your prompt!

Option 2: Build From Source

Got Android Studio or IntelliJ IDEA?

# Clone the repository
git clone https://github.com/Onion99/KMP-MineStableDiffusion.git
cd KMP-MineStableDiffusion

# Build for Desktop
./gradlew :composeApp:run

# Build for Android
./gradlew :composeApp:assembleDebug

📚 Resources & Community

❤️ Acknowledgements

We stand on the shoulders of giants:


Enjoying the project? Share some love by giving it a ⭐ and spreading the word!
Licensed under the GPL 3.0 License

Contributors

Onion99

Issues

[BUG]

#17 · open · 0 comments

[BUG]

#16 · open · 4 comments