DEV Community

Cover image for Kitchen Chaos: The Hands-Free Cooking Assistant
Tony
Tony

Posted on Edited on

Kitchen Chaos: The Hands-Free Cooking Assistant

Presage SmartSpectra SDK Challenge Submission

This is a submission for the Presage SmartSpectra SDK Challenge

What I Built

I got the idea from watching my mother cook. She was following a recipe video on YouTube, but her hands were dirty, so every time she needed the next step she had to wipe her hands and touch the screen.

Kitchen Chaos is a hands-free cooking assistant. You follow a recipe one step at a time, and you never touch the screen:

  • 😊 Smile to go to the next step.
  • 🙃 Tilt your head to the left for about a second to go back. It has two recipes (Fluffy Pancakes and Spaghetti Bolognese). Each step shows clear instructions, the amounts you need and safety tips. There is a pause/resume timer, a cheerful chef mascot, and music. Big Back / Repeat / Next buttons always work too, so the camera is optional.

Demo

Code

Kitchen Chaos app icon

Kitchen Chaos: Hands-Free Cooking Assistant

Cook Without Touching Your Screen!

Kitchen Chaos lets you follow a recipe without touching your computer. Smile to go to the next step, tilt your head to go back a step. Expressions are detected live by the Presage SmartSpectra SDK.

Built for the Presage SmartSpectra Challenge (#presagechallenge).

Why: I watched my mother follow a YouTube recipe with dirty hands. Every time she needed the next step she had to wipe her hands and touch the screen. Kitchen Chaos lets the recipe follow you instead.

Cooking mode: one step at a time, with smile and head tilt controls at the bottom

Screenshots

Welcome Choose a recipe
Welcome screen with the chef mascot Recipe selection with pancakes and spaghetti bolognese
Recipe details Camera setup and expression test
Ingredients, equipment and steps for Fluffy Pancakes Camera consent and the quick expression test
Step timer (pause and resume) Done!
A cooking step with its paused timer Finished screen with the chef celebrating

Requirements

What Version
Computer macOS Apple Silicon, Windows x64, or Linux x64/ARM64 (glibc 2.35+, e.g. Ubuntu 22.04+)
Node.js 20 or newer (22 or 24 LTS recommended)
Webcam Any built-in or USB camera
Internet Needed so the SDK can check your API key
…

Setup instructions are in the README: npm install, add your SmartSpectra API key to .env, then npm start.

How It Responds to Human Signals

Kitchen Chaos uses two live signals from the SmartSpectra SDK's face metrics:

  • Facial expression scores (HAPPY and CONTEMPT): a smile, or even a small smirk, held for about half a second moves to the next step. The SDK scores a smirk as CONTEMPT, so I add the two together and nobody has to grin hard all through dinner.
  • Face landmarks: the app works out the head's tilt angle from the eye corners. A tilt held for about a second goes back a step. To make these reliable while cooking, the scores are smoothed, each gesture must be held, and there is a short cooldown, so one smile never skips several steps. The SDK's validation status powers live hints like "Move a little closer". The setup screen has a quick test with live bars, so you know it works before you start.

I used the official @smartspectra/node-sdk in an Electron app: bindSmartSpectraIpc in the main process, the SDK preload, and SmartSpectraSDK in the window with the webcam stream.

Prize Categories

Best Thoughtful Real-World Use and Most Creative or Delightful Use.

  • Real-world use: It solves a real kitchen problem (dirty hands and a screen), for home cooks and beginners. It has large text, deliberate gestures that don't fire by accident, timers that never skip a step, and full button control.
  • Delightful: Your face becomes a playful remote control, with a chef who reacts to every smile and tilt.

Consent and Data Handling

  • The camera only starts after you read why it is needed and press Allow camera and start. You can cook with buttons only instead, and stop the camera at any time.
  • No video is recorded, saved or uploaded, and no expression history is kept. Each reading is used immediately, then discarded.
  • Per Presage's documentation, metrics are computed on your device. The SDK contacts Presage only to check the API key and subscription.
  • SDK telemetry is off by default.
  • The only thing saved is your music and sound settings, on your own computer. There are no accounts, analytics or AI services.
  • This is not a medical app. Expressions are used only as buttons.

Top comments (0)