Have you ever played poker at an online casino and have ask you
and
This poker platform allows to play poker with humans or bots to improve your skills at poker and programming.
You can play as human or can write a bot, the service brings both together and holds all necessary information about the game.
The service can and will be hosted if that makes any sense in the future. The bots will be hosted by your self or runs on your local machine.
If you are interested to push that project or have any questions, please create a ticket or pick one.
The service:
- stores of all relevant data, like: player,bots,tables,seats and game events
- takes the role of the dealer
All played games will be stored and are reproducable. This includes:
- attended players
- deck (all cards)
- players actions
- payout summary
The App allows humans to interact with the service.
The App:
- allows to login via previously registered OIDC providers
- can create bot accounts
- allows to play poker
An initial bot implementation shows how to interact with the service. The bot interacts with the REST API as well as the App, so implementations are not limited to that example. Have a look to the sub-project "bot". For sure, you can create your own bot in your github repo or somewhere else.
- base poker enums - color, images, cards, deck, rank, pot
- rules limit, variant, hand index, rank of hand
- remote api
- table - players infos and actions
- basically helper and toolings for REST API
- puts all sub projects together to one Spring application.
- contains database setup and migration with Liquibase
- contains central CORS
- contain storage of users (humans interact with the service)
- contain storage of OIDC providers
- contains controller for authentication
- contain storage and controller for players and bots
- storage and controller for table, seats, game
- storage game events
- dealer logic
Initial implementation or template to write a poker bot
- find table and seat
- automatically calls if bot has action
The angular app to play poker
app structure
- composites - all pages control data and display
- components for all objects ** bots ** game ** players ** seats ** tables ** oidc ** shell
- admin add oidc provider via REST
- user login via oidc
- table is automatically create after user login
- user can create bots
- user can assign player and bots to table
- as soon as two players are on table the dealer will start the game
- player can select action - display refresh every 5 seconds
- service JDK 17
- app typescript with angular 15
docker images can be built from service local/hatoka/poker-service:latest
gw buildImage
and from app local/hatoka/poker-app:latest
cd app
docker build . -t local/hatoka/poker-app:latest
starting the containers
docker compose -f docker-compose-all.yml up
Copyright 2009-2023.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.