A multiplayer online mafia/werewolf game implementation.
Playable at: https://lbww-mafia.herokuapp.com/
This is a monorepo containing three main components:
- server/: Node.js/Express backend with Socket.IO for real-time gameplay
- nextjs/: Next.js web application using the T3 Stack
- mobile/: React Native mobile application using Expo
- db/: Shared Drizzle ORM schema used by server and nextjs components
cd server
npm install
npm startcd nextjs
npm install
npm run devcd mobile
npm install
npm startAll three components have ESLint configured:
# Server
cd server && npm run lint
# Next.js
cd nextjs && npm run lint
# Mobile
cd mobile && npm run lint- Node.js with Express
- MongoDB with Mongoose
- Socket.IO for real-time communication
- TypeScript
- Next.js 15
- Drizzle ORM with SQLite
- NextAuth.js for authentication
- Tailwind CSS
- TypeScript
- React Native
- Expo
- Socket.IO Client
- TypeScript
- All components use TypeScript with strict type checking
- ESLint configured for code quality
- No exceptions used - result types preferred
- Zod schemas used with safeParse for validation