Frontend · Intermediate · 2 weeks
Accessible Design System & Component Library
A themeable library of accessible UI components (dialog, combobox, tabs, data table, toast) published to npm, with a documentation site where people can try every component live.
- React
- TypeScript
- Storybook
- Vitest
- Testing Library
- axe-core
Features
- 8–10 components with full keyboard support and correct ARIA roles
- Light and dark theming driven by design tokens
- Docs site with a live props playground for each component
- Automated accessibility tests that run in CI on every pull request
- Versioned releases to npm with a generated changelog
Bonus: Visual regression testing with Playwright screenshots that block a PR if any component changes unexpectedly.
Frontend · Intermediate · 1–2 weeks
Git Repo Time-Lapse Visualizer
Paste any public GitHub repository and watch its file tree grow over time as an animated treemap, with contributor activity and the files that change most often.
- TypeScript
- Vite
- D3.js
- GitHub REST API
- Web Workers
Features
- Fetch and cache commit history with pagination and rate-limit handling
- Animated treemap playback with a timeline scrubber
- Contributor timeline and a churn heatmap of hot-spot files
- Heavy parsing moved into a Web Worker to keep animation smooth
- Shareable URLs that encode the repo and timestamp
Bonus: Export the playback as a WebM or GIF that people can drop straight into their own README.
Frontend · Intermediate · 2 weeks
Browser Logic Circuit Simulator
Drag gates, wires, clocks, and LEDs onto a canvas and watch signals propagate in real time. Build anything from a half adder to a tiny CPU in the browser.
- TypeScript
- Canvas 2D or SVG
- Vite
- Web Workers
- Vitest
Features
- Drag-and-drop gates, switches, clocks, LEDs, and seven-segment displays
- Event-driven simulation with propagation delay
- Truth-table generator for any selected circuit
- Reusable custom components built from sub-circuits
- Save, load, and share circuits by link
Bonus: A waveform timing-diagram viewer that works like a logic analyzer for any wire you probe.
Backend · Advanced · 2–3 weeks
Distributed Background Job Queue
A Redis-backed job system with multiple workers, retries, scheduled jobs, and a dead-letter queue, plus a small dashboard showing what's running and what failed.
- Go
- Redis
- PostgreSQL
- Docker Compose
- Prometheus
Features
- Enqueue API with priorities and delayed jobs
- Exponential-backoff retries and a dead-letter queue
- Horizontally scalable workers with graceful shutdown
- Idempotency keys that prevent duplicate processing
- Metrics endpoint for throughput, latency, and failure rate
Bonus: A chaos test script that kills workers mid-job and proves, with logs, that no job is ever lost.
Backend · Intermediate · 1–2 weeks
Webhook Relay & Replay Service
Receives webhooks from services like Stripe or GitHub, verifies their signatures, stores them, and forwards them reliably to your apps with retries and one-click replay.
- Node.js
- TypeScript
- Fastify
- PostgreSQL
- BullMQ
- OpenAPI
Features
- Per-source HMAC signature verification
- Durable storage with a searchable delivery log
- Retries with backoff and a per-endpoint circuit breaker
- Replay any stored event to any endpoint
- OpenAPI spec with generated API docs
Bonus: A small CLI that tunnels live events to localhost so developers can test webhooks on their own machine.
Backend · Advanced · 2 weeks
API Gateway with Rate Limiting
A reverse proxy that sits in front of your services and handles authentication, rate limiting, caching, and request logging so the services don't have to.
Features
- Config-driven routing to multiple upstream services
- Token-bucket rate limiting per API key, shared across instances through Redis
- JWT validation and API key management
- Response caching with TTLs and manual invalidation
- Structured access logs and latency metrics
Bonus: k6 load tests that publish p50, p95, and p99 latency with and without the gateway in front.
Full-stack · Advanced · 2–3 weeks
Real-time Collaborative Whiteboard
A multiplayer canvas where several people draw, add sticky notes, and see each other's cursors live, with edits that never conflict.
- React
- TypeScript
- Yjs (CRDT)
- WebSockets
- Node.js
- PostgreSQL
Features
- Shapes, freehand drawing, and sticky notes
- Live cursors and presence indicators
- Conflict-free merging of simultaneous edits using CRDTs
- Shareable boards with view-only and edit links
- Persistent boards with version history
Bonus: Offline editing that merges cleanly with everyone else's changes when you reconnect.
Full-stack · Advanced · 2–3 weeks
Live Coding Interview Room
Create a room, share a link, and code together in a shared editor. Code runs in sandboxed containers and both people see the output.
- Next.js
- Monaco Editor
- WebSockets
- Docker
- Redis
Features
- Shared editor with synced cursors and selections
- Run Python, JavaScript, or C++ in isolated containers with CPU, memory, and time limits
- Private notes panel only the interviewer can see
- Session playback of the whole interview
- Rooms that expire and clean up automatically
Bonus: Hidden test cases that grade the candidate's solution automatically and show a pass/fail report.
Full-stack · Intermediate · 2 weeks
Uptime Monitor & Public Status Page
Monitors websites and APIs every minute, detects outages, opens incidents, and publishes a clean public status page with uptime history.
- Next.js
- TypeScript
- PostgreSQL
- Node.js worker
- Email or Discord webhooks
Features
- HTTP, TCP, and keyword checks run on a schedule by a worker
- Incident detection that confirms with retries to avoid false alarms
- 90-day uptime bars and response-time charts
- Email and Discord alerts when something goes down
- Admin page for posting incident updates
Bonus: Checks from two regions that only open an incident when both agree the service is down.
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
- Dynamic checklist templates loaded from the server
- Photo capture with on-image annotation
- Local-first storage with background sync and conflict handling
- Signature capture and PDF report export
- 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
- Scan, connect, and auto-reconnect to the device
- A custom GATT service and characteristics that you define
- Live charts of incoming readings
- Local history with CSV export
- Write settings like sample rate and thresholds back to the device
Bonus: Firmware updates delivered over Bluetooth straight from the app.
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
- Sensor drivers over I²C and UART with calibration
- Deep-sleep power management for battery use
- MQTT with reconnect and local buffering during outages
- Over-the-air firmware updates
- 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
- Encoder reading using hardware timer peripherals
- PID loop running at a fixed rate in its own RTOS task
- Serial protocol with framing and checksums
- Desktop GUI with live plots and gain sliders
- 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
- VGA timing generator for 640×480 at 60 Hz
- Sprite drawing and collision logic in hardware
- Debounced button input and a score on the seven-segment display
- Testbenches with automated waveform checks
- Clean module hierarchy with resource and timing reports
Bonus: Sound effects generated in hardware through PWM audio output.
Security · Intermediate · 1–2 weeks
Git Secrets Scanner & GitHub Action
A CLI and GitHub Action that scans repositories, including full commit history, for leaked API keys, passwords, and private keys.
- Go
- Regex + entropy analysis
- GitHub Actions
- SARIF
Features
- Pattern and entropy-based secret detection
- Fast scanning of the full Git history
- Allowlist file to suppress false positives
- SARIF output that shows up in GitHub code scanning
- Pre-commit hook mode that blocks leaks before they happen
Bonus: A seeded test corpus that reports precision and recall, compared against an existing open-source scanner.
Security · Intermediate · 1–2 weeks
SSH Honeypot with Attack Dashboard
A fake SSH server on a cheap cloud VM that records the logins and commands real attackers try, shown on a live dashboard.
- Python (asyncssh) or Go
- Docker
- PostgreSQL
- Grafana
- GeoLite2
Features
- Fake shell that imitates a Linux machine and logs every command
- Analytics on the most common passwords and commands
- World map of where attempts come from
- Strong isolation: its own VM, a container, and no outbound network
- Automatically generated weekly threat summary
Bonus: A write-up analyzing one week of real attack data, published alongside the repo.
Security · Advanced · 2 weeks
End-to-End Encrypted File Sharing
Share files by link, with encryption done in the browser so the server never sees file contents or keys.
- TypeScript
- Web Crypto API
- Node.js or Go
- S3-compatible storage
Features
- AES-GCM encryption in the browser, with the key kept only in the URL fragment
- Chunked streaming encryption for large files
- Links that expire or stop after a set number of downloads
- Optional password protection with proper key derivation
- A written threat model in the README
Bonus: A verification page that shows the stored ciphertext is unreadable without the link.
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
- Authoritative server running at a fixed tick rate
- Client-side prediction with server reconciliation
- Entity interpolation for other players
- Lobby and simple matchmaking
- 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
- Seeded dungeon generation using BSP or cellular automata
- Entity-component-system architecture for all game objects
- Field of view and A* pathfinding for enemies
- Items, inventory, and save/load
- A playable web build published on itch.io
Bonus: A daily seeded challenge where everyone plays the same dungeon.