GameKeyManager/README.md

4.4 KiB
Raw Blame History

🔑 Game Key Manager 🔑

👋 Welcome! 👋

This project helps you keep track of your collected game keys.
No more confusion about whether a key is redeemed, gifted, or still unused now you have everything in one place, with search, status, and even automatic Steam cover images!

You can even gift your keys via a unique 24-hour website link just mark a game as "Gifted" and copy the link from your overview. (HTTPS recommended)

Screenshot


Features

  • Key Management:
    Enter your game keys, platform, source, and more.
  • Status Tracking:
    Mark keys as "Redeemed", "Gifted", or "Available".
  • Steam Cover & Shop Info:
    Provide the Steam AppID and get the official game cover. Add shop URLs too.
  • Game Descriptions & Prices:
    Automatically fetch game descriptions, current best prices, and historical lows from IsThereAnyDeal (API key required).
  • Gifting:
    Create a one-time gift link for each game that expires after 24 hours.
  • Search Functionality:
    Quickly find games with an integrated search bar.
  • Multi-user Support:
    Each user manages their own keys.
  • User Roles:
    The first registered user becomes an admin automatically.
  • Admin Area:
    Admins can reset passwords, delete users, and view audit logs.
  • Audit Logs:
    Track user logins, password resets, and deleted accounts.
  • Registration Toggle:
    Enable or disable user registration via the .env file.
  • Responsive UI:
    Fully functional on desktop and mobile with Dark Mode support.
  • Multi-language:
    Switch between English and German on the fly.
  • Import/Export (CSV, PDF export):
    Import/export your game keys easily.
  • Password Management:
    Users can change their passwords directly.
  • Notifications:
    Get alerts for expiring keys via Gotify, Matrix, or Pushover.
  • Security Settings:
    Toggle CSRF protection and secure cookies in .env.
  • Self-hosted:
    No data leaves your server.

📱 Installable PWA

Game Key Manager now includes full Progressive Web App (PWA) support!

  • Install the app on your desktop or mobile device with one click.
  • Enjoy a native-app-like experience with offline access to previously loaded content.
  • Add it to your home screen or applications for quicker access.

No setup required — just open the site in a modern browser (like Chrome, Edge, Firefox or Safari) and look for the install prompt or browser menu option to "Install App".


🚀 Get Started

1. Clone the Repository

git clone https://codeberg.org/nocci/GameKeyManager

Alternative:

git clone https://git.nocci.it/nocci/GameKeyManager

2. Setup Docker

Make sure Docker and docker-compose are installed.
If not, the setup script can guide you (Arch-based distros may vary).

3. Initial Setup

chmod +x setup.sh
./setup.sh

4. Build and Start the App

cd steam-gift-manager/
docker-compose build --no-cache
docker-compose up -d

5. Configure .env File

Adjust your settings:

SESSION_COOKIE_SECURE="True"   # Only works with HTTPS
CSRF_ENABLED="True"
ITAD_API_KEY="your_api_key"    # Optional, for price data

Apply changes after editing:

docker-compose down && docker-compose up -d --build

6. Translate (optional)

./translate.sh

Edit the .json files in translations/, then restart:

docker-compose down && docker-compose up -d --build

7. Access the App

Visit http://localhost:5000
Register the first user this account becomes the admin!


🔔 Notifications (optional)

  • Reminders for expiring keys (48h notice)
  • Pushover, Matrix, Gotify and more are supported through AppRise
  • Configurable via .env

🛠️ Tech Stack

  • Frontend: Bootstrap 5, Jinja2, ...
  • Backend: Python 3, Flask, Flask-SQLAlchemy, ...
  • Database: SQLite
  • Container: Docker, docker-compose

💬 Contribute

Contributions are welcome:

  • Report bugs
  • Suggest features
  • Submit Pull Requests

🪙 Support

Like the project? You can support me:

Ko-fi
Liberapay


📜 License

Licensed under Apache License 2.0.


Enjoy managing your game collection!