Feature Roadmap

Feature Roadmap

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

NodeStatusNotes
ClientShippedAuto-discovery, FTUE, swarm visualization, node search
Client.AboutShippedVersion info and links
ServerShippedRaspberry Pi and Linux server management
ProjectShippedDashboard with sections, count badges, filter toggles, alert banner, QR code

Hardware & Connectivity

NodeStatusNotes
Server.Pin (Digital I/O)ShippedInput monitoring, output control via krill-pi4j gRPC
Server.Pin (PWM)ExploringPWM output mode acknowledged in UI but not yet functional (#150)
Server.SerialDeviceShippedUSB serial with configurable protocol, auto-recovery
Server.PeerShippedLAN beacon discovery, PIN-based cluster trust, SSE sync
Server.LLMShippedOllama integration, chat, node creation from prompts. Agentic actions (CREATE_LINKS, UPDATE_NODE) implemented but experimental
Server.BackupShippedZIP archive creation, retention cleanup, full restore with safety backup
MQTT (Publish)ShippedPublish DataPoint state to MQTT broker topics
MQTT (Subscribe)ShippedSubscribe to topics and write to target DataPoints

Data & Visualization

NodeStatusNotes
DataPointShippedTime-series with 5 data types (Double, Digital, Text, JSON, Color), CSV export
DataPoint.Filter (all 4)ShippedDiscardAbove, DiscardBelow, Deadband, Debounce — evaluated during snapshot write in DataProcessor
DataPoint.GraphShippedTime-series visualization with zoom/pan, mini embeds, export button
Project.DiagramShippedSVG upload, anchor-based live data overlays
Project.CameraShippedPi Camera Module 3 snapshot polling, live feed in dashboard
Project.TaskListShippedTask management with completion tracking
Project.JournalShippedChronological entries with photo attachments

Triggers

NodeStatusNotes
Trigger.ButtonShippedManual one-shot execution (tap to fire)
Trigger.CronTimerShipped6-field cron scheduling
Trigger.HighThresholdShippedFires when value >= threshold
Trigger.LowThresholdShippedFires when value <= threshold
Trigger.SilentAlarmMsShippedWatchdog for missing data updates
Trigger.IncomingWebHookShippedHTTP endpoint trigger
Trigger.ColorShippedFires when DataPoint color is within configured RGB range

Executors

NodeStatusNotes
Executor.LogicGateShipped10 gate types (AND, OR, NOT, NAND, NOR, XOR, XNOR, BUFFER, IMPLY, NIMPLY)
Executor.CalculationShippedFormula-based math with multi-source references
Executor.ComputeShippedStatistical summaries over time ranges
Executor.OutgoingWebHookShippedHTTP methods with headers, body, auth
Executor.LambdaShippedPython execution with Firejail/Docker sandboxing
Executor.SMTPShippedEmail alerts via SMTP

Platform Infrastructure

FeatureStatusNotes
Kotlin Multiplatform codebaseShippedJVM, Android, iOS, WASM, Desktop
Android app (Play Store)ShippedNative Compose Multiplatform
iOS app (App Store)ShippedNative Compose Multiplatform
Desktop app (Linux/Mac/Windows)ShippedInstallable via apt or standalone
WASM web app (kiosk mode)ShippedServed from server, auto-discovers host
PIN-based cluster authenticationShipped4-digit PIN, HMAC-SHA256 derived tokens
Self-signed TLS with TOFUShippedAuto-generated certs, certificate download
LAN beacon peer discoveryShippedUDP multicast with rolling TOTP validation
Server-Sent Events (SSE)ShippedReal-time state sync to all clients
H2 embedded databaseShippedPersistent node and snapshot storage
Force-graph swarm visualizationShippedInteractive node layout with zoom/pan
Pi4J gRPC hardware bridgeShippedSeparate daemon for GPIO access (JDK 25)
QR code generationShippedBranded shrimp logo, unauthenticated endpoint
Polymorphic serializerShippedAll 35 KrillApp types registered
Guided onboardingShippedEmpty-swarm detection, server connection status, project creation overlay, hint cards
Data export (CSV)ShippedServer-side CSV with time range, Content-Disposition download, export buttons in editor and graph
Node search and filteringShippedSwarm search bar with name/type matching, node dimming, section filter chips in project dashboard
Visual alertingShippedPulsing amber/red glow on WARN/ERROR nodes, project alert banners
Audio alertingShippedOptional beep on Desktop (JVM Toolkit) and WASM (AudioContext), toggle in alert banner

In Progress

FeatureDescriptionTier
Documentation accuracy syncAdding verification timestamps to all blog posts, expanding sparse docsTier 2

Exploring

FeatureDescription
PWM output modePulse-width modulation for LED dimming, motor speed control (#150)
I2C bus supportDirect I2C sensor communication (#151)
Camera MJPEG streamingLive video stream proxy via rpicam-vid (currently snapshot polling)
Mesh auto-reconnectAutomatic re-establishment of peer SSE connections after network failure
Serial device auto-identificationFingerprinting for known device types (#147)
Role-based access control (RBAC)Multi-user permissions and audit logging
Multi-site WAN meshServer-to-server connections across networks
Lambda security hardeningCPU 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:

  1. Check the GitHub issues for existing discussions
  2. The Pi4J gRPC service welcomes contributions
  3. Join the community and share your use cases

This roadmap is updated as features ship. Check back for the latest status.