Skip to content

I'm obsessed with spider solitaire and needed a more responsive version that doesnt have bloat or ask for money. Feel free to fork or use my hosted version listed below.

License

Notifications You must be signed in to change notification settings

lklynet/spider-solitaire

Repository files navigation

Spider Solitaire

Spider Solitaire

A modern, open-source implementation of the classic Spider Solitaire card game, built with React, TypeScript, and Tailwind CSS.

Features

  • Classic Gameplay: Authentic Spider Solitaire rules and mechanics.
  • Modern UI: Clean, responsive interface designed with Tailwind CSS.
  • Smart Features:
    • Undo System: Unlimited undo functionality to help you strategize.
    • Smart Hints: Intelligent move suggestions when you're stuck.
    • Auto-Complete: Automatically detects and handles obvious moves.
  • Progress Tracking:
    • Detailed statistics (Win rate, Streaks, Best Score, Best Time).
    • Daily Challenges.
    • Move counter and timer.
  • Customization:
    • Multiple color themes/schemes.
    • Customizable card backs.
  • Persistence: Game state and statistics are automatically saved locally.

Tech Stack

Getting Started

Prerequisites

  • Node.js (Latest LTS version recommended)
  • npm

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/spider-solitaire.git
    cd spider-solitaire
  2. Install dependencies:

    npm install
  3. Start the development server:

    npm run dev
  4. Open your browser and navigate to http://localhost:5173 (or the port shown in your terminal).

Building for Production

To create an optimized production build:

npm run build

The build artifacts will be stored in the dist/ directory.

Docker Deployment

This application can be easily deployed using Docker. The image is automatically built and pushed to Docker Hub and GitHub Container Registry (GHCR) on every update to the main branch.

Using Docker Compose (Recommended)

A compose.yaml file is included in the repository for quick deployment.

  1. Run the application:

    docker compose up -d
  2. Open your browser and navigate to http://localhost:8080.

Using Docker CLI

You can also run the container directly using the Docker CLI.

From Docker Hub:

docker run -d -p 8080:80 --name spider-solitaire lklynet/spider-solitaire:latest

From GitHub Container Registry:

docker run -d -p 8080:80 --name spider-solitaire ghcr.io/lklynet/spider-solitaire:latest

Automated Builds

This repository is configured with GitHub Actions to automatically build and push the Docker image to:

  • Docker Hub: lklynet/spider-solitaire
  • GitHub Container Registry: ghcr.io/lklynet/spider-solitaire

These builds occur whenever changes are pushed to the main branch.

Open Source

This project is open source software. We believe in the power of community and transparent development.

  • Learn: Explore the source code to see how a modern React game is architected.
  • Contribute: Bug reports, feature requests, and pull requests are welcome!
  • Modify: Feel free to fork the repository and customize the game to your liking.

License

This project is available under the MIT License.

About

I'm obsessed with spider solitaire and needed a more responsive version that doesnt have bloat or ask for money. Feel free to fork or use my hosted version listed below.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages