GameKeyManager/README.md

3.2 KiB
Raw Blame History

🔑 Game Key Management System 🔑

Screenshot

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!


Features

  • Key Management:
    Enter your game keys, the corresponding game, platform, and where you got the key.
  • Status Tracking:
    Mark keys as "Redeemed", "Gifted" or "Available" always know your status.
  • Shop URL & Steam Cover:
    Save the shop URL and (optionally) the Steam AppID. The app will automatically show the official Steam cover image if available.
  • Multi-user:
    Each user manages their own keys.
  • Search & Filter:
    Find games quickly with the search function.
  • Responsive UI:
    Works on desktop and mobile, with Dark Mode toggle.
  • Multi-language:
    Switch between English and German instantly.
  • No key data leaves your server!
  • (Planned):
    • Import/Export (CSV, JSON)
    • Redeem site with unique sharing link

🚀 Get Started! 🚀

1. Clone the Repository

git clone https://git.nocci.it/nocci/GiftGamesDB
cd steam-gift-manager

2. Setup Docker

Make sure you have Docker and docker-compose installed.

3. Initial Setup

chmod +x setup.sh
./setup.sh

This script prepares all directories, configuration, and translation files.

4. Build and Start the App

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

5. Initialize and Edit Translations (Optional)

./translate.sh

Edit the .po files in steam-translations/de/LC_MESSAGES/messages.po and en/LC_MESSAGES/messages.po

./translate.sh
cd steam-gift-manager/
docker-compose restart steam-manager

6. Open the App

Go to http://localhost:5000 in your browser.

  • Register your first user.
  • Add your keys, shop URLs, and (optionally) Steam AppIDs.
  • Enjoy search, status, and automatic Steam cover images!

🛠️ Technology Stack 🛠️

  • Frontend: Bootstrap 5, Jinja2 Templates
  • Backend: Python 3, Flask, Flask-Babel, Flask-Login, Flask-SQLAlchemy
  • Database: SQLite (persisted in data/)
  • Containerization: Docker, docker-compose
  • Translations: Flask-Babel, editable .po files in steam-translations/

🌍 Multi-language

  • Switch between English and German using the dropdown in the navigation bar.
  • All game and menu texts are translated.
  • You can add more languages by editing the .po files and running ./translate.sh.

🙌 Contribute! 🙌

This project is open source and thrives on your help!

  • Bug Reports: Please report bugs as Issues.
  • Feature Requests: Suggest new features!
  • Pull Requests: Submit your code changes!

📜 License 📜

This project is licensed under the Apache License 2.0.


💖 Acknowledgements 💖

A big thank you to everyone who supports and contributes to this project!


Enjoy your organized Steam key collection! 🚀