# 🗝️ Steam Key Management System 🔑 ![Screenshot](GameManager.png) **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](https://www.docker.com/) and [docker-compose](https://docs.docker.com/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](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 [MIT License](LICENSE). --- ## 💖 Acknowledgements 💖 A big thank you to everyone who supports and contributes to this project! --- **Enjoy your organized Steam key collection!** 🚀