Project Roulette / Projects

Mobile, Data & ML, Embedded & IoT and Games projects

11 of 30 projects. Each has a stack, five features to ship, a difficulty, a time estimate, and a bonus challenge.

Mobile · Intermediate · 2–3 weeks

Offline-first Field Inspection App

A mobile app for technicians who inspect equipment on site: checklists, photos, and signatures that work with no signal and sync later.

  • React Native (Expo)
  • TypeScript
  • SQLite
  • Supabase

Features

  1. Dynamic checklist templates loaded from the server
  2. Photo capture with on-image annotation
  3. Local-first storage with background sync and conflict handling
  4. Signature capture and PDF report export
  5. GPS-tagged inspections

Bonus: A small web admin dashboard where managers create templates and review submitted inspections.

Mobile · Intermediate · 2 weeks

Bluetooth LE Sensor Companion App

A phone app that discovers a Bluetooth Low Energy sensor, streams live readings, keeps a history, and sends settings back to the device.

  • Flutter (Dart)
  • flutter_blue_plus
  • SQLite
  • ESP32 or nRF52 as the peripheral

Features

  1. Scan, connect, and auto-reconnect to the device
  2. A custom GATT service and characteristics that you define
  3. Live charts of incoming readings
  4. Local history with CSV export
  5. Write settings like sample rate and thresholds back to the device

Bonus: Firmware updates delivered over Bluetooth straight from the app.

Data & ML · Intermediate · 1–2 weeks

Resume ↔ Job Description Matcher

Upload a resume and a job posting. It scores how well they match, highlights missing skills, and suggests stronger bullet points.

  • Python
  • sentence-transformers
  • spaCy
  • FastAPI
  • Streamlit

Features

  1. PDF parsing and section extraction (experience, skills, education)
  2. Skill extraction against a curated skills taxonomy
  3. Semantic similarity scoring with a readable explanation
  4. Gap report listing missing and weak skills
  5. A small labeled test set that measures accuracy

Bonus: Benchmark three embedding models on your test set and publish the results table in the README.

Data & ML · Intermediate · 1–2 weeks

Webcam Hand-Gesture Controller

Recognizes hand gestures from a webcam in real time and uses them to control slides, media playback, or smart lights.

  • Python
  • MediaPipe
  • PyTorch or scikit-learn
  • OpenCV

Features

  1. Hand landmark extraction from live video
  2. Data-collection tool for recording custom gestures
  3. Trained classifier with a confusion matrix and accuracy report
  4. Smoothing and debounce so actions don't misfire
  5. Config file that maps gestures to actions

Bonus: Export the model to ONNX and run it fully in the browser with a live demo page.

Data & ML · Advanced · 2–3 weeks

Predictive Maintenance for Jet Engines

Predicts the remaining useful life of jet engines from sensor time series using NASA's C-MAPSS dataset, served behind an API with a monitoring dashboard.

  • Python
  • pandas
  • LightGBM or PyTorch
  • MLflow
  • FastAPI
  • Docker

Features

  1. Exploratory analysis and time-series feature engineering
  2. A baseline model and an LSTM, compared with proper time-based validation
  3. Experiment tracking in MLflow
  4. Model served through FastAPI inside Docker
  5. Dashboard showing predictions per engine

Bonus: Data-drift detection that flags when incoming sensor data stops looking like the training data.

Data & ML · Intermediate · 2 weeks

Codebase Q&A Assistant

Index any Git repository and ask questions like "where is authentication handled?" Answers cite the exact files and lines they came from.

  • Python
  • tree-sitter
  • sentence-transformers
  • pgvector or Qdrant
  • FastAPI
  • An LLM API

Features

  1. Code-aware chunking by function and class using tree-sitter
  2. Hybrid keyword and vector search
  3. Answers with file and line citations
  4. Incremental re-indexing when new commits land
  5. An evaluation set of 30+ questions that measures retrieval accuracy

Bonus: A VS Code extension so you can ask questions without leaving the editor.

Embedded & IoT · Intermediate · 1–2 weeks

ESP32 Air Quality Station

A connected sensor node that measures CO₂, PM2.5, temperature, and humidity, and streams readings over MQTT to a live dashboard.

  • ESP32
  • C++ (ESP-IDF or PlatformIO)
  • MQTT
  • InfluxDB
  • Grafana

Features

  1. Sensor drivers over I²C and UART with calibration
  2. Deep-sleep power management for battery use
  3. MQTT with reconnect and local buffering during outages
  4. Over-the-air firmware updates
  5. Dashboard with thresholds and alerts

Bonus: A custom PCB designed in KiCad and a 3D-printed enclosure, shown in photos in the README.

Embedded & IoT · Advanced · 2–3 weeks

PID Motor Controller on FreeRTOS

A closed-loop DC motor speed and position controller on an STM32, with a desktop app for live plotting and tuning.

  • STM32
  • C
  • FreeRTOS
  • Quadrature encoder
  • Python (PyQt, pyqtgraph)

Features

  1. Encoder reading using hardware timer peripherals
  2. PID loop running at a fixed rate in its own RTOS task
  3. Serial protocol with framing and checksums
  4. Desktop GUI with live plots and gain sliders
  5. Host-side unit tests for the control logic

Bonus: An auto-tuning routine (relay or Ziegler–Nichols) with a before/after step-response plot.

Embedded & IoT · Advanced · 2–3 weeks

FPGA Game Console with VGA Output

Pong or Breakout built entirely in hardware with Verilog, driving a VGA monitor straight from an FPGA board with no CPU at all.

  • Verilog or SystemVerilog
  • Vivado or Quartus
  • Basys 3 or DE10-Lite board
  • Verilator

Features

  1. VGA timing generator for 640×480 at 60 Hz
  2. Sprite drawing and collision logic in hardware
  3. Debounced button input and a score on the seven-segment display
  4. Testbenches with automated waveform checks
  5. Clean module hierarchy with resource and timing reports

Bonus: Sound effects generated in hardware through PWM audio output.

Games · Advanced · 2–3 weeks

Multiplayer Arena with Real Netcode

A fast top-down browser arena game with an authoritative server, client-side prediction, and lag compensation, so it feels smooth even at 150 ms ping.

  • TypeScript
  • HTML Canvas or Phaser
  • Node.js
  • WebSockets

Features

  1. Authoritative server running at a fixed tick rate
  2. Client-side prediction with server reconciliation
  3. Entity interpolation for other players
  4. Lobby and simple matchmaking
  5. Built-in network simulator with latency and packet-loss sliders

Bonus: A replay system that records inputs and plays back any match deterministically.

Games · Intermediate · 2–3 weeks

Procedural Roguelike with ECS

A turn-based dungeon crawler with procedurally generated levels, built on an entity-component-system architecture.

  • Rust + Bevy
  • or C# + Godot
  • WebAssembly build

Features

  1. Seeded dungeon generation using BSP or cellular automata
  2. Entity-component-system architecture for all game objects
  3. Field of view and A* pathfinding for enemies
  4. Items, inventory, and save/load
  5. A playable web build published on itch.io

Bonus: A daily seeded challenge where everyone plays the same dungeon.