11.2 README
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
45
README.md
Normal file
45
README.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Frame Processor
|
||||
|
||||
Self-hosted ASP.NET Core (.NET 10) service that dithers and color-remaps images for
|
||||
Spectra 6 e-ink frames, persists the result to disk, and notifies the frame via MQTT.
|
||||
|
||||
## Documentation
|
||||
|
||||
- [`SPEC.md`](SPEC.md) — authoritative behavior contract.
|
||||
- [`PLAN.md`](PLAN.md) — implementation design and verification checklist.
|
||||
- [`CLAUDE.md`](CLAUDE.md) — load-bearing conventions and working notes.
|
||||
|
||||
## Quick start
|
||||
|
||||
```sh
|
||||
docker compose up --build
|
||||
```
|
||||
|
||||
Brings up `frame-processor` on `:8080` plus a `mosquitto` broker on `:1883`.
|
||||
|
||||
## Smoke tests
|
||||
|
||||
```sh
|
||||
# Health (also reports MQTT connection state)
|
||||
curl http://localhost:8080/health
|
||||
|
||||
# Upload a file
|
||||
curl -H "X-Api-Key: change-me" \
|
||||
-F "image=@photo.jpg" \
|
||||
http://localhost:8080/api/frames/living-room/image
|
||||
|
||||
# Upload via URL
|
||||
curl -H "X-Api-Key: change-me" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"url":"https://example.com/photo.jpg"}' \
|
||||
http://localhost:8080/api/frames/living-room/image-url
|
||||
|
||||
# Fetch the processed PNG (the frame does this on MQTT signal)
|
||||
curl http://localhost:8080/i/aabbccddeeff.png > out.png
|
||||
|
||||
# Watch MQTT publishes
|
||||
mosquitto_sub -t 'frames/#' -v
|
||||
```
|
||||
|
||||
Configure frames in [`frames.json`](frames.json); service settings in
|
||||
[`appsettings.json`](appsettings.json) (or via `Mqtt__Host`-style env vars).
|
||||
Reference in New Issue
Block a user