58 lines
1.4 KiB
Markdown
58 lines
1.4 KiB
Markdown
# Korken Mosaic (Flutter MVP)
|
||
|
||
Prototype Flutter app for generating bottle-cap mosaics from imported images.
|
||
|
||
## Implemented MVP
|
||
|
||
- Import target image from gallery (`image_picker`)
|
||
- Resolution controls:
|
||
- explicit grid width/height
|
||
- or auto grid by approximate cap size in source image pixels
|
||
- Cap palette management:
|
||
- list caps with name + color
|
||
- add color via picker and/or manual hex
|
||
- remove caps
|
||
- Mosaic generation:
|
||
- resize source to grid
|
||
- nearest cap color match using CIELAB + DeltaE (CIE76)
|
||
- fallback concept is RGB distance, but LAB path is implemented directly
|
||
- Output:
|
||
- mosaic grid preview
|
||
- bill of materials counts per cap color
|
||
|
||
## Current blocker on this machine
|
||
|
||
`flutter` SDK is not installed (`flutter: command not found`), so I could not run:
|
||
|
||
- `flutter create`
|
||
- `flutter pub get`
|
||
- `flutter analyze`
|
||
- `flutter build apk --debug`
|
||
|
||
## Setup commands (Ubuntu/Debian)
|
||
|
||
```bash
|
||
cd /home/yadciel/.openclaw/workspace
|
||
sudo snap install flutter --classic
|
||
# OR: install manually from flutter.dev and add to PATH
|
||
|
||
flutter doctor
|
||
|
||
cd /home/yadciel/.openclaw/workspace/korken_mosaic
|
||
flutter create .
|
||
flutter pub get
|
||
flutter run
|
||
flutter build apk --debug
|
||
```
|
||
|
||
Expected APK artifact:
|
||
|
||
`build/app/outputs/flutter-apk/app-debug.apk`
|
||
|
||
## Project files
|
||
|
||
- `lib/main.dart` – complete MVP UI + mosaic logic
|
||
- `pubspec.yaml` – dependencies
|
||
- `analysis_options.yaml`
|
||
- `.gitignore`
|