This project is a full-stack poker application built using the @chevtek/poker-engine library. It provides a server for hosting poker games and a frontend interface for players to interact with the game.
Originally made for the Northeastern ACM Algorithmic Poker Hackathon - a comprehensive bot template for this can be found here!
The node-poker-app consists of a backend server that manages the game state and a frontend client for user interaction. It utilizes WebSocket connections to enable real-time communication between the server and clients.
- Backend:
@chevtek/poker-engine- primarily built on this engine. - Frontend: React with TypeScript
Create a .env file in the root directory with the following variables:
BACKEND_PORT=3002 # Port for the backend server
WS_URL=localhost # WebSocket server hostname/IP
SOCKET_KEY=mycustomauthkey # Custom auth key sent with authenticated socket messages
ADMIN_PASS_HASH=yoursha256hash # Hashed password for accessing the client/GUIThese variables will be shared between the frontend and backend applications.
-
Create the
.envfile in the root directory as described above -
Open a terminal and run the following based on your desired config:
Development
yarn yarn devDocker-based production build
yarn docker:build yarn docker:up
For detailed information about the WebSocket API and how to interact with the poker server, please refer to the README.md file in the backend folder.