All checks were successful
Deploy server-up (dev) / deploy (push) Successful in 1m10s
- Nieuw core/categories.py: zeventien categorieen, elk met naam (nl/en), kleur en pictogram. Kleuren zijn middentonen die in licht en donker leesbaar zijn; de interface gebruikt ze als tekstkleur op een doorzichtige variant. - Alle 96 apps ingedeeld via metadata.categories. Een app mag in meerdere categorieen zitten; 39 apps doen dat (Frigate onder domotica en media, Immich onder fotos en opslag, Kavita onder media en documenten). - Apps uit externe repos geven geen categorieen op; die worden afgeleid uit tags en omschrijving, zodat ook zij een kleur en een plek in het filter krijgen. - App store: gekleurde categoriebalk met aantallen, klikbare badges per app, werkt naast het bestaande zoekveld en de tagfilters. - Stackslijst: dezelfde balk met alleen de categorieen die je draait, gekleurde rand per kaart en klikbare badges. - Nieuw /api/categories geeft de definities met kleur, zodat interface en backend dezelfde kleur voor dezelfde categorie gebruiken. /api/stacks geeft de categorieen mee; een stack van voor deze versie valt terug op "overig" in plaats van kleurloos te blijven. - Tests: elke app heeft geldige categorieen, kleuren zijn uniek, en er staat geen categorie in het filter zonder apps. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C7oLCRYzY5ixJ5Sv8Y8EFb
98 lines
2.2 KiB
JSON
98 lines
2.2 KiB
JSON
{
|
|
"kind": "compose",
|
|
"metadata": {
|
|
"name": "Paperless-ngx",
|
|
"description": "Digitaal documentbeheer met OCR, slimme tags en zoekfunctie.",
|
|
"tags": [
|
|
"documenten",
|
|
"ocr",
|
|
"archief",
|
|
"productiviteit"
|
|
],
|
|
"icon": {
|
|
"provider": "selfhst",
|
|
"id": "paperless-ngx"
|
|
},
|
|
"version": {
|
|
"name": "latest"
|
|
},
|
|
"categories": [
|
|
"documenten",
|
|
"opslag"
|
|
]
|
|
},
|
|
"variables": [
|
|
{
|
|
"title": "Algemeen",
|
|
"items": [
|
|
{
|
|
"name": "service_name",
|
|
"type": "str",
|
|
"title": "Servicenaam",
|
|
"default": "paperless-ngx",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "port",
|
|
"type": "int",
|
|
"title": "Web poort",
|
|
"default": 8010,
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "data_dir",
|
|
"type": "str",
|
|
"title": "Data directory",
|
|
"default": "/opt/serverup/appdata",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "timezone",
|
|
"type": "str",
|
|
"title": "Tijdzone",
|
|
"default": "Europe/Amsterdam",
|
|
"required": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Beveiliging",
|
|
"items": [
|
|
{
|
|
"name": "secret_key",
|
|
"type": "str",
|
|
"title": "Secret key",
|
|
"default": "",
|
|
"required": true,
|
|
"description": "Willekeurige lange string voor sessiebeveiliging",
|
|
"config": {
|
|
"placeholder": "minimaal-50-willekeurige-tekens"
|
|
}
|
|
},
|
|
{
|
|
"name": "db_password",
|
|
"type": "str",
|
|
"title": "Database wachtwoord",
|
|
"default": "paperless_db_pass",
|
|
"required": true,
|
|
"config": {
|
|
"placeholder": "sterk-wachtwoord"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "OCR",
|
|
"items": [
|
|
{
|
|
"name": "ocr_language",
|
|
"type": "str",
|
|
"title": "OCR taal",
|
|
"default": "nld+eng",
|
|
"required": false,
|
|
"description": "Tesseract taalcodes, bijv. nld+eng voor Nederlands en Engels"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|