Commit Graph
8 Commits
Author SHA1 Message Date
MohFarawati f7355b5356 feat(portfolio): image-led project gallery with branded placeholders
Redesign the portfolio list/category grid into a premium, image-first gallery
(Phase 3), applying the warm-premium tokens.

- Add components/site/portfolio-cover.tsx: renders the stored cover image
  (next/image, object-cover, hover zoom) or a restrained branded placeholder
  (monogram + category) when none is set. Placeholders are temporary — the
  owner will swap in real artwork.
- Rewrite portfolio-project-grid: responsive 1/2/3-col gallery, featured
  projects span two columns with a larger cover, cards use the type scale
  (text-h2/h3/caption), eyebrow category labels, line-clamped summaries, soft
  elevation and hover lift. Directly fixes the "portfolio shows no images"
  gap on the list and category pages.

Verified: eslint clean, no new type errors, tailwind generates the utilities.
2026-07-14 22:13:26 +02:00
MohFarawati b8a02f9e90 feat(coming-soon): premium themed redesign with launch countdown
CI / quality (push) Waiting to run
Full refactor of the maintenance/coming-soon page for all locales (de/en/ar,
RTL-aware) with a refined, theme-aware (light + dark) premium composition:
glass panel, live status indicator, hero title, description, launch countdown
and CTAs. Reuses the existing hero/motion system; no new dependencies.

- Add components/site/launch-countdown.tsx: hydration-safe client countdown
  (days/hours/minutes/seconds), localized labels, Arabic-aware typography,
  "launched" fallback when the target passes.
- Rewrite app/[locale]/coming-soon/page.tsx around the countdown and a single
  easy-to-edit LAUNCH_DATE_ISO constant (default ~45 days out).
- Add comingSoon i18n keys (status, countdownLabel, unit labels, launched)
  to en/de/ar.
2026-07-14 21:20:29 +02:00
MohFarawati d48497b992 refactor: drop toast + over-engineered extras, add inline admin feedback
CI / quality (push) Waiting to run
Phase 1 cleanup of the personal-site revamp. Backend/architecture untouched;
changes are limited to removing unused complexity and restoring feedback.

Removals
- Toast system: delete react-hot-toast, Toaster, QueryToastBridge, lib/toast,
  the toggle/easter-egg calls, related i18n keys and the dependency.
- Contact protection: remove Turnstile + per-IP rate limiting
  (lib/contact-guard, lib/contact-protection, admin screen, form widget,
  app-config wiring, nav entry, test).
- Speculative specs: delete orders, products, downloads, project-inquiry.

Inline feedback (replaces toast, no new deps)
- Add lib/admin-feedback (withFlash/readFlash) and components/admin/admin-flash,
  rendered centrally by AdminDashboardShell.
- Emit success/error messages for media, site-settings, portfolio, smtp,
  marquee and maintenance actions; pages read them via searchParams.
- Contact form shows validation/delivery errors inline; success still
  redirects to /success.

Docs
- Fix stale paths in frontend-system-* (components/root -> components/admin,
  lib/root-navigation -> lib/admin-navigation, drop phantom src/) and remove
  contact-protection references from docs and CLAUDE.md.
- Add docs/PHASE0_DIAGNOSIS.md (diagnosis report).

Note: proxy.ts self-fetch kept intentionally; it also drives maintenance mode.
2026-07-14 21:03:51 +02:00
MOHandClaude Sonnet 4.6 868eb80374 Simplify hero backgrounds and add entrance animations
- Replace animated blob/wave/noise backdrop with clean static gradient
  (radial ellipse highlights + linear fade) in hero-motion-backdrop
- Remove all framer-motion from background layer; delete unused CSS
  classes: hero-blob, hero-sheet-glow, hero-sheet-wave, hero-sheet-noise,
  hero-title-shift keyframe, and responsive blob media queries
- Add framer-motion stagger entrance to HeroContentMotion, HeroMotionItem,
  and HeroTitle (slide-up + fade on mount)
- Refactor coming-soon page to use HeroContentMotion/HeroMotionItem
  instead of MotionFade (whileInView unreliable above the fold)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 22:48:51 +01:00
MOH c18128c965 Fix runtime default locale resolution
CI / quality (push) Waiting to run
2026-03-15 06:02:27 +01:00
MOH 64976d6e12 Add sitemap and portfolio category SEO routes
CI / quality (push) Waiting to run
2026-03-11 23:13:36 +01:00
MOH 7956b073e9 Refactor portfolio admin and views 2026-03-11 17:46:35 +01:00
MOH 5ca4819bcb Add SMTP admin settings and contact form delivery 2026-03-08 06:27:09 +01:00