Digital-Defiance / DominionAssistant

Unofficial Dominion Assistant (turn counter, coffers, villagers, etc). React. Typescript.
MIT License
0 stars 0 forks source link
dominion dominion-card-game react typescript

Codacy Badge

Unofficial Dominion Assistant

Welcome to the Unofficial Dominion Assistant, a React application designed to enhance your gameplay experience for the popular card game, Dominion! This tool provides comprehensive features for game management, scoring, and player interaction, allowing Dominion enthusiasts to focus on strategy and enjoyment.

Disclaimer for End Users

Please note that the Unofficial Dominion Assistant is not affiliated with or endorsed by the makers of Dominion or Donald X Vaccarino. This application is a fan-built project created to enhance your gameplay experience and requires ownership of the physical Dominion game to use. It does not allow you to play without having the original game. The use of the Dominion logo is intended solely for personal use to support the Dominion community and should be considered under the Fair Use Doctrine.

Fair Use Doctrine

Under 17 U.S.C. § 107, fair use allows limited use of copyrighted material without requiring permission from the rights holders. Factors to consider include:

Case References:

Our application, as a fan-built tool that does not replicate the game, could be argued as transformative.

Features

This is an NX project created with create-nx-workspace.

Getting Started

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/Digital-Defiance/DominionAssistant.git

From here you may follow the instructions below or jump to the section on Dev Container usage.

  1. Install dependencies

    yarn install
  2. Start the app

    yarn start

A popup should offer to open the application in a browser.

Visual Studio Code Dev Container Preqrequisites

Development with VS Code Dev Container

  1. Clone the repository:

    git clone https://github.com/Digital-Defiance/DominionAssistant.git
  2. Open the project folder in Visual Studio Code.

  3. Set up .env:

  1. When prompted, click "Reopen in Container" or use the command palette (F1) and select "Remote-Containers: Reopen in Container".
  2. VS Code will build the dev container and set up the environment. This may take a few minutes the first time.
  3. Once the container is ready, open a new terminal in VS Code and run:
    yarn install
  4. Start the app:
    yarn start

A popup should offer to open the application in a browser.

Preferred Development Environment

We highly recommend using Visual Studio Code Dev Containers/Docker for a consistent and isolated development environment. This ensures that all dependencies and configurations are standardized across different development setups.

The devcontainer.json postCreateCommand will run through setup of NVM to select a desired version of Node, perform the yarn install, and install the nx cli globals.

Usage

Once the application is started with yarn start-

The app consists of several main screens:

  1. Home Screen
  2. Dominion Assistant (main game screen)
  3. Game Log
  4. Load/Save Game

Navigate through these screens using the tab bar at the bottom of the app.

To start a new game:

  1. Add player names
  2. Set game options (including expansions and special rules)
  3. Start the game and use the interface to track scores, turns, and game events

Development

Other commands available:

Contributing

We welcome contributions to Dominion Assistant! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License.

Acknowledgments

Learn more

To learn more about developing your project, look at the following resources:

Join the community

Join our community of developers.