Commit Graph

13 Commits

Author SHA1 Message Date
MBO-Tech-IT 10210e5c80 feat: add Google Search Console verification
- Create public/google73af89007ffca7c2.html for HTML file verification
- Add verification.google meta tag in layout.tsx as redundant fallback

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 14:27:51 +02:00
MBO-Tech-IT 9cf15d7deb feat: add SEO improvements — robots.txt, sitemap, Open Graph, JSON-LD schema
- Add app/robots.ts: block admin/kunden/auth/api, reference sitemap
- Add app/sitemap.ts: list public pages (/, /pakete)
- layout.tsx: add metadataBase, Open Graph, Twitter Card, LocalBusiness JSON-LD, improve title/description with location (Crailsheim, Region Schwäbisch Hall)
- pakete/page.tsx: add Open Graph and canonical URL
- datenschutz/page.tsx: fix title/description encoding (Umlaute)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 14:20:21 +02:00
MBO-Tech-IT 146ebd7d91 feat: reorder services, replace package prices with "Auf Anfrage"
- Services: WLAN & Netzwerk und Individuelle Webanwendungen direkt nach
  Hardware & Software einsortiert
- Pakete: Installations-Preise durch "Auf Anfrage" ersetzt,
  Metadata-Description aktualisiert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 09:26:44 +02:00
MBO-Tech-IT 2a91084737 feat: send confirmation email to contact form submitter
Schickt nach eingehender Anfrage automatisch eine Bestätigungsmail an
den Anfragenden mit Betreff, Dankestext und direkter Telefonnummer.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 09:12:48 +02:00
MBO-Tech-IT 9e56f1b5a3 feat: integrate modules 01–03, 06–07 — email, admin auth, analytics, kunden-portal, statistik
- Modul 01 (Email): mailer.ts mit Nodemailer + Supabase-Queue, SMTP-Test-Route
- Modul 02 (Admin-Auth): JWT-Sessions, Rate-Limiting, Token-Blacklist, Audit-Logs, Login-Route
- Modul 03 (Analytics): PageTracker, page_views/phone_clicks Tracking, Admin-Analytics-Seite
- Modul 06 (Kunden-Portal): Supabase Auth Login/Registrierung, Kundendashboard, Middleware
- Modul 07 (KPI-Dashboard): Admin-Statistik mit Anfragen-Übersicht und Monats-Diagramm
- contact/route.ts: speichert Anfragen jetzt in Supabase
- Supabase-Types für alle neuen Tabellen ergänzt
- app/admin/page.tsx: Redirect zu /admin/analytics
- AnalyticsTabs: Design-Inkonsistenz behoben (Light-Mode-Karten auf Dark umgestellt)
- layout.tsx: Umlauts-Fehler in Metadata-Description behoben
- lib/audit-log.ts: TypeScript null→undefined Mapping für reason-Feld
- modules/: Wiederverwendbare Modul-Templates mit Migrations und Integrations-Prompts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 19:41:05 +02:00
MBO-Tech-IT 9339986d31 feat: apply light mode classes to pakete page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 19:52:27 +02:00
MBO-Tech-IT 99d0a09953 fix: move dark bg-grid out of utilities layer, add scrollbar hover dark override
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 16:39:22 +02:00
MBO-Tech-IT c0c5caa4ff feat: update globals.css and page.tsx for light mode
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 16:27:59 +02:00
MBO-Tech-IT a0d6caa79b feat: add next-themes setup, Providers and ThemeToggle components
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 16:22:30 +02:00
MBO-Tech-IT 9c7f78464b feat: add contact form submission with send confirmation
API route /api/contact calls sendeKontaktEmail and returns ok/error.
On total failure (no SMTP, no queue) logs full contact data to server log.
Contact.tsx is now a client component: shows spinner while sending,
success state ("Anfrage gesendet") on ok, error banner with message on failure.
queueEmail now returns boolean; sendWithFallback returns { sent, queued }.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 15:23:30 +02:00
MBO-Tech-IT 1369e831ad feat: integrate email-system module (nodemailer + queue)
Adds lib/mailer.ts (sendeKontaktEmail, MBO-Tech-IT branding),
lib/email-queue.ts (Supabase-fallback, graceful no-op when not configured),
lib/supabase.ts (stub for later integration), admin API routes for
SMTP-test and queue management, and instrumentation.ts for the queue worker.
Excludes modules/ from TypeScript compilation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 14:56:36 +02:00
MBO-Tech-IT ed5136b9a1 feat: add StatsBar with animated counters, update page layout 2026-04-02 01:26:35 +02:00
MBO-Tech-IT 8267ae3e8c chore: initial commit before website expansion 2026-04-02 01:11:27 +02:00