127 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			127 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# 🔑 Game Key Management System 🔑
 | 
						||
 | 
						||

 | 
						||
 | 
						||
## 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**
 | 
						||
 | 
						||
```bash
 | 
						||
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**
 | 
						||
 | 
						||
```bash
 | 
						||
chmod +x setup.sh
 | 
						||
./setup.sh
 | 
						||
```
 | 
						||
 | 
						||
This script prepares all directories, configuration, and translation files.
 | 
						||
 | 
						||
### 4. **Build and Start the App**
 | 
						||
 | 
						||
```bash
 | 
						||
cd steam-gift-manager/
 | 
						||
docker-compose build --no-cache
 | 
						||
docker-compose up -d
 | 
						||
```
 | 
						||
 | 
						||
### 5. **Initialize and Edit Translations (Optional)**
 | 
						||
 | 
						||
```bash
 | 
						||
./translate.sh
 | 
						||
```
 | 
						||
 | 
						||
Edit the .po files in steam-translations/de/LC_MESSAGES/messages.po and en/LC_MESSAGES/messages.po
 | 
						||
 | 
						||
```bash
 | 
						||
./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 [Apache License 2.0](LICENSE).
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 💖 Acknowledgements 💖
 | 
						||
 | 
						||
A big thank you to everyone who supports and contributes to this project!
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
**Enjoy your organized Steam key collection!** 🚀
 |