Commit Graph

  • 6b79dfb570 fix(landing): correct German copy and restore feature-card hover animation admin 2026-08-12 17:27:59 +02:00
  • 7395d83194 feat(admin): word/link/hashtag blacklist module (Gitea #10 Phase 3, part 3/4) admin 2026-08-12 16:06:37 +02:00
  • eb26cb5fbe feat(admin): shadowban owners (Gitea #10 Phase 3, part 2/4) admin 2026-08-12 15:49:45 +02:00
  • a29c57e37a feat(admin): hide posts without deleting (Gitea #10 Phase 3, part 1/4) admin 2026-08-12 14:23:00 +02:00
  • 9f9db9e742 feat(landing): interactive redesign with scroll reveals and parallax admin 2026-08-12 14:04:57 +02:00
  • 13513583bc feat(security): ship CSP in Report-Only mode via Clerk's middleware option admin 2026-08-12 13:42:08 +02:00
  • d086fc67f0 fix(deps): upgrade Next.js to 16.3.0, closing remaining audit findings admin 2026-08-12 13:24:29 +02:00
  • 8d20b489d3 fix(deps): apply non-breaking npm audit fixes admin 2026-08-12 13:15:08 +02:00
  • 6fd5f2dff8 feat(pet): circular avatar cropping with zoom before upload admin 2026-08-12 12:52:32 +02:00
  • 5fbf39593d feat(ui): initials-color avatars and collapsible desktop sidebar admin 2026-08-12 12:52:21 +02:00
  • e39b3f1f6e feat(feed): spring/fill/burst animation on paw reactions admin 2026-08-12 12:52:07 +02:00
  • 4d34b4cd3d feat(verification): pin evidence directly above each checklist item admin 2026-08-12 10:24:06 +02:00
  • 3a5b72b0f7 fix(verification): profile context in review, i18n on edit page, badge in pet switcher admin 2026-08-12 10:19:16 +02:00
  • a4c4568065 feat(verification): self-service request flow with mandatory review checklist admin 2026-08-12 10:03:59 +02:00
  • bc2dfa9a2d fix(admin): surface errors from the pet-verify and warning mutations admin 2026-08-12 09:46:26 +02:00
  • 54fb0d55bc feat(admin): warning system, pet verification badges, report severity, admin GDPR erasure admin 2026-08-12 09:32:33 +02:00
  • 3ea668a137 fix(admin): fix audit log rows overflowing off-screen admin 2026-08-12 09:09:34 +02:00
  • e099763211 feat(admin): add filterable audit log page, gated to Moderator+ admin 2026-08-12 09:02:21 +02:00
  • c94e60ab82 feat(admin): enforce 3-tier permission matrix, stamp role+IP on every log entry admin 2026-08-12 08:53:32 +02:00
  • 2d656bd779 feat(admin): add SUPPORT role, user search/filter, and moderation audit gaps admin 2026-08-12 08:38:25 +02:00
  • 48ce0396ca feat(admin): search posts by pet name in addition to caption admin 2026-08-12 08:09:25 +02:00
  • dd260bde9c fix(admin): persist posts grid size choice across reloads admin 2026-08-12 08:06:57 +02:00
  • d09b22f4ce feat(admin): make the posts moderation grid density selectable (3/5/8 cols) admin 2026-08-12 08:00:48 +02:00
  • af018a234e fix(admin): show milestone/repost context instead of blank thumbnail admin 2026-08-12 07:54:15 +02:00
  • 4feafd6ac4 docs: add session handoff (GDPR token routing, Posts grid, ad targeting, OG image + landing page) admin 2026-08-11 20:27:37 +02:00
  • 59981f9a43 fix(landing): swap in the user's new app-preview screenshot admin 2026-08-11 20:18:03 +02:00
  • f899ed5f7c feat(landing): translate landing page copy (Landing i18n namespace) admin 2026-08-11 20:09:13 +02:00
  • 0da56a2aef fix(landing): replace flag emoji with SVG chips, tighten app-preview crop admin 2026-08-11 20:03:18 +02:00
  • 1eb27dfeb3 feat(landing): add header, app preview, feature overview, and footer admin 2026-08-11 19:58:59 +02:00
  • 07a1cb7768 feat(landing): add a public landing page at / (Gitea #4 follow-up) admin 2026-08-11 19:25:52 +02:00
  • 68f0c8be5e fix(seo): swap in the corrected OG image (2 fixes from designer review) admin 2026-08-11 19:12:55 +02:00
  • 2e5bacb966 feat(seo): swap the generated OG image for the designer-refined one (Gitea #4) admin 2026-08-11 19:12:11 +02:00
  • 747d9e1811 fix(proxy): allow unauthenticated access to /opengraph-image admin 2026-08-11 15:29:28 +02:00
  • e47eed3a9d feat(seo): add a generated 1200x630 OG image (Gitea #4) admin 2026-08-11 15:27:43 +02:00
  • efdf407642 feat(admin): add species/breed ad targeting (Gitea #9) admin 2026-08-11 15:09:56 +02:00
  • f638239711 fix(admin): clip portrait thumbnails to the square grid cell (Gitea #7) admin 2026-08-11 14:52:20 +02:00
  • ed6842bc39 feat(admin): redesign Posts panel as a 3-column media grid (Gitea #7) admin 2026-08-11 14:47:06 +02:00
  • 83513828c6 fix(proxy): allow unauthenticated access to /api/gdpr-export/[token] admin 2026-08-11 14:27:10 +02:00
  • 5e2a11e44f feat(admin): route GDPR export downloads through pawfeed.org instead of Supabase (Gitea #6 follow-up) admin 2026-08-11 14:21:39 +02:00
  • f12dec05bd feat(admin): add GDPR Art. 15 data-export feature (Gitea #6, Plan B) admin 2026-08-11 11:53:27 +02:00
  • 86ac5f4fee feat(mail): add SMTP mail-sending module (Gitea #6, GDPR export prep) admin 2026-08-11 11:42:05 +02:00
  • 328e54c68e feat(admin): show Clerk profile data and add a Team-messaging channel to the users panel admin 2026-08-11 11:06:42 +02:00
  • cc82f8102a fix(onboarding): move LanguageSwitcher out of absolute positioning to avoid mobile overlap admin 2026-08-11 10:32:12 +02:00
  • 4d9727f0d1 fix(i18n): fall back to Accept-Language and add a language switcher to onboarding admin 2026-08-11 10:27:58 +02:00
  • b6610ca7a7 feat(media): add Blurhash placeholders for images across feed, stories, and admin views admin 2026-08-11 10:03:08 +02:00
  • 5473978763 docs(legal): remove alpha-phase content from Nutzungsbedingungen, harden against Abmahnung admin 2026-08-11 09:33:45 +02:00
  • 17f560eb46 feat(legal): add mandatory upload-rights and data-processing consent to onboarding admin 2026-08-11 09:33:39 +02:00
  • 46b403f30f feat(observability): add global-error.tsx for Sentry App Router coverage admin 2026-08-10 13:33:38 +02:00
  • f559b3d68e feat(observability): add Sentry error monitoring (@sentry/nextjs) admin 2026-08-10 12:57:42 +02:00
  • f48d98cf3a fix(security): lock Mux upload CORS origin to the real domain in prod admin 2026-08-10 12:50:40 +02:00
  • 2bf7832341 feat(seo): add metadataBase and OpenGraph/Twitter metadata admin 2026-08-10 12:47:17 +02:00
  • e6c1bfd28e docs(security): document why CSP is drafted but not yet enforced admin 2026-08-10 08:08:19 +02:00
  • 26706ea06a debug: temporarily disable CSP to isolate login-page regression admin 2026-08-10 08:04:01 +02:00
  • 5c75d716a8 fix(security): allow wss:// to Clerk in CSP connect-src admin 2026-08-10 08:02:11 +02:00
  • f43541a4cc feat(security): add Redis-backed rate limiting and CSP/security headers admin 2026-08-10 07:57:56 +02:00
  • ec9573f33a feat(pet-profile): make the profile avatar clickable to zoom admin 2026-07-23 20:32:00 +02:00
  • b4ef5bc195 feat(ads): track and display per-ad view counts for advertisers admin 2026-07-23 20:22:42 +02:00
  • 0e02d3da71 feat(admin): add posts-over-time and owner-growth charts to the dashboard admin 2026-07-23 19:59:36 +02:00
  • bb1515cb93 feat(onboarding): add community-guidelines acknowledgment step before pet creation admin 2026-07-23 19:37:40 +02:00
  • ff607a604d feat(feed): cold-start discovery feed for new pets with no follows admin 2026-07-23 18:21:03 +02:00
  • 18555341e8 fix(explore): let breed-name Badge grow to fit wrapped two-line labels admin 2026-07-23 15:27:39 +02:00
  • 25fa2a3bec feat(i18n): resolve Species/Breed display names via SpeciesTranslation/BreedTranslation admin 2026-07-23 15:19:55 +02:00
  • b7719397e6 feat(i18n): translate pet-profile area (Edit Profile, Health, stats, dropdowns, ReportSheet, BlockDialog) admin 2026-07-23 15:02:37 +02:00
  • 4ba6bbc0c3 feat(i18n): translate remaining hardcoded strings (audit finding #14) admin 2026-07-22 19:55:01 +02:00
  • 4fcde7eb2a fix: remaining MEDIUM/LOW findings from 2026-07-21 audit rerun admin 2026-07-22 19:34:18 +02:00
  • bf49024ace fix: 6 HIGH-severity findings from 2026-07-21 audit rerun admin 2026-07-22 19:24:21 +02:00
  • 03abe472da fix(security): 4 CRITICAL authorization bugs from 2026-07-21 audit rerun admin 2026-07-22 18:21:39 +02:00
  • b3fa42b14a docs(env): document Mux vars in .env.example, fix stale R2 references in AvatarUpload admin 2026-07-21 21:24:05 +02:00
  • c744bee9dc fix(cron): exempt /api/cron/* from Clerk auth.protect() admin 2026-07-21 21:09:22 +02:00
  • 3db0692910 refactor(cluster-d): merge getAvatarUrl/getMediaUrl, extract shared upload-progress XHR helper admin 2026-07-21 20:56:15 +02:00
  • 1461470246 refactor(cluster-c): extract shared notify() helper, align getActiveBan admin check admin 2026-07-21 20:50:33 +02:00
  • 2648869f53 fix(tests): resolve 6 pre-existing test failures in pet-profile and stories suites admin 2026-07-21 20:46:22 +02:00
  • 215fba80d4 fix(cluster-h): wrap admin delete+moderation-log writes in a transaction adminandClaude Sonnet 5 2026-07-16 20:39:20 +02:00
  • 45af6b2a93 perf(cluster-g): fix broken search debounce, memoize feed rendering, lazy-load MuxPlayer adminandClaude Sonnet 5 2026-07-16 20:16:20 +02:00
  • 70115de483 feat(legal): admin-published legal updates + owner acknowledgement banner adminandClaude Sonnet 5 2026-07-16 20:08:49 +02:00
  • d7234f55bd feat(legal): expand Nutzungsbedingungen prohibited-content section adminandClaude Sonnet 5 2026-07-16 19:51:18 +02:00
  • f14af09b58 feat: replace calendar date inputs with a wheel-style date picker adminandClaude Sonnet 5 2026-07-16 19:44:50 +02:00
  • f14be58c06 feat: engagement-counter denormalization, pagination fixes, dead-code cleanup adminandClaude Sonnet 5 2026-07-16 19:22:23 +02:00
  • e91705063f docs: Kommentarbereich-Fix als erledigt markiert admin 2026-06-27 10:26:01 +02:00
  • c583970404 fix: Kommentarbereich dynamisch — schrumpft bei wenig Kommentaren, scrollt ab 30dvh admin 2026-06-27 10:18:47 +02:00
  • 4556ef4e97 fix: mention-dropdown Umrandung passt sich Zweizeiligkeit an; neuer Bug Chat-Eingabe-Fix admin 2026-06-27 10:12:02 +02:00
  • 31602b08eb feat: Sprint 2 — i18n Search+Messages, Mention-Dropdown, Story-Tray, Explore Grid, Legal-Links admin 2026-06-27 08:07:04 +02:00
  • 68503e8915 fix(mobile+comments): #4 correct query invalidation key, #6 add viewport-fit=cover admin 2026-06-27 07:47:41 +02:00
  • 8deede7235 fix: add parens around nullish coalescing in PostDetailDialog (build error) admin 2026-06-27 07:36:42 +02:00
  • 58e2840fae fix(mobile+comments): Sprint 1 — nav visibility, messages button, optimistic comments admin 2026-06-27 07:27:47 +02:00
  • dc4c196721 feat: i18n translations, PostDetailDialog 2-col layout, feeding info health module admin 2026-06-23 14:39:21 +02:00
  • 2568c32cf4 feat: notification polling 30s->10s, video thumbnails, @-mentions admin 2026-06-23 06:17:58 +02:00
  • 6542c06e02 fix: auto-set first pet on login, resize detail view, fix Clerk types adminandClaude Sonnet 4.6 2026-06-23 05:58:57 +02:00
  • f7183f93c7 fix(clerk): remove colorText from appearance variables (not in type) adminandClaude Sonnet 4.6 2026-06-22 20:48:52 +02:00
  • 8429e88891 fix(i18n): use useTranslations in EmptyFeed (Client Component fix) adminandClaude Sonnet 4.6 2026-06-22 20:42:15 +02:00
  • 376ea74b36 feat(i18n): translate FeedList, PostCard, CommentSheet, FollowButton, MessageThread adminandClaude Sonnet 4.6 2026-06-22 14:18:18 +02:00
  • 4b17537a9a feat(i18n): add EN/DE language support with next-intl admin 2026-06-22 14:01:16 +02:00
  • 8645421c1e feat(legal): apply LegalLayout to Nutzungsbedingungen page admin 2026-06-22 05:48:08 +02:00
  • 195df0154d feat(legal): redesign Impressum and Datenschutz with PawFeed branding admin 2026-06-21 21:46:30 +02:00
  • ac19d0fd2c fix(explore): link avatar and name to pet profile page admin 2026-06-21 21:11:31 +02:00
  • e5264e3ca3 feat(legal): add Nutzungsbedingungen page and link in sidebar footer admin 2026-06-21 20:58:10 +02:00
  • b38c9b046e fix(invite): add secure flag to pf_invite cookie for HTTPS production admin 2026-06-21 20:47:19 +02:00
  • 00908545c4 docs(env): clarify Supabase vars — separate DB connection from Storage URL admin 2026-06-21 18:58:00 +02:00
  • 7b0baf3be8 fix(docker): lazy-init Supabase+Redis, self-host Redis, simplify build args admin 2026-06-21 18:51:41 +02:00
  • 24c63010b0 fix(docker): use docker/.env auto-discovery instead of --env-file flag admin 2026-06-21 18:40:26 +02:00