A simple UNO Game made in Javascript, supposed to be blazing easier and faster than Gartic to start playing.
- Typescript
- React.js
- Socket.io
- Lerna
- Express
- Material UI
- Husky
- Lint Staged
- Git Commit Message Linter
- ESLint
- React DnD
- MsgPackParser
- Implementing a basic Table Page which I can use to move and buy cards.
- Implementing a server integration with Table Page to make it to work.
- Refactoring the Table Page to give it a better looking.
- Creating a Dashboard Page which I can use to see open rooms, create new ones and get into the ones I want to.
- Implementing a server integration with Dashboard Page to make it to work.
- Refactoring the Dashboard Page to give it a better looking.
- Creating a Room Page which I can use to get into a room and see its details.
- Implementing a server integration with Room Page to make it to work.
- Refactoring the Room Page to give it a better looking.
- Implementing a monorepository manager.
- Updating README with contributors info.
- Changing the card assets (in order to avoid copyright issues).
- Implementing sounds.
- Adding a simple account service (with no database).
- Adding an account service.
- Making husky to work.
- Adding skeleton loading for pages.
- Making CI with Github Actions.
- Adding Card effects.
- Making it able to stack Buy:2 Cards till someone does not has any of them and so, the last player buys all the stack together.
- Making the front-end able to support 6 players in total.
- Being able to change the game color with help of Buy:4 Card.
- Adding an auto play system when user is afk during the game.
- Adding a chat to Table.
- Adding a countdown for every player round.
- Making player able to put more than one card on stack.
- Notify when a player gets in or out of a room
- Clone this repository
- Run the following commands
npm install # Install all shared dependencies
npm run install:unapy # Install dependencies for api
npm run install:unoenty # Install dependencies for client
npm run bootstrap # Link all packages dependencies together
-
Copy the .env.example inside packages/unoenty and packages/unapy turning it into a .env file.
-
Run the command bellow inside packages/unoenty and packages/unapy to start api and client.
npm run dev
Right here everything should be working fine. So, api will be available at http://localhost:5000 and client will be available at http://localhost:4000.
- Clone this repository to your machine.
- Create a new branch locally following the Git Karma pattern. Ex: feat/my-awesome-feature.
- Then, after coding your contribution, make a merge request for your branch.