Krill Feature Roadmap
Last updated: 2026-04-03
This roadmap reflects the current state of the Krill platform. Features are categorized by status:
- Shipped — Implemented and available in the current release
- In Progress — Actively being worked on
- Planned — Committed to building, not yet started
- Exploring — Under consideration, not yet committed
Node Types — Completeness Matrix
All 35 node types have full UI (create, edit, view, row) across all platforms.
Root & Container Nodes
| Node | Status | Notes |
|---|
| Client | Shipped | Auto-discovery, FTUE, swarm visualization, node search |
| Client.About | Shipped | Version info and links |
| Server | Shipped | Raspberry Pi and Linux server management |
| Project | Shipped | Dashboard with sections, count badges, filter toggles, alert banner, QR code |
Hardware & Connectivity
| Node | Status | Notes |
|---|
| Server.Pin (Digital I/O) | Shipped | Input monitoring, output control via krill-pi4j gRPC |
| Server.Pin (PWM) | Exploring | PWM output mode acknowledged in UI but not yet functional (#150) |
| Server.SerialDevice | Shipped | USB serial with configurable protocol, auto-recovery |
| Server.Peer | Shipped | LAN beacon discovery, PIN-based cluster trust, SSE sync |
| Server.LLM | Shipped | Ollama integration, chat, node creation from prompts. Agentic actions (CREATE_LINKS, UPDATE_NODE) implemented but experimental |
| Server.Backup | Shipped | ZIP archive creation, retention cleanup, full restore with safety backup |
| MQTT (Publish) | Shipped | Publish DataPoint state to MQTT broker topics |
| MQTT (Subscribe) | Shipped | Subscribe to topics and write to target DataPoints |
Data & Visualization
| Node | Status | Notes |
|---|
| DataPoint | Shipped | Time-series with 5 data types (Double, Digital, Text, JSON, Color), CSV export |
| DataPoint.Filter (all 4) | Shipped | DiscardAbove, DiscardBelow, Deadband, Debounce — evaluated during snapshot write in DataProcessor |
| DataPoint.Graph | Shipped | Time-series visualization with zoom/pan, mini embeds, export button |
| Project.Diagram | Shipped | SVG upload, anchor-based live data overlays |
| Project.Camera | Shipped | Pi Camera Module 3 snapshot polling, live feed in dashboard |
| Project.TaskList | Shipped | Task management with completion tracking |
| Project.Journal | Shipped | Chronological entries with photo attachments |
Triggers
| Node | Status | Notes |
|---|
| Trigger.Button | Shipped | Manual one-shot execution (tap to fire) |
| Trigger.CronTimer | Shipped | 6-field cron scheduling |
| Trigger.HighThreshold | Shipped | Fires when value >= threshold |
| Trigger.LowThreshold | Shipped | Fires when value <= threshold |
| Trigger.SilentAlarmMs | Shipped | Watchdog for missing data updates |
| Trigger.IncomingWebHook | Shipped | HTTP endpoint trigger |
| Trigger.Color | Shipped | Fires when DataPoint color is within configured RGB range |
Executors
| Node | Status | Notes |
|---|
| Executor.LogicGate | Shipped | 10 gate types (AND, OR, NOT, NAND, NOR, XOR, XNOR, BUFFER, IMPLY, NIMPLY) |
| Executor.Calculation | Shipped | Formula-based math with multi-source references |
| Executor.Compute | Shipped | Statistical summaries over time ranges |
| Executor.OutgoingWebHook | Shipped | HTTP methods with headers, body, auth |
| Executor.Lambda | Shipped | Python execution with Firejail/Docker sandboxing |
| Executor.SMTP | Shipped | Email alerts via SMTP |
| Feature | Status | Notes |
|---|
| Kotlin Multiplatform codebase | Shipped | JVM, Android, iOS, WASM, Desktop |
| Android app (Play Store) | Shipped | Native Compose Multiplatform |
| iOS app (App Store) | Shipped | Native Compose Multiplatform |
| Desktop app (Linux/Mac/Windows) | Shipped | Installable via apt or standalone |
| WASM web app (kiosk mode) | Shipped | Served from server, auto-discovers host |
| PIN-based cluster authentication | Shipped | 4-digit PIN, HMAC-SHA256 derived tokens |
| Self-signed TLS with TOFU | Shipped | Auto-generated certs, certificate download |
| LAN beacon peer discovery | Shipped | UDP multicast with rolling TOTP validation |
| Server-Sent Events (SSE) | Shipped | Real-time state sync to all clients |
| H2 embedded database | Shipped | Persistent node and snapshot storage |
| Force-graph swarm visualization | Shipped | Interactive node layout with zoom/pan |
| Pi4J gRPC hardware bridge | Shipped | Separate daemon for GPIO access (JDK 25) |
| QR code generation | Shipped | Branded shrimp logo, unauthenticated endpoint |
| Polymorphic serializer | Shipped | All 35 KrillApp types registered |
| Guided onboarding | Shipped | Empty-swarm detection, server connection status, project creation overlay, hint cards |
| Data export (CSV) | Shipped | Server-side CSV with time range, Content-Disposition download, export buttons in editor and graph |
| Node search and filtering | Shipped | Swarm search bar with name/type matching, node dimming, section filter chips in project dashboard |
| Visual alerting | Shipped | Pulsing amber/red glow on WARN/ERROR nodes, project alert banners |
| Audio alerting | Shipped | Optional beep on Desktop (JVM Toolkit) and WASM (AudioContext), toggle in alert banner |
In Progress
| Feature | Description | Tier |
|---|
| Documentation accuracy sync | Adding verification timestamps to all blog posts, expanding sparse docs | Tier 2 |
Exploring
| Feature | Description |
|---|
| PWM output mode | Pulse-width modulation for LED dimming, motor speed control (#150) |
| I2C bus support | Direct I2C sensor communication (#151) |
| Camera MJPEG streaming | Live video stream proxy via rpicam-vid (currently snapshot polling) |
| Mesh auto-reconnect | Automatic re-establishment of peer SSE connections after network failure |
| Serial device auto-identification | Fingerprinting for known device types (#147) |
| Role-based access control (RBAC) | Multi-user permissions and audit logging |
| Multi-site WAN mesh | Server-to-server connections across networks |
| Lambda security hardening | CPU limits, seccomp filtering, container capability restrictions for Python execution |
How to Contribute
Krill is (mostly) open source. If you’re interested in working on any planned or exploring feature:
- Check the GitHub issues for existing discussions
- The Pi4J gRPC service welcomes contributions
- Join the community and share your use cases
This roadmap is updated as features ship. Check back for the latest status.