|
||
---|---|---|
steam-gift-manager | ||
translations | ||
.env | ||
GameManager.png | ||
LICENSE | ||
README.md | ||
setup.sh | ||
translate.sh | ||
upgrade.sh |
README.md
🔑 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!
It's even possible to gift your keys via a unique website. Just edit the game to "Gifted" and you'll get a option to copy the on your overview page. (maybe HTTPS only)
(the link will also remain in the edit area)
✨ Features ✨
- Key Management:
Enter your game keys, the corresponding game, platform, and maybe 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. - Gift your Games: You can create a unique redeem/gift website, which will expire after 24h.
- Multi-user:
Each user manages their own keys. - Enable/Disable Registrations: Perfect if you want to run the Server just on your own (via .env file)
- Search:
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*. - Import/Export (CSV / PDF -only export-): Easy export and import of your keys. (e.g. in case you have to start over)
- Change Password: Change your Password on the fly.
- Website Security: You can turn on/off CSRF and Secure Cookie via .env file.
- Notifications: If you have key that have to be redeemed before a specific date. You can set up sending messages via, Pushover, Matrix and Gotify
- No key data leaves your server!
- (Planned):
Import/Export (CSV)Redeem site with unique sharing link
🚀 Get Started! 🚀
1. Clone the Repository (Option 1 or Option 2)
Option 1: Clone the main repository
git clone https://codeberg.org/nocci/GameKeyManager
cd steam-gift-manager
Option 2: Clone from alternative repository (if option 1 fails)
git clone https://git.nocci.it/nocci/GameKeyManager
2. Setup Docker
Make sure you have Docker and docker-compose installed. If not, the script will ask you what to do and can install Docker and docker-compose for you. (maybe not if you are running Arch)
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. Edit your .env file to your liking
It's in your root folder of the installation!
# Security
SESSION_COOKIE_SECURE="True" (only works if you run this app via HTTPS)
CSRF_ENABLED="True"
Important after any(!) change of the .env file!
cd steam-gift-manager/
docker-compose down && docker-compose up -d --build
6. Initialize and Edit Translations (Optional)
./translate.sh
Edit the .po files in translations/de_DE/LC_MESSAGES/messages.po and en_US/LC_MESSAGES/messages.po
./translate.sh
cd steam-gift-manager/
docker-compose down && docker-compose up -d --build
7. Open the App
Go to http://localhost:5000 in your browser.
- Register your first user.
- Add your keys, shop URLs etc.
- 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 intranslations/
🌍 Multi-language
- Switch between English and German using the dropdown in the navigation bar.
- All game and menu texts can be translated or individualized.
🔔 Notifications
- Send notifications if a game has to be redeemed by a specific date
- Gotify, Matrix and Pushover are already available - have a look into the .env file
- 48 hours before you are running out of time the app will send you a notice
🪙 Do you this project? 🪙
If you’d like to support itme, you can make a donation here:
Thank you!
🙌 Contribute! 🙌
This project is open source!
- Bug Reports: Please report bugs as Issues.
- Feature Requests: Suggest new features!
- Pull Requests: Submit your code changes!
// only possible after Forgejo opens for federation \\
📜 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 Game key collection! 🚀