DisGame is a self-initiated personal project designed to explore full-stack web development and interactive app experiences. It combines game discovery with a ticket-based daily raffle system for fun, learning, and creative experimentation.
This project is not affiliated with or intended for commercial use.
- Browse a curated list of games via RAWG API
- Filter by genre, tags, or rating
- View detailed game information
- Users join scheduled events
- Complete quests to earn tickets
- Leaderboard to track top participants
- Daily raffle draws using collected tickets
- Multiple prize tiers (1st place, 2nd place, etc.)
- Transparent winner list by date and draw number
- Circles for discussion and project sharing
- Post types: Questions, Reviews, Tutorials, and more
- React + TypeScript
- React Query for data fetching and caching
- Zustand for global state management
- React Router for routing
- Chakra UI for responsive and accessible components
- Vercel for frontend deployment
- Node.js + Express
- MongoDB + Mongoose for data modeling
- Render for backend deployment (or local for dev)
- JWT + Cookies for user authentication
- Node.js (v18+ recommended)
- MongoDB Atlas or local MongoDB instance
# Clone the repo
git clone https://github.com/your-username/disgame.git
cd disgame
# Install dependencies
npm installVITE_API_URL=https://disgame-be.onrender.com/apinpm run devFrontend: https://disgame.vercel.app
Backend: https://disgame-be.onrender.com