A 2D metaverse platform that enables virtual collaboration and social interaction through customizable spaces and real-time communication.
- Virtual Spaces: Create and customize 2D environments for teams and communities
- Real-time Communication: Voice, video, and text chat with proximity-based audio
- Avatar System: Personalized avatars that move through virtual spaces
- Collaborative Tools: Screen sharing, whiteboards, and interactive objects
- Room Management: Public and private spaces with customizable permissions
- Cross-platform: Web-based platform accessible from any device
Note: These are planned features currently in development
This project is built as a monorepo using modern web technologies:
- Monorepo: TurboRepo for efficient build and dependency management
- Runtime: Bun for fast JavaScript runtime and package management
- API Framework: Hono for lightweight, fast HTTP server
- Database: PostgreSQL with type-safe queries
- Testing: Test-driven development approach with comprehensive test coverage
- Frontend: Modern web technologies for responsive user experience
- Bun installed on your system
- PostgreSQL database instance
- Clone the repository:
git clone https://github.com/yourusername/murmle.git
cd murmle- Install dependencies:
bun install-
Set up environment variables:
-
Build all packages:
bun run build- Run tests:
bun test- Start the development server:
bun run devmurmle/
├── apps/
│ └── http/ # Main API server
├── packages/
│ ├── db/ # Database schema and utilities
│ └── typescript-config
├── tests/ # Test suites
└── turbo.json # TurboRepo configuration
This project follows Test-Driven Development (TDD) principles:
- Tests are written before implementation
- Comprehensive test coverage for all features
- Continuous integration ensures code quality
- Database-first approach with robust schema design
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Write tests for your changes
- Implement your feature
- Ensure all tests pass:
bun test - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
bun run dev- Start development serverbun run build- Build all packagesbun run test- Run test suitesbun run db:migrate- Run database migrationsbun run db:seed- Seed database with sample databun run lint- Lint codebasebun run type-check- Run TypeScript type checking
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License - see the LICENSE file for details. In simple terms:
- ✅ You can use, modify, and share this code
- ✅ You must give proper credit/attribution
- ❌ No commercial use without permission
If you have questions or need help:
- Open an issue on GitHub
Built with too much coffee and not enough sleep!