ACE (Accessible Chess Experience) is a real time voice powered chess application which lets you play online with your friends. The game has features like moving pieces, finding pieces on board, getting board summary, repeating opponent moves, and much more, all implemented using voice commands.
We looked online and found out that two of the most popular chess websites, lichess and chess.com, have no voice options for the visually impaired. We wanted to create something, that can help those who are visually impaired to have a complete experience without the hassle on relying on screen readers for every single move. And thus originated the idea of voice powered chess, ACE.
-
Play chess online with your friends using voice commands
-
Move chess piece using voice
-
Find piece on a particular square
-
Get chessboard summary
-
Get voice alerts for invalid moves, check and checkmate situations
- Frontend - ReactJS
- Backend - NodeJS
- Speech-To-Text - Azure Speech SDK
- Real Time Communications - Web Sockets
Here is a link to the website
-
ACE uses Azure text to speech API for speech recognition. The project requires a speech resource on Azure portal (to get access to SPEECH_KEY and SPEECH_REGION). However if you are interested in contributing to the project but unable to make an azure speech resource, we will share azure credentials to get you started on contrinuting to this project. You can join our discord server to get access to azure speech key and region.
-
All issues for this project are created here on this frontend repository, however you can make changes to backend as well and submit PR on backend repository as well.
- NodeJS
- npm
- Azure account and Azure Speech Resource
- Clone the above repository
- cd into the ACE-Backend folder
- Create a .env file and add the SPEECH_KEY and SPEECH_REGION from your azure speech service credenials. (Refer to .env.example file)
- Go to the terminal and run the following commands
npm install
node app.js
The server will be started at localhost:8000
- Clone this repository
- cd into the ACE folder
- Open the config.js file in src/services folder
- Replace CLIENT_URL with http://localhost:3000
- Replace SERVER_URL with http://localhost:8000
- Go to the terminal and run the following commands
npm install
npm start
Visit localhost:3000 to play the game