Project Info
[Sponsor - Viam] Best Use of Viam; Best Hardware Hack – Powered by ROBOTIS, Joby Aviation, OpenMV, PCBWay
MakerSafe
Problem Statement Every year, thousands of eager tinkerers and enthusiasts enter makerspaces to gain access to powerful tools and machinery. Unfortunately, these tools are as dangerous as they are powerful, so it is imperative safety standards are respected in order to maintain a safe makerspace. Additionally, time is often of the essence for tinkerers on a project deadline, so we sought to create a informative and safety-first dashboard and monitoring system for makerspaces. Project Summary MakerSafe is an intelligent safety monitoring platform that brings computer vision to the makerspace, creating a seamless bridge between human creativity and machine vigilance. At its core, MakerSafe tackles a critical challenge faced by makerspaces worldwide: ensuring safety compliance without disrupting the creative flow. Using a network of cameras powered by real-time face recognition and object detection, the system automatically identifies makers as they enter the space, tracks their activity across workstations, and continuously monitors for safety violations, all without requiring manual check-ins or intrusive oversight. Built to run efficiently on a single Raspberry Pi with multiple camera inputs, MakerSafe demonstrates that advanced safety infrastructure doesn't require enterprise-level hardware. The architecture is designed for scalability, supporting additional stations and cameras as makerspaces grow. Breakdown of Components MakerSafe has 3 main UI components: a map of the entire makerspace, which displays who is using each machine, a list of the current actively working Makers and their status (idle, active, or currently violating safety code), and a list of the most recent violations of safety across all Makers belonging to the makerspace. For hardware, MakerSafe uses a Raspberry Pi 4 8GB RAM and Logitech Brio 101 Webcams. How We Built It Backend: Built with Python Flask, the backend served as the central orchestration layer for MakerSafe, handling communication between both hardware and software clients. It processed HTTP requests from VIAM’s platform on the hardware side and interacted with PostgreSQL via Supabase to manage application state, including maker records and station availability. Additionally, the backend maintained a WebSocket connection with the software client, enabling the server to push real-time updates for live UI rendering with low latency. Frontend: Built with React and Tailwind CSS, the frontend leveraged shadcn/ui as the core component system, with Framer Motion used for custom animations. Visual effect components were selectively incorporated from Magic UI and React Bits to enhance interactivity. v0 and Gemini were used early in development to generate wireframes and design inspiration, accelerating initial prototyping. Challenges We Ran Into Raspberry pi (flashing it, wifi, getting hot, handling processing 4 CV models on it) Custom CV model training Maintaining readable code Accomplishments That We're Proud Of First hack involving hardware for all team members. Real-time integration between hardware and software using WebSockets. Using Viam's Python SDK to manage hardware. What We Learned Networking/WebSockets Data flows Planning/prompt engineering What's Next For MakerSafe Optimizing to run on Raspberry Pi (upgrading to Pi 5, efficiently processing images) Supporting multiple stations Improve system latency (networking) Improve CV model quality
MakerSafe
Every year, thousands of eager tinkerers and enthusiasts enter makerspaces to gain access to powerful tools and machinery. Unfortunately, these tools are as dangerous as they are powerful, so it is imperative safety standards are respected in order to maintain a safe makerspace. Additionally, time is often of the essence for tinkerers on a project deadline, so we sought to create a informative and safety-first dashboard and monitoring system for makerspaces.
See more at: https://devpost.com/software/makersafe
Analysis
View
Metric
- 33
- 6
- 2
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- FlaskIn code
- HTMLIn code
- JavaScriptIn code
- PythonIn code
- ReactIn code
- SupabaseIn code
- Tailwind CSSIn code
- PostgreSQLClaimed
8 of 9 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
210 KB
Source files
51
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
justinsiek/Maker-Safe
71 files · 1.3 MB · @ 28bda32
Structure
Interface
21 files · 30%Screens, components and styles rendered to the user.
API & routing
13 files · 18%Request entry points: routes, handlers and controllers.
Application logic
12 files · 17%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript56%
- Python29%
- HTML8%
- Markdown6%
- CSS0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
client/package.json
npm · 31- @gsap/react
- @radix-ui/react-accordion
- @radix-ui/react-slot
- @tailwindcss/vite
- aceternity
- class-variance-authority
- clsx
- framer-motion
- gsap
- lucide-react
- motion
- react
- react-bits
- react-dom
- react-router-dom
- shadcn-ui
- socket.io-client
- tailwind-merge
- +13 more
server/requirements.txt
pypi · 5- flask
- flask-cors
- flask-socketio
- python-dotenv
- supabase
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.