A professional, secure, and engaging blackjack game inspired by modern crypto casino interfaces.
- Classic Blackjack Gameplay: Standard rules with dealer standing on 17
- Multi-Seat Support: Play up to 3 hands simultaneously
- Insurance & Side Bets: Full feature set for advanced players
- Split & Double Down: All standard blackjack actions supported
- Provably Fair: Transparent RNG for verifiable fairness
- Modern UI: Dark theme with smooth animations
- Responsive Design: Works on desktop and mobile devices
- React 18 + TypeScript
- Vite for fast development
- Tailwind CSS for styling
- Framer Motion for animations
- Zustand for state management
- Node.js 18+ and npm/pnpm
# Clone the repository
git clone <repository-url>
cd blackjack
# Install dependencies
npm install
# Copy environment variables
cp .env.example .env
# Start development server
npm run devThe game will be available at http://localhost:5173
- Dealer stands on 17
- Blackjack pays 3:2
- Insurance pays 2:1
- Double down allowed on any two cards
- Split allowed on pairs (max 1 split per hand)
- No surrender option
# Run development server
npm run dev
# Run tests
npm test
# Build for production
npm run build
# Preview production build
npm run preview
# Lint code
npm run lintsrc/
βββ components/ # React components
βββ engine/ # Game logic and rules
βββ hooks/ # Custom React hooks
βββ store/ # Zustand state management
βββ types/ # TypeScript type definitions
βββ utils/ # Utility functions
βββ assets/ # Images, sounds, icons
Please read CONTRIBUTING.md before submitting pull requests.
This project follows a structured branching workflow:
master: Production-ready code (protected)development: Integration branch for features (protected)- Feature branches:
feature/*,fix/*,docs/*, etc.
See .github/BRANCHING.md for detailed workflow and guidelines.
The repository includes automated workflows to maintain code quality and organization:
- Auto-Label: Automatically labels PRs based on content and file changes
- Milestone Assignment: Auto-assigns PRs to appropriate project milestones
- Milestone Validation: Ensures all PRs have milestones before merging (required check)
- Branch Protection: Validates PR branch naming and merge targets
- CodeQL Analysis: Security and code quality scanning
Report security issues to the project maintainer. See SECURITY.md for details.
MIT License - See LICENSE file for details
See CHANGELOG.md for version history.