feat: v1.1.0 - Docker, i18n, setup wizard, rate limiting, OpenAPI
New features: - Docker support (Dockerfile + docker-compose.yml) - GitHub Actions CI pipeline (PHP lint, JS lint, Docker build, i18n validation) - Internationalization system with 3 languages (it, en, de) and 347 translation keys - First-run setup wizard (4-step configuration) - File-based API rate limiting (120/15/5 req/min tiers) - OpenAPI 3.1.0 specification for all 43 API endpoints - CONTRIBUTING.md with translation and development guide - Screenshots directory placeholder Modified: - README.md: Docker badges, install instructions, translations section - api/index.php: rate limiting middleware - assets/js/app.js: i18n system, setup wizard, t() function - assets/css/style.css: setup wizard styles - index.html: data-i18n attributes, setup wizard overlay, language settings - .gitignore: rate_limits exclusion
This commit is contained in:
@@ -5,10 +5,14 @@
|
||||
[](LICENSE)
|
||||
[](https://www.php.net/)
|
||||
[](https://www.sqlite.org/)
|
||||
[](Dockerfile)
|
||||
[](translations/)
|
||||
|
||||
<!--
|
||||
<p align="center">
|
||||
<img src="assets/img/screenshot-dashboard.png" alt="Dashboard Screenshot" width="320" />
|
||||
<img src="assets/img/screenshots/dashboard.png" alt="Dashboard Screenshot" width="320" />
|
||||
</p>
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
@@ -63,6 +67,25 @@
|
||||
|
||||
### Installation
|
||||
|
||||
#### Option A: Docker (recommended)
|
||||
|
||||
```bash
|
||||
# 1. Clone the repository
|
||||
git clone https://github.com/dadaloop82/dispensa.git
|
||||
cd dispensa
|
||||
|
||||
# 2. Create configuration file
|
||||
cp .env.example .env
|
||||
nano .env
|
||||
|
||||
# 3. Start with Docker Compose
|
||||
docker compose up -d
|
||||
|
||||
# → Open http://localhost:8080
|
||||
```
|
||||
|
||||
#### Option B: Manual
|
||||
|
||||
```bash
|
||||
# 1. Clone the repository
|
||||
git clone https://github.com/dadaloop82/dispensa.git
|
||||
@@ -248,16 +271,30 @@ The application uses no build tools — edit files directly and refresh.
|
||||
- [ ] Multi-language support (i18n)
|
||||
- [ ] User authentication / multi-user support
|
||||
- [ ] Docker container for easy deployment
|
||||
- [ ] REST API documentation (OpenAPI/Swagger)
|
||||
- [x] REST API documentation (OpenAPI/Swagger) — see [docs/openapi.yaml](docs/openapi.yaml)
|
||||
- [ ] Offline mode with service worker
|
||||
- [ ] Export/import inventory data
|
||||
- [ ] Notification system (Telegram, email) for expiring products
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Translations
|
||||
|
||||
The app supports multiple languages via JSON translation files in the `translations/` folder.
|
||||
|
||||
| Language | Status |
|
||||
|----------|--------|
|
||||
| 🇮🇹 Italian (it) | ✅ Complete (base) |
|
||||
| 🇬🇧 English (en) | ✅ Complete |
|
||||
| 🇩🇪 German (de) | ✅ Complete |
|
||||
|
||||
**Want to add your language?** See the [Translation Guide](CONTRIBUTING.md#-adding-translations) — just copy `translations/it.json`, translate the values, and submit a PR!
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
Contributions are welcome! Please:
|
||||
Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.
|
||||
|
||||
1. Fork the repository
|
||||
2. Create a feature branch (`git checkout -b feature/my-feature`)
|
||||
|
||||
Reference in New Issue
Block a user