Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/b-inary/desktop-postflop
[Development suspended] Advanced open-source Texas Hold'em GTO solver with optimized performance
https://github.com/b-inary/desktop-postflop
game-theory gto poker solver texas-holdem texas-holdem-poker
Last synced: 12 days ago
JSON representation
[Development suspended] Advanced open-source Texas Hold'em GTO solver with optimized performance
- Host: GitHub
- URL: https://github.com/b-inary/desktop-postflop
- Owner: b-inary
- License: agpl-3.0
- Created: 2022-06-22T03:12:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-13T10:57:10.000Z (12 months ago)
- Last Synced: 2024-08-01T16:56:34.692Z (3 months ago)
- Topics: game-theory, gto, poker, solver, texas-holdem, texas-holdem-poker
- Language: Vue
- Homepage:
- Size: 1.11 MB
- Stars: 221
- Watchers: 21
- Forks: 52
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Desktop Postflop
> [!IMPORTANT]
> **As of October 2023, I have started developing a poker solver as a business and have decided to suspend development of this open-source project. See [this issue] for more information.**[this issue]: https://github.com/b-inary/postflop-solver/issues/46
---
**Desktop Postflop** is a free, open-source GTO solver for Texas hold'em poker.
This is a port of [WASM Postflop] to a native desktop application using the [Tauri] framework.
Since WASM Postflop works on web browsers, it is more suitable for casual use.
However, if you want to use the solver for more serious purposes, please consider trying Desktop Postflop.[WASM Postflop]: https://github.com/b-inary/wasm-postflop
[Tauri]: https://tauri.app/**Related repositories**
- Solver engine: https://github.com/b-inary/postflop-solver## Comparison to WASM Postflop
- **Shared features**:
- Free to use and open-source
- Same solver engine and user interface
- **Advantages**:
- Faster computation
- Able to use more than 4GB of memory
- **Disadvantages**:
- Needs to download the program and trust the execution
- macOS builds are not distributed (you need to build the app yourself)See the [WASM Postflop repository] for more detailed comparisons, including some commercial solvers.
[WASM Postflop repository]: https://github.com/b-inary/wasm-postflop#comparison
## Supported environments
- OS
- Windows: 10/11
- macOS: 11.7 and later
- We do not distribute macOS builds because we are not enrolled in the Apple Developer Program and cannot sign the app (please see the "Build" section below and build it yourself).
- Linux: glibc 2.31 and later (e.g., Ubuntu 20.04 and later)
- CPU
- x86-64: must support AVX2 instructions
- Intel: Haswell (2013) and later
- AMD: Zen (1st gen; 2017) and later
- If you have a CPU without AVX2 support, you can modify `src-tauri/.cargo/config.toml` and build it yourself.
- Apple silicon: M1 and later## Download
You can download the app from the [GitHub releases page].
[GitHub releases page]: https://github.com/b-inary/desktop-postflop/releases
- Windows
- The installer version (.msi) automatically installs dependent runtimes.
- The portable version (.exe) requires the [WebView2 runtime] to be installed.
- In most cases, the runtime should already be installed on Windows 10/11.
- Linux
- AppImage should work on most Linux distributions.
- Alternatively, the .deb package is available for Debian-based distributions, including Ubuntu.[WebView2 runtime]: https://developer.microsoft.com/en-us/microsoft-edge/webview2/#download-section
## Uninstall
On Windows, please remove the following folder after the regular uninstallation to completely uninstall Desktop Postflop:
```
C:\Users\\AppData\Local\b-inary.desktop-postflop
```## Build
[Rust] and [Node.js] need to be installed to build.
On Linux, you will also need to install some dependencies; please see the [Tauri documentation] for details.
For better performance, we also recommend installing the Rust nightly channel:```sh
$ rustup install nightly
$ rustup default nightly
```Then clone this reporitory and run the following commands:
```sh
$ npm install
$ npm run tauri build
```If the build was successful, you should be able to find the application in the `src-tauri/target/release/bundle/` directory.
If you want to use stable Rust instead of nightly Rust, please modify the following line in `src-tauri/Cargo.toml` (performance will be sacrificed):
```diff
[dependencies]
...
- postflop-solver = { git = "https://github.com/b-inary/postflop-solver", features = ["custom-alloc"] }
+ postflop-solver = { git = "https://github.com/b-inary/postflop-solver" }
```[Rust]: https://www.rust-lang.org/learn/get-started
[Node.js]: https://nodejs.org/en/
[Tauri documentation]: https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-linux## ~~Roadmap (in order of priority)~~
- Results saving/loading feature ([#8](https://github.com/b-inary/desktop-postflop/issues/8))
- Hand filter feature for the result viewer ([#6](https://github.com/b-inary/desktop-postflop/issues/6))
- Node-locking feature
- Short deck support
- Aggregated reporting feature for multiple flops
- GTO training mode ([#9](https://github.com/b-inary/desktop-postflop/issues/9))## License
Copyright (C) 2022 Wataru Inariba
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see .