Project Info
Inspiration
In emergency situations like fires, every second counts, and clear communication is crucial. We were inspired by the potential of Boston Dynamics' Spot to assist in rescue operations by bridging language barriers and navigating hazardous environments, made possible with flame-retardant polyurethane foam used to make Spot. The idea of a multilingual robotic assistant that could locate victims and aid firefighters motivated us to create Pyro Machitis. What We Learned Developing Pyro Machitis taught us the importance of interdisciplinary collaboration. We gained hands-on experience with robotics integration, real-time language processing, and user interface design. We also learned how to use multiple APIs together to make a functioning application. How We Built the Project Hardware Integration: Enhanced the Boston Dynamics Spot robot with high-resolution cameras to detect victims in a fire. Software Development: Utilized the Bosdyn API to program movement software controlled remotely and relay the video and audio to the controller. Multilingual Communication: Leveraged Groq's AI accelerators and Google Cloud Platform to enable real-time translation and communication in over 15 languages. User Interface: Created an intuitive UI using HTML, CSS, and Flask for operators to monitor and control the robot effectively. Backend Systems: Integrated systems using Bosdyn for robot control, Groq for AI processing, and GCP for data management. Challenges We Faced New Technology: Working with Boston Dynamics was a first for all of us, and it required us to read and understand complex documentation and conduct extensive testing to make it work as intended. Accessing Spot's hardware had complex requirements that we had to overcome. Integration Complexity: Combining hardware and software from multiple platforms required extensive testing and problem-solving, especially since the hardware can function remotely without being physically connected to the front end.
CalHacks 13 monorepo
The spot for our code for running spotter on Spot
backend: web server for multilingual, multimodal AI processing
- REST API written in Python using Flask
- Poetry for dependency management
- Google Cloud Services
- Gemini
- Groq
Root folder: frontend that enables easy robot control and shows the robot's camera and data feed
- serves data and object recognition from AI backend
- makes requests to robot control backend based on keyboard and mouse inputs
- Bun
- React
- shadcn-ui components
robot-control-server: web server that enables remote control of the robot
- REST API/gRPC service written in Python using Flask
- Boston Dynamics SDK
Press
Running the stack:
First, clone this repo. If you don't have access to a Spot, you can still demo the entire frontend and AI part of the app locally, as long as you provide your Groq and GCP Client Json as an environment variables.
backend
- install Poetry
poetry installpoetry run devto start the backend
frontend
- npm i
- npm run dev
robot server
- connect to Spot's wifi network
- run
python3 python/examples/wasd_server/app.pyand replace the hostname192.168.80.3with your Spot's IP - enter the
adminusername & password, or the equivalent credentials for your Spot - send requests to control endpoints manually or via the frontend
Analysis
View
Metric
- 5
- 5
- 1
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
- FastAPIIn code
- FlaskIn code
- HTMLIn code
- JavaScriptIn code
- OpenAIIn code
- PythonIn code
- ReactIn code
8 of 8 appear in the indexed code.
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
65 KB
Source files
21
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
nJasow04/3b1y-dog-client-side
41 files · 2.0 MB · @ 37ec746
Structure
Application logic
23 files · 56%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
- Python81%
- HTML8%
- Markdown5%
- CSS4%
- JavaScript3%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
backend/pyproject.toml
pypi · 20- flask
- groq
- gtts
- hume
- openai
- opencv-python
- pyaudio
- pydub
- pygame
- python-dotenv
- +10 more
package.json
npm · 7- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- react
- react-dom
- react-scripts
- web-vitals
backend/requirements.txt
pypi · 6- fastapi
- grpcio
- grpcio-tools
- Pillow
- protobuf
- uvicorn
robot-controller/requirements.txt
pypi · 1- bosdyn-client
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.