Code Monkey home page Code Monkey logo

tichu's Introduction

Tichu

This is an online implementation of Tichu, based on the card game by Fata Morgana Spiele, Switzerland.

For information about the original game, see

Code Main Build

Build

./mvnw clean verify

Run

Currently I just run net.incongru.tichu.tomcat.WebSocketServer from IntelliJ, so... TODO

Notes

This project currently consists of different modules:

  • model: models the game and rules,
  • actions: wraps the above in an action framework, which can be used by:
    • simulator: a module that provides a text file-based simulation of games, and serves as a test harness for the model
    • websocket-endpoint: offers a websocket entrypoint to actions
  • embedded-tomcat: currently used as a quick way of spinning up the websocket service locally
  • archunit: ArchUnit tests to try and keep the codebase under control
  • clients:
    • term-client: play from a terminal! Currently used as a test bed for the websocket implementation
    • web: will probably be a React-based bundle

Next up & future things

Rather than maintain a laundry list of all excellent ideas I have for the future, they're on a Trello board: https://trello.com/b/ehVw0CHp/tichu

tichu's People

Contributors

gjoseph avatar renovate-bot avatar renovate[bot] avatar

Watchers

 avatar  avatar

Forkers

lol-12345

tichu's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm @material-ui/core Available
npm @material-ui/icons Available

Pending Status Checks

These updates await pending status checks. To force their creation now, click the checkbox below.

  • Update SLF4J packages to v2.0.16 (patch) (org.slf4j:slf4j-nop, org.slf4j:slf4j-api)
  • Update Tomcat packages to v10.1.30 (patch) (org.apache.tomcat.embed:tomcat-embed-core, org.apache.tomcat.embed:tomcat-embed-websocket)
  • Update dependency @types/ws to v8.5.12
  • Update dependency com.fasterxml.jackson:jackson-bom to v2.14.3
  • Update dependency commander to v10.0.1
  • Update dependency jakarta.websocket:jakarta.websocket-api to v2.1.1
  • Update dependency jakarta.websocket:jakarta.websocket-client-api to v2.1.1
  • Update dependency maven to v3.9.9
  • Update dependency nanoid to v4.0.2
  • Update dependency org.apache.maven.plugins:maven-dependency-plugin to v3.6.1
  • Update dependency org.jacoco:jacoco-maven-plugin to v0.8.12
  • Update dependency org.junit.jupiter:junit-jupiter to v5.9.3
  • Update dependency pretty-quick to v3.1.4
  • Update dependency typedoc to v0.23.28
  • Update inquirer (patch) (@types/inquirer, inquirer)
  • Update react (patch) (@types/react, @types/react-dom)
  • Update JsonUnit packages to v2.40.1 (minor) (net.javacrumbs.json-unit:json-unit-assertj, net.javacrumbs.json-unit:json-unit)
  • Update Mockito packages to v5.13.0 (minor) (org.mockito:mockito-junit-jupiter, org.mockito:mockito-core)
  • Update dependency @emotion/styled to v11.13.0
  • Update dependency com.fasterxml.jackson:jackson-bom to v2.17.2
  • Update dependency com.tngtech.archunit:archunit-junit5 to v1.3.0
  • Update dependency jakarta.websocket:jakarta.websocket-api to v2.2.0
  • Update dependency jakarta.websocket:jakarta.websocket-client-api to v2.2.0
  • Update dependency maven-wrapper to v3.3.2
  • Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.13.0
  • Update dependency org.apache.maven.plugins:maven-dependency-plugin to v3.8.0
  • Update dependency org.apache.maven.plugins:maven-enforcer-plugin to v3.5.0
  • Update dependency org.apache.maven.plugins:maven-failsafe-plugin to v3.5.0
  • Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.4.2
  • Update dependency org.apache.maven.plugins:maven-surefire-plugin to v3.5.0
  • Update dependency org.assertj:assertj-core to v3.26.3
  • Update dependency org.immutables:value to v2.10.1
  • Update dependency org.junit.jupiter:junit-jupiter to v5.11.0
  • Update dependency pretty-quick to v3.3.1
  • Update dependency ts-enum-util to v4.1.0
  • Update testing-library monorepo (minor) (@testing-library/jest-dom, @testing-library/user-event)
  • Update JsonUnit packages to v3 (major) (net.javacrumbs.json-unit:json-unit-assertj, net.javacrumbs.json-unit:json-unit)
  • Update dependency @testing-library/jest-dom to v6
  • Update dependency commander to v11
  • Update dependency prettier to v3
  • Update dependency typescript to v5
  • Update storybook monorepo to v7 (major) (@storybook/addon-actions, @storybook/addon-docs, @storybook/addon-essentials, @storybook/addon-links, @storybook/addon-storysource, @storybook/builder-webpack5, @storybook/preset-create-react-app, @storybook/react)

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/frontend-setup/action.yml
  • actions/cache v3
.github/workflows/main.yml
  • actions/checkout v3
  • actions/setup-java v3
  • actions/checkout v3
  • actions/checkout v3
maven
pom.xml
  • com.fasterxml.jackson:jackson-bom 2.14.2
  • org.immutables:value 2.9.3
  • com.google.guava:guava 31.1-jre
  • jakarta.websocket:jakarta.websocket-api 2.1.0
  • jakarta.websocket:jakarta.websocket-client-api 2.1.0
  • org.apache.tomcat.embed:tomcat-embed-websocket 10.1.19
  • org.apache.tomcat.embed:tomcat-embed-core 10.1.25
  • org.slf4j:slf4j-api 2.0.6
  • org.slf4j:slf4j-nop 2.0.6
  • org.junit.jupiter:junit-jupiter 5.9.2
  • org.assertj:assertj-core 3.24.2
  • net.javacrumbs.json-unit:json-unit 2.36.1
  • net.javacrumbs.json-unit:json-unit-assertj 2.36.1
  • org.mockito:mockito-core 5.2.0
  • org.mockito:mockito-junit-jupiter 5.2.0
  • com.tngtech.archunit:archunit-junit5 1.0.1
  • org.apache.maven.plugins:maven-compiler-plugin 3.11.0
  • org.apache.maven.plugins:maven-dependency-plugin 3.6.0
  • org.apache.maven.plugins:maven-surefire-plugin 3.1.2
  • org.apache.maven.plugins:maven-failsafe-plugin 3.1.2
  • org.apache.maven.plugins:maven-enforcer-plugin 3.3.0
  • org.apache.maven.plugins:maven-jar-plugin 3.3.0
  • org.jacoco:jacoco-maven-plugin 0.8.10
tichu-actions/pom.xml
tichu-archunit/pom.xml
tichu-embedded-tomcat/pom.xml
tichu-model/pom.xml
tichu-simulator/pom.xml
tichu-websocket-endpoint/pom.xml
maven-wrapper
.mvn/wrapper/maven-wrapper.properties
  • maven 3.9.2
  • maven-wrapper 3.2.0
npm
tichu-clients/package.json
  • husky 8.0.3
  • prettier 2.7.1
  • pretty-quick 3.1.3
  • node 16.16.0
  • npm 8.14.0
tichu-clients/packages/tichu-client-ts-lib/package.json
  • @types/fs-extra 9.0.13
  • fs-extra 10.1.0
  • nanoid 4.0.1
  • ts-enum-util 4.0.2
  • tslib 2.4.1
  • @ava/typescript 3.0.1
  • @liftr/tscov 2.0.0
  • @types/node 16.11.68
  • @types/ws 8.5.4
  • ava 4.3.3
  • typedoc 0.23.26
  • typescript 4.7.4
  • ws 8.8.1
  • node 16.16.0
  • npm 8.14.0
tichu-clients/packages/tichu-term-client/package.json
  • @types/fs-extra 9.0.13
  • commander 10.0.0
  • fs-extra 10.1.0
  • inquirer 9.1.4
  • kleur 4.1.5
  • ts-enum-util 4.0.2
  • tslib 2.4.1
  • ws 8.8.1
  • @ava/typescript 3.0.1
  • @liftr/tscov 2.0.0
  • @types/inquirer 9.0.3
  • @types/node 16.11.68
  • @types/ws 8.5.4
  • ava 4.3.3
  • typedoc 0.23.26
  • typescript 4.7.4
  • node 16.16.0
  • npm 8.14.0
tichu-clients/packages/tichu-web/package.json
  • @material-ui/core 4.12.4
  • @material-ui/icons 4.11.3
  • @testing-library/jest-dom 5.16.5
  • @testing-library/react 12.1.5
  • @testing-library/user-event 14.4.3
  • @types/jest 28.1.8
  • @types/node 16.11.68
  • @types/react 17.0.53
  • @types/react-dom 17.0.19
  • notistack 2.0.8
  • react 17.0.2
  • react-dom 17.0.2
  • react-scripts 5.0.1
  • ts-enum-util 4.0.2
  • typescript 4.7.4
  • @craco/craco 7.0.0
  • @storybook/addon-actions 6.5.16
  • @storybook/addon-docs 6.5.16
  • @storybook/addon-essentials 6.5.16
  • @storybook/addon-links 6.5.16
  • @storybook/addon-storysource 6.5.16
  • @storybook/builder-webpack5 6.5.16
  • @storybook/manager-webpack5 6.5.16
  • @storybook/preset-create-react-app 4.1.2
  • @storybook/react 6.5.16
  • @emotion/styled ^11.3.0
  • node 16.16.0
  • npm 8.14.0
nvm
tichu-clients/.nvmrc
  • node 16.16.0

  • Check this box to trigger a request for Renovate to run again on this repository

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Location: config
Error type: Invalid allowedVersions
Message: The following allowedVersions does not parse as a valid version or range: "!4.0.0"

investigate tomcat 10 web socket improvements

eg. in the 10.0.16 changelog I see: Add: Add support for POJO WebSocket endpoints to the programmatic upgrade that allows applications to opt to upgrade an HTTP connection to WebSocket. (markt)
-- maybe this helps us?

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.