App tutorials | App tutorials

App tutorials

Each tutorial in this section builds one small but complete Viam app end-to-end, from empty project directory to a program you can run against your own machine. The tutorials assume your project is already scaffolded, see App scaffolding for the prerequisite setup.

Pick a tutorial

Tutorial Language Shape Scope What it builds
Single-machine dashboard TypeScript (browser) Web UI One machine Camera feed, live sensor reading, motor start/stop button, connection status. Introduces the core client pattern: connect, fetch resources by name, call component APIs.
Multi-machine fleet dashboard TypeScript (browser) Web UI Organization fleet Lists every machine in your org and shows aggregated sensor readings from each. Introduces cloud-scoped API keys and MQL aggregation over captured data.
Flutter app with widgets Flutter (iOS, Android, desktop) Mobile/desktop UI One machine Camera, sensor, and motor control using the prebuilt Flutter widgets (ViamCameraStreamView, ViamSensorWidget, ViamMotorWidget). Introduces the widget-based approach for Flutter apps.
Python monitoring service Python Headless service One machine Non-UI process that polls a sensor on a schedule and drives a motor based on the reading. Introduces the headless-service pattern and clean shutdown.

Before you start

Every tutorial assumes you have a scaffolded project for the target language and a reachable machine. If you haven’t set up a project yet, work through App scaffolding first, it covers project creation, SDK installation, credentials, and a connection verification step that every tutorial builds on.