A simple, static web application for tracking friendly poker games.
Keep track of buy-ins, cash-outs, player Profit/Loss (P/L), game history, and calculate suggested payouts—all within a single HTML file using your browser's Local Storage. Perfect for home games!
- 👤 Player Management: Easily add and remove players from the game session.
- 💰 Buy-in & Cash-out Tracking: Log initial buy-ins, subsequent buy-ins (re-buys/add-ons), and cash-outs for each player.
- 📊 Real-time P/L Calculation: Automatically calculates and displays each player's profit or loss throughout the game.
- 🏆 Dynamic Ranking Emojis: See 🥇, 🥈, 🥉 medals for top players and a 🐟 for the player with the biggest loss.
- 📈 Game Summary: View the total pot (sum of all buy-ins), total amount cashed out, and a verification check to ensure the game balances (P/L sums to zero).
- 📜 Game History Log: Access a detailed, timestamped log of all major game events (players joining, buy-ins, cash-outs, players removed) via a modal.
- 💸 End-Game Payout Calculator: Automatically calculates suggested player-to-player payments at the end of the game to settle debts efficiently.
- ⏱️ Persistent Timer: Includes a start/stop/reset timer (useful for blind levels) that persists across page refreshes using Local Storage.
- 💾 Local Storage Persistence: All player data, game history, timer state, and settings are saved directly in your browser's Local Storage, so your game state is preserved between sessions on the same browser.
- 🎨 Settings & Customization:
- 🌓 Dark/Light Mode: Toggle between visual themes.
- 💲 Customizable Currency: Select your preferred currency symbol ($, €, £, ¥, ₹).
- 📱 Responsive Design: Mobile-first design ensures usability on phones, tablets, and desktops.
- 🔔 Toast Notifications: Get subtle confirmations for actions like adding players, buy-ins, timer changes, etc.
- ⌨️ Keyboard Friendly: Add players quickly using the Enter key in the input fields.
- 🚫 Safe Deletion: Uses confirmation modals for critical actions like removing a player or starting a new game.
- 📄 Single File Application: Everything (HTML, CSS, JavaScript) is contained within one
.htmlfile for maximum portability.
- Download: Get the
poker_manager.htmlfile. - Logo (Optional but Recommended): Download the
logo.svgfile and place it in the same directory aspoker_manager.html. - Open: Open the
poker_manager.htmlfile directly in your modern web browser (like Chrome, Firefox, Edge, Safari).
That's it! No installation or server required.
- Add Players: Enter a unique player name, optionally enter their initial buy-in amount (defaults to 0 if left blank), and click "Add Player" (or press Enter).
- Track Actions:
- Use the
💰 Buy-Inbutton in a player's row to log additional buy-ins via a pop-up modal. The input will remember the last entered buy-in amount. - Use the
💱 Cash-Outbutton to log the amount a player takes off the table. - Use the
🗑️button to remove a player (requires confirmation).
- Use the
- Monitor: Keep an eye on the Player Tracking table for individual P/L and the Game Summary section for overall totals and balance verification.
- Use Tools:
- Start/Stop/Reset the Game Timer as needed.
- Click Game History in the summary section to see a log of events.
- Click Calculate Payouts to see suggested end-game transactions.
- Click the Settings (⚙️) icon in the top-right navbar to change the theme or currency symbol.
- New Game: Click the New Game (🧼) button (requires confirmation) to clear all current game data, history, and timer state to start fresh.
- HTML5: Structure and content.
- CSS3: Styling, layout (including Flexbox & CSS Grid for responsiveness), dark mode variables.
- JavaScript (ES6+): DOM manipulation, event handling, calculations, Local Storage interaction, features implementation.
- Browser Local Storage: For data persistence within the user's browser.
- Local Data Only: All data is stored exclusively in the browser's Local Storage.
- Clearing your browser's data (cache, cookies, site data) will permanently delete your game data.
- Using a different browser, private/incognito mode, or a different device will not share the data.
- No Server/Backend: This is a purely client-side application. There is no online synchronization or backup.
- No User Accounts: Designed for single-session tracking on one device.
- Simple Payout Algorithm: The payout calculation uses a basic greedy approach, which is correct but may not always result in the absolute minimum number of transactions compared to more complex algorithms.
Suggestions and bug reports are welcome! Please feel free to open an issue on the repository (if applicable) to discuss potential improvements or problems.
This project is recommended to be licensed under the MIT License. You should create a LICENSE file in the repository containing the license text.


