Find a file
2026-02-16 22:48:53 +02:00
akimbo feat: added debug logging option and improved logging context for Steam and Epic integrations 2026-02-16 22:38:48 +02:00
assets feat: added debug logging option and improved logging context for Steam and Epic integrations 2026-02-16 22:38:48 +02:00
.gitignore feat: working on better caching, and better epic games integration 2026-02-16 20:49:17 +02:00
example.config.toml feat: added debug logging option and improved logging context for Steam and Epic integrations 2026-02-16 22:38:48 +02:00
LICENSE feat: added debug logging option and improved logging context for Steam and Epic integrations 2026-02-16 22:38:48 +02:00
main.py feat: added debug logging option and improved logging context for Steam and Epic integrations 2026-02-16 22:38:48 +02:00
README.md docs: added star history to readme 2026-02-16 22:48:53 +02:00
requirements.txt refactor: streamlined CLI functionality and integrated configuration loading. Updated .gitignore to include config.toml and __pycache__ directory. Enhanced requirements.txt with PyQt6 and tomli for compatibility with Python versions below 3.11 2026-02-16 20:03:55 +02:00

Akimbo logo Akimbo logo

Akimbo compares your Steam and Epic libraries and wishlists: it finds games you own on both stores, Steam wishlist items you already own on Epic, and Epic wishlist items you already own on Steam. Fuzzy matching handles different titles across stores.

GUI Showcase CLI Showcase

Disclaimers

  • The project was vibecoded
  • The project is not affiliated with Epic Games or Steam

Requirements

  • Python 3.12+
  • Steam: Steam Web API key and your Steam ID (or vanity URL). Your profile and game details must be public for wishlist/library access.
  • Epic: Legendary (pip install legendary-gl). Run legendary auth once so Akimbo can read your Epic library and wishlist.

Install

git clone https://github.com/MemerGamer/Akimbo.git
cd Akimbo
pip install -r requirements.txt

Configuration

Copy the example config and edit it:

cp example.config.toml config.toml
Section Key Description
[steam] api_key Your Steam Web API key.
[steam] steam_id Your 64-bit Steam ID or vanity URL (e.g. example or 76342736118770791).
[matching] threshold Fuzzy match strictness 0100 (default 85). Higher = stricter.
[output] json_out Optional path to write results as JSON (leave empty or comment out to skip).
[ui] mode "cli" or "gui" (GUI needs PyQt6).
[ui] debug true = extra progress and debug logs to console (including in GUI).
[cache] steam_applist_ttl_hours How long to cache the Steam app name list (default 24).

Usage

CLI (default):

python main.py

Youll see progress lines, then a summary: library sizes, duplicate owned games, Steam wishlist → owned on Epic, and Epic wishlist → owned on Steam.

GUI (requires PyQt6):

Set mode = "gui" in config.toml, then:

python main.py

Use Scan to refresh; results appear in tabs. Console stays quiet unless debug = true.

JSON output:
If [output]json_out is set, the same comparison is written to that file (CLI and GUI).

Star History

Star History Chart