A multiplayer digital prototype for the Quest & Chronicle card game, now with offline support!
View your app in AI Studio: https://ai.studio/apps/drive/1XbvKpi1-w3zrHql2iyz5-lItdKDa29q8
- Multiplayer Gameplay: Create or join game rooms with friends
- Multiple Character Classes: Choose from Barbarian, Cleric, Mage, Ranger, Rogue, or Warrior
- Progressive Difficulty: Beginner, Advanced, and Custom game modes
- Voice Chat: Built-in WebRTC voice communication
- Offline Support: Play the game even when offline thanks to PWA technology
- Mobile Responsive: Optimized for both desktop and mobile devices
This app is a Progressive Web App (PWA) with full offline support:
- ✅ Service Worker Caching: All core assets are cached for offline access
- ✅ Offline Detection: Visual indicator when you're offline or disconnected
- ✅ Connection Status: Real-time monitoring of network and server connection
- ✅ Installable: Can be installed on your device like a native app
- ✅ Auto-Update: Automatically updates to the latest version when online
- First Visit: The app caches all necessary files (HTML, CSS, JS, images, fonts)
- Subsequent Visits: Loads instantly from cache, even without internet
- Multiplayer Features: Requires internet connection for room creation/joining and real-time gameplay
- Local Features: Menu navigation, game rules, and UI work offline
The app displays a status banner at the top of the screen:
⚠️ Offline Mode: No internet connection detected⚠️ Connecting...: Internet available but server connection in progress- Hidden: Successfully connected and ready for multiplayer
Prerequisites: Node.js
-
Install dependencies:
npm install
-
Start the server:
npm start
-
Open your browser to
http://localhost:3000
- Visit the app in your browser
- Click the install icon in the address bar
- Click "Install" in the prompt
- Open the app in your mobile browser
- iOS: Tap the Share button, then "Add to Home Screen"
- Android: Tap the menu (⋮), then "Add to Home Screen"
- Backend: Node.js + Express + Socket.IO
- Frontend: Vanilla JavaScript (no framework dependencies)
- Real-time: WebSocket communication via Socket.IO
- Voice: WebRTC for peer-to-peer voice chat
- PWA: Service Workers for offline functionality
- Storage: LocalStorage for persistent account data
Current Version: v2.0.1 - Offline Ready
