Inspiration
Computing history is full of breakthroughs that deserve more than a paragraph in a textbook. We wanted to turn that history into a place people could explore, experiment with, and enjoy together.
What it does
Museum of Tech is a multiplayer 3D museum where visitors explore the evolution of computing through interactive exhibits about transistors, integrated circuits, compilers, and networks. Players choose an otter avatar, meet friends, and take a break in a Counter-Strike-inspired shooting range and arena.
How we built it
We built the museum with React, TypeScript, and Vite. React Three Fiber, Three.js, and drei power the world, animated characters, and exhibits. Zustand manages game state, while Trystero uses WebRTC to connect players without a dedicated multiplayer server.
Challenges we ran into
Combining a learning experience with responsive gameplay meant balancing exhibit interactions, movement, cameras, and combat. Multiplayer introduced browser compatibility and connection issues. Working simultaneously also required careful integration to preserve everyone’s changes.
Accomplishments that we're proud of
We created a shared, explorable museum with interactive learning stations, animated otter avatars, and multiplayer gameplay. Bringing educational content and playful experimentation into one world made the project feel like more than a digital display case.
What we learned
We learned how to connect React interfaces with real-time 3D systems, synchronize players through peer-to-peer networking, and manage animated models. We also learned that successful multiplayer depends on browser behavior and network conditions—not just matching code.
What's next for Museum of Tech
We want to deepen the exhibits with guided challenges, restore polished room narration, improve multiplayer reliability, and optimize performance. More computing milestones, cooperative puzzles, and accessibility options would make the museum welcoming to more visitors.
Built With
- animations
- css
- hud
- models
- react
- three.js
- trystero
- typescript
- vite
- webrtc
Log in or sign up for Devpost to join the conversation.