2 Commits

Author SHA1 Message Date
95ed606796 Update README (manually) 2025-08-03 12:39:26 +02:00
52eac7530a Fix calculator button font (manually) 2025-08-03 12:28:46 +02:00
2 changed files with 24 additions and 13 deletions

View File

@@ -60,7 +60,7 @@ Die Webanwendung erreicht hervorragende Performance-Werte in allen Kategorien (P
- Datum plus/minus X Wochen/Monate - Datum plus/minus X Wochen/Monate
- Kalenderwoche zu Datum - Kalenderwoche zu Datum
- Start-/Enddatum einer Kalenderwoche eines Jahres - Start-/Enddatum einer Kalenderwoche eines Jahres
- **Integrierter Taschenrechner** mit History und Sprachausgabe - Integrierter Taschenrechner mit History und Sprachausgabe
- Mehrsprachige Unterstützung (Deutsch/Englisch) mit automatischer Browser-Spracherkennung - Mehrsprachige Unterstützung (Deutsch/Englisch) mit automatischer Browser-Spracherkennung
- Sprachausgabe für alle Ergebnisse (barrierefrei) - Sprachausgabe für alle Ergebnisse (barrierefrei)
- Statistik-Dashboard mit Passwortschutz unter `/stats` - Statistik-Dashboard mit Passwortschutz unter `/stats`
@@ -70,6 +70,7 @@ Die Webanwendung erreicht hervorragende Performance-Werte in allen Kategorien (P
Die Werktagsberechnung kann optional bundeslandspezifische Feiertage berücksichtigen. Dazu wird die kostenlose API von [feiertage-api.de](https://feiertage-api.de) verwendet. Die Werktagsberechnung kann optional bundeslandspezifische Feiertage berücksichtigen. Dazu wird die kostenlose API von [feiertage-api.de](https://feiertage-api.de) verwendet.
**Verfügbare Bundesländer:** **Verfügbare Bundesländer:**
- Baden-Württemberg (BW) - Baden-Württemberg (BW)
- Bayern (BY) - Bayern (BY)
- Berlin (BE) - Berlin (BE)
@@ -94,18 +95,21 @@ Die Feiertage werden automatisch für den gewählten Zeitraum abgerufen und bei
Die Anwendung unterstützt Deutsch und Englisch mit folgenden Features: Die Anwendung unterstützt Deutsch und Englisch mit folgenden Features:
### Automatische Spracherkennung: ### Automatische Spracherkennung:
- *Browser-Sprache*: Automatische Erkennung der Browser-Einstellung - *Browser-Sprache*: Automatische Erkennung der Browser-Einstellung
- *URL-Parameter*: Sprachauswahl über `?lang=de` oder `?lang=en` - *URL-Parameter*: Sprachauswahl über `?lang=de` oder `?lang=en`
- *localStorage*: Persistente Sprachauswahl im Browser - *localStorage*: Persistente Sprachauswahl im Browser
- *Fallback*: Deutsch als Standardsprache - *Fallback*: Deutsch als Standardsprache
### *Datenschutzfreundliche Implementierung:* ### *Datenschutzfreundliche Implementierung:*
- *Keine Cookies*: Sprachauswahl ohne Cookies - *Keine Cookies*: Sprachauswahl ohne Cookies
- *URL-Parameter*: Transparente Sprachauswahl in der URL - *URL-Parameter*: Transparente Sprachauswahl in der URL
- *localStorage*: Lokale Speicherung im Browser - *localStorage*: Lokale Speicherung im Browser
- *Teilbare URLs*: URLs mit Sprachauswahl können geteilt werden - *Teilbare URLs*: URLs mit Sprachauswahl können geteilt werden
### *Barrierefreiheit:* ### *Barrierefreiheit:*
- *Screenreader*: Vollständige Unterstützung - *Screenreader*: Vollständige Unterstützung
- *Tastatur-Navigation*: Vollständig bedienbar - *Tastatur-Navigation*: Vollständig bedienbar
- *ARIA-Attribute*: Korrekte Beschriftungen - *ARIA-Attribute*: Korrekte Beschriftungen
@@ -113,6 +117,7 @@ Die Anwendung unterstützt Deutsch und Englisch mit folgenden Features:
- *Taschenrechner*: Vollständig barrierefrei mit Tastatur-Bedienung und Sprachausgabe - *Taschenrechner*: Vollständig barrierefrei mit Tastatur-Bedienung und Sprachausgabe
### *Technische Details:* ### *Technische Details:*
- *Flask-Babel*: Professionelle i18n-Implementierung - *Flask-Babel*: Professionelle i18n-Implementierung
- *Gettext*: Standard für Übersetzungen - *Gettext*: Standard für Übersetzungen
- *Responsive Design*: Angepasst für alle Geräte - *Responsive Design*: Angepasst für alle Geräte
@@ -202,8 +207,11 @@ docker-compose up --build
## REST API ## REST API
Alle Datumsfunktionen stehen auch als REST-API zur Verfügung. Die API akzeptiert und liefert JSON. Alle Datumsfunktionen stehen auch als REST-API zur Verfügung. Die API akzeptiert und liefert JSON.
**Basis-URL:** `http://localhost:5000/api/` **Basis-URL:** `http://localhost:5000/api/`
**Swagger Dokumentation:** [https://date.elpatron.me/api-docs](https://date.elpatron.me/api-docs)
**Hinweis:** Die Nutzung der REST API wird im Statistik-Dashboard ausgewertet und als Diagramm angezeigt. **Hinweis:** Die Nutzung der REST API wird im Statistik-Dashboard ausgewertet und als Diagramm angezeigt.
### Endpunkte und Beispiele ### Endpunkte und Beispiele
@@ -411,9 +419,7 @@ Die App bietet einen Monitoring-Endpunkt unter `/monitor`, der Statusinformation
Beispiel-Aufruf: Beispiel-Aufruf:
``` `GET https://date.elpatron.me/monitor`
GET https://date.elpatron.me/monitor
```
Antwort: Antwort:
@@ -477,23 +483,23 @@ Damit ist die App für Menschen mit unterschiedlichen Einschränkungen (z.B. Seh
### Code Statistik ### Code Statistik
cloc|github.com/AlDanial/cloc v 2.06 T=0.22 s (114.3 files/s, 32032.3 lines/s) cloc|github.com/AlDanial/cloc v 2.06 T=0.23 s (109.5 files/s, 30735.0 lines/s)
--- | --- --- | ---
Language|files|blank|comment|code Language|files|blank|comment|code
:-------|-------:|-------:|-------:|-------: :-------|-------:|-------:|-------:|-------:
HTML|8|159|8|2800 HTML|8|159|8|2805
Python|2|66|74|739 Python|2|66|74|739
JavaScript|2|95|88|580 JavaScript|2|95|88|580
PO File|2|260|266|544 PO File|2|260|266|544
Markdown|3|177|0|497 Markdown|3|184|0|498
JSON|3|0|0|243 JSON|3|0|0|243
CSS|1|186|3|188 CSS|1|186|3|188
SVG|2|0|0|14 SVG|2|0|0|14
Dockerfile|1|5|6|8 Dockerfile|1|5|6|8
DOS Batch|1|0|0|1 DOS Batch|1|0|0|1
--------|--------|--------|--------|-------- --------|--------|--------|--------|--------
SUM:|25|948|445|5614 SUM:|25|955|445|5620
## Lizenz ## Lizenz

View File

@@ -107,9 +107,7 @@ body {
background: var(--primary); background: var(--primary);
color: white; color: white;
border: none; border: none;
padding: 0.8em 1.5em;
border-radius: 8px; border-radius: 8px;
font-size: 1em;
cursor: pointer; cursor: pointer;
transition: background-color 0.2s; transition: background-color 0.2s;
font-weight: 500; font-weight: 500;
@@ -117,6 +115,9 @@ body {
max-width: 480px; max-width: 480px;
min-height: 44px; min-height: 44px;
min-width: 44px; min-width: 44px;
padding: 1em 1.2em;
font-size: 1.1em;
font-weight: bold;
} }
.calculator-btn:hover { .calculator-btn:hover {
@@ -205,14 +206,15 @@ body {
.calc-btn { .calc-btn {
padding: 0.7em; padding: 0.7em;
font-size: 1em; font-size: 1.1em !important;
font-family: 'Segoe UI', Arial, sans-serif !important;
border: 2px solid #374151; border: 2px solid #374151;
background: #f9fafb; background: #f9fafb;
color: #111827; color: #111827;
border-radius: 8px; border-radius: 8px;
cursor: pointer; cursor: pointer;
transition: all 0.2s; transition: all 0.2s;
font-weight: 600; font-weight: 600 !important;
min-width: 44px; min-width: 44px;
min-height: 44px; min-height: 44px;
display: flex; display: flex;
@@ -714,7 +716,10 @@ button:focus, .accordion-header:focus {
.calc-btn { .calc-btn {
padding: 0.6em; padding: 0.6em;
font-size: 1em; font-size: 1.1em;
padding: 1em 1.2em;
font-weight: 600;
/* font-family: 'Segoe UI', Arial, sans-serif; */
min-width: 44px; min-width: 44px;
min-height: 44px; min-height: 44px;
} }