You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

112 lines
2.6 KiB

# EasySmartInventory
Genereer interactieve standalone HTML inventarisatieformulieren op basis van YAML configuratie.
## Features
- 📝 **YAML configuratie** - Definieer alle velden, validatie en opties in YAML
- 📱 **Responsive** - Werkt op iPad, iPhone, Android en desktop
- 💾 **Auto-save** - Automatisch opslaan naar localStorage
- 📤 **CSV Export** - Exporteer naar CSV met base64 foto's
- 📧 **Mailto** - Direct mailen vanuit de browser
- 🎨 **Themes** - Kies uit modern, corporate of minimal stijl
- 🏢 **Branding** - Eigen logo en kleuren
## Installatie
```bash
cd EasySmartInventory
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```
## Gebruik
```bash
# Genereer HTML uit YAML configuratie
python src/generator.py examples/config.yaml
# Output: examples/Machine_Inventarisatie.html
```
## YAML Configuratie
Zie `examples/config.yaml` voor een volledig voorbeeld.
### Basis structuur
```yaml
name: "Inventarisatie Naam"
version: "1.0.0"
style:
theme: "modern" # modern, corporate, minimal
logo: "base64_string_or_url"
primary_color: "#007bff"
export:
csv:
enabled: true
mailto:
enabled: true
to: "inventory@company.com"
subject_prefix: "Inventarisatie"
subject_fields: ["Serienummer"]
sections:
- name: "Sectie Naam"
fields:
- id: "veld_id"
label: "Veld Label"
type: "text"
required: true
```
### Field Types
| Type | Beschrijving | Extra opties |
|------|--------------|--------------|
| `text` | Tekstveld | `min_length`, `placeholder` |
| `number` | Numeriek veld | `min`, `max` |
| `date` | Datumveld | `format` (dd-mm-yyyy) |
| `dropdown` | Keuzelijst | `options` (array) |
| `multiselect` | Meerdere keuzes | `options` (array) |
| `boolean` | Ja/Nee toggle | - |
| `photo` | Foto upload | `max_width`, `max_height` |
| `textarea` | Groot tekstveld | `rows` |
### Validatie opties
- `required: true` - Veld is verplicht
- `min_length: 5` - Minimaal aantal karakters
- `min: 0` / `max: 100` - Bereik voor nummers
## Voorbeelden
Drie voorbeeldstijlen zijn beschikbaar:
- `examples/inventory_modern.html` - Modern design met shadows
- `examples/inventory_corporate.html` - Zakelijk en professioneel
- `examples/inventory_minimal.html` - Minimalistisch en clean
## Export
### CSV
- Klik "Exporteer CSV" om data te downloaden
- Foto's worden opgeslagen als base64
- UTF-8 encoding met BOM voor Excel
### Email
- Klik "Verstuur per Email" om mailclient te openen
- Subject bevat configureerbare prefix + veldwaarden
- Body bevat gestructureerde data
## Versie
Huidige versie: 1.0.0
## Licentie
MIT License

Powered by TurnKey Linux.