Skip to content

alexandrelam/slam-poker

Repository files navigation

SLAM Poker

A real-time poker planning application for agile teams built with Node.js, TypeScript, and React.

image image

Features

  • Real-time collaborative poker planning sessions
  • WebSocket-based communication
  • Room-based voting system
  • Modern React frontend with TypeScript
  • Dockerized deployment

Running with Docker Compose

Prerequisites

Quick Start

  1. Clone the repository:

    git clone https://github.com/alexandrelam/slam-poker.git
    cd slam-poker
  2. Create a .env file (optional):

    cp .env.example .env  # if you have an example file
    # or create manually with your preferred settings
  3. Start the application:

    docker-compose up -d
  4. Access the application at http://localhost:3001

Configuration

The application can be configured using environment variables:

Backend Configuration (.env)

Variable Default Description
PORT 3001 Port the application runs on
NODE_ENV production Node.js environment
CORS_ORIGIN * CORS allowed origins

Create a .env file in the root directory to override defaults:

PORT=3001
NODE_ENV=production
CORS_ORIGIN=http://localhost:3000

Frontend Configuration

The frontend requires WebSocket URL configuration for different environments:

For Development (web/.env.development):

VITE_WS_URL=http://localhost:3001

For Production (web/.env.production):

# Leave empty to use same origin as frontend (recommended for production)
VITE_WS_URL=

The frontend will automatically:

  • Use VITE_WS_URL if specified
  • Fall back to window.location.origin (same server as frontend) if not specified
  • This ensures WebSocket connections work in both development and production environments

Development

For development with hot reload:

# Stop the production container if running
docker-compose down

# Run in development mode (if you have a dev compose file)
# Otherwise, run locally with:
npm install
npm run dev

Container Management

# Start services
docker-compose up -d

# View logs
docker-compose logs -f slam-poker

# Stop services
docker-compose down

# Rebuild and restart
docker-compose up --build -d

# Health check status
docker-compose ps

The application includes built-in health checks accessible at http://localhost:3001/health.

About

Modern, blazingly-fast, real-time planning poker application for fun agile teams

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages