Skip to content

A full stack chess application for game enthusiasts who want to play a game of chess with friends.

Notifications You must be signed in to change notification settings

megbritt/ChessAlliance

Repository files navigation

Chess Alliance

A full stack chess application for game enthusiasts who want to play a game of chess with friends.

Technologies

  • React.js
  • Webpack
  • Bootstrap 5
  • Node.js
  • Socket.IO
  • Express
  • Argon2
  • JSON Web Tokens
  • HTML5
  • CSS3
  • Heroku

Live Deployment Link

Try the application at https://chess-alliance.herokuapp.com/

Features

  • User can start a multiplayer chess game.
  • User can view games menu list they wish to join.
  • User can join a game.
  • User can take their turn.
  • User can win.
  • User can forfeit.
  • User can sign up.
  • User can log in.
  • User can play in local mode.

Preview

Animation

Development

System Requirements

  • Node.js 10 or higher
  • NPM 6 or higher
  • PostgreSQL

Getting Started

  1. Clone the repository.

    git clone https://github.com/meganbmartinez/ChessAlliance.git
    cd ChessAlliance
  2. Install all dependencies with NPM.

    npm install
  3. Create a new .env file for the application.

    cp .env.example .env
  4. Change the TOKEN_SECRET and DATABASE_URL to secure, appropriate values in the .env file.

  5. Check to see if postgresql is running.

    sudo service postgresql status
  6. If postgresql is not running, run its start command.

    sudo service postgresql start
  7. Initialize the database.

    createdb chessAlliance
  8. Import the schema and initial data.

    npm run db:import
  9. Start the project. Once started, you can view the application by opening http://localhost:3000 in your browser.

    npm run dev

Future Development

  • User can propose a rematch.
  • User can view match history.

About

A full stack chess application for game enthusiasts who want to play a game of chess with friends.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published