{"repo":"itchio/itch","free":true,"listed":false,"github":"https://github.com/itchio/itch","clone":"git clone https://github.com/itchio/itch.git","description":"🎮 The best way to play your itch.io games","language":"TypeScript","stars":2800,"topics":["itchio","electron","typescript","game-development"],"license":"MIT","category":"game-templates","readme_excerpt":"itch The goal of this project is to give you a desktop application that you can download and run games from itch.io with. Additionally you should be able to update games and get notified when games are updated. The goal is not to replace the itch.io website. Screenshots Downloads You can download it from , see Installing the app for detailed instructions. If you'd like to develop the app instead, read the [Getting Started][developing] page of the developer guide. [developing]: https://itch.io/docs/itch/developing/getting-started.html Development Quick Start App Architecture The itch desktop app consists of three components working together: itch (This Repository) An Electron app with a multi-process architecture: - Main Process : Handles state management (Redux), business logic, and coordination with butler/itch-setup. Uses a \"reactor\" pattern to handle side effects from Redux actions. - Renderer Process : React-based UI with state synchronized from the main process via electron-redux. butler A Go daemon (itchio/butler) that handles all game operations: - Downloads, installs, updates, and launches games - Maintains a SQLite database for installation data - Communicates with itch via TCP-based RPC - Spawned as a child process, tied to itch's lifecycle itch-setup A Go executable (itchio/itch-setup) for installation and updates: - Handles initial app installation on all platforms - Manages self-update checks and restarts Version Management (broth) The itch app automatically mana","default_branch":null,"files":null,"tree":[],"storefront":"/r/itchio","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/itchio/itch/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}