GithubHelp home page GithubHelp logo

aveek-saha / firechess Goto Github PK

View Code? Open in Web Editor NEW
11.0 2.0 5.0 127 KB

Play online chess with your friends, powered by Firebase ๐Ÿ”ฅโ™Ÿ

Home Page: http://firechess0.web.app

License: MIT License

HTML 17.53% JavaScript 26.61% Svelte 55.74% CSS 0.11%
chess online-chess multiplayer firebase svelte chess-website

firechess's Introduction

Fire Chess

Play chess online with a friend, powered by Firebase.

Play here

How to play

  1. Go to http://firechess0.web.app/
  2. Log in with one of the auth providers.
  3. Start playing:
    • Create a room and then share the room Id with a friend.
    • Get a room Id from a friend and join a room.

Yes, it's really that simple!

For now each player can only create up to 5 rooms, though this is a number that can change based on demand. However there is no limit on how many rooms you can join at a time!

Features

  • Use Google, Twitter, GitHub or Facebook to log in
  • Create a new game, or join existing ones
  • Reset the board for a rematch once the game is over
  • Delete rooms you created, or leave rooms you've joined
  • Possible moves are highlighted on the board
  • Put a game on hold and resume it whenever you like

Why FireChess?

This is a follow up to my Online-Chess project where I created a chess website using sockets and hosted it on Heroku.

At the time I had created the project as a showcase for websockets first and as an actual place to play chess second. However this project has had far more users on the website playing chess than I anticipated and I kept running out of resources for the free Heroku tier. This meant that I got a lot of complaints that the website was inaccessible.

FireChess was meant as an answer to this problem. This project stores the game state in a database rather than using web sockets to communicate. This means I'm no longer dependent on a server and I can move to serverless. Moving to firebase allows me to make the website available to far more people without exceeding usage limits.

Privacy

Why do I need to login?

Signing in helps keep all your rooms saved so you can resume playing at any time.

What data is stored on the database?

The only personal information stored in the database is your display name from whatever auth provider you pick.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.