Skip to content

Conversation

@maltehuebner
Copy link
Contributor

Summary

  • Glasmorphism Navbar mit backdrop-filter: blur(), responsive Offcanvas-Navigation auf Mobile, sticky fixed-top
  • Bottom Navigation Bar auf Mobile (Start, Suche, Standort, Feinstaub) mit safe-area-inset für iPhone
  • Borderless Cards mit Schatten, Hover-Effekt (translateY(-2px)), moderne Rundungen
  • Inter Font selbst gehostet via @fontsource/inter (DSGVO-konform)
  • Bootstrap-Variablen-Overrides: Primary-Farbe #2563eb, heller Body-Hintergrund, Tailwind-inspirierte Schatten, größere Border-Radien
  • Dunkler 3-Spalten-Footer (Datenquellen, Rechtliches, Entwicklung) mit dynamischem Copyright-Jahr
  • App-Shell Layout mit min-height: 100dvh Flex-Layout, Fade-In-Animation, Content-Spacer für Fixed-Navbar
  • GitHub-Ribbon entfernt (Link bleibt im Footer + Api-Menü)
  • Touch-Targets mindestens 44px auf Mobile, Dropdown-Slide-In-Animation, :focus-visible Accessibility-Ring

Nicht verändert

  • Alle data-* Attribute, Element-IDs, JS-Hooks
  • .typeahead, .locate-button, .datatable, .box, .station Klassen
  • Keine JavaScript-Dateien oder Controller

Test plan

  • yarn install und yarn build laufen fehlerfrei durch
  • Navbar: Sticky mit Blur-Effekt, Offcanvas öffnet/schließt auf Mobile
  • Cards: Schatten sichtbar, Hover-Effekt funktioniert
  • Bottom-Nav: Sichtbar auf Mobile, versteckt auf Desktop
  • Footer: Dunkler 3-Spalten-Footer korrekt dargestellt
  • Geolocation-Buttons (.locate-button) funktionieren in Navbar, Bottom-Nav und Mobile-Brand-Bereich
  • Typeahead-Suche funktioniert weiterhin
  • Leaflet-Maps rendern korrekt
  • Responsive: Layout auf verschiedenen Bildschirmgrößen prüfen

🤖 Generated with Claude Code

maltehuebner and others added 7 commits January 26, 2026 13:13
Add @fontsource/inter for GDPR-compliant self-hosted Inter font.
Add @babel/core, @babel/preset-env, webpack, and webpack-cli as
dev dependencies to resolve missing peer dependencies.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Override Bootstrap defaults before import: primary color (#2563eb),
light body background, Inter font family, larger border-radius,
Tailwind-inspired shadows, borderless cards, rounded buttons with
heavier font-weight, and borderless dropdowns with shadow.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Introduce _app-shell.scss with all custom styles: glassmorphism
navbar, offcanvas touch targets, card hover effects, mobile bottom
navigation bar, dark footer, fade-in animations, dropdown slide-in,
focus-visible accessibility rings, and responsive adjustments.

Update app.scss to import Inter font weights, variables (before
Bootstrap), and app-shell (after all other imports).

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace collapse-based mobile nav with offcanvas-lg for a full-screen
mobile navigation experience. Add fixed-top positioning with
luft-navbar glassmorphism class, mobile locate button next to brand,
offcanvas header with close button, and luft-search class for
responsive search width. Change search button to btn-outline-primary.
All dropdown menus, feature flags, IDs, and data attributes preserved.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace single-paragraph footer with structured 3-column layout:
Datenquellen, Rechtliches, and Entwicklung. Add dynamic copyright
year, dark background via luft-footer class, and organized footer
link lists. The cityListAction render call is preserved.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Remove the GitHub ribbon image from layout. Add luft-content-spacer
for fixed navbar offset, wrap content block in <main class="luft-main">
for flex layout with fade-in animation. Add mobile bottom navigation
bar (d-lg-none) with four items: Start, Suche, Standort, Feinstaub.
The Standort button retains the locate-button class for geolocation.js.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@maltehuebner maltehuebner self-assigned this Jan 29, 2026
@maltehuebner maltehuebner added enhancement dependencies Pull requests that update a dependency file AI-generated Twig labels Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI-generated dependencies Pull requests that update a dependency file enhancement Twig

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant