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.
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.
Related repositories
- Solver engine: https://github.com/b-inary/postflop-solver
- 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.
- 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
- x86-64: must support AVX2 instructions
You can download the app from the GitHub releases page.
- 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.
On Windows, please remove the following folder after the regular uninstallation to completely uninstall Desktop Postflop:
C:\Users\<username>\AppData\Local\b-inary.desktop-postflop
Rust and Node.js (see .nvmrc
) need to be installed to build.
On Linux, you will also need to install some dependencies; the Tauri
documentation at the time of writing is not great, but these
$ sudo apt-get install pkg-config libcairo2-dev pango1.0-tools libjavascriptcoregtk-4.0-dev libgdk-pixbuf2.0-0 libgtk-3-dev libsoup2.4-dev libwebkit2gtk-4.0-dev librsvg2-bin librsvg2-dev
Install the Rust nightly channel:
$ rustup install nightly
$ rustup default nightly
Then clone this reporitory and run the following commands:
$ npm install
$ npm run tauri build
To debug the build process, you can use the command:
$ npm run tauri build -- --verbose
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):
[dependencies]
...
- postflop-solver = { git = "https://github.com/b-inary/postflop-solver", features = ["custom-alloc"] }
+ postflop-solver = { git = "https://github.com/b-inary/postflop-solver" }
- Results saving/loading feature (#8)
- Hand filter feature for the result viewer (#6)
- Node-locking feature
- Short deck support
- Aggregated reporting feature for multiple flops
- GTO training mode (#9)
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 https://www.gnu.org/licenses/.