-
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
-
88ca3ab487
fix(docker): pass all build-time env vars and add start.sh wrapper
admin
2026-06-21 18:34:45 +02:00
-
fad016973a
fix(sidebar): pin to viewport height so footer stays visible
admin
2026-06-21 18:15:26 +02:00
-
5800e06cd9
feat: ad engagement, invite gate, sidebar footer, docker setup
admin
2026-06-21 18:12:13 +02:00
-
a9793a5ad2
fix(ads): AdCard matches PostCard layout — same header, image, footer structure
admin
2026-06-21 16:23:24 +02:00
-
6f671cfc63
fix(ads): render image in AdCard feed, add image upload to ad dialog
admin
2026-06-21 16:21:38 +02:00
-
0f34a2c9c6
feat(admin): show post preview in reports — images, caption, pet, counts
admin
2026-06-21 16:10:01 +02:00
-
e2d14654c8
feat(admin): reports page with dismiss and delete-post actions
admin
2026-06-21 16:00:33 +02:00
-
ee658b4788
fix(middleware): migrate to proxy.ts for Next.js 16, enable Supabase RLS on all tables
admin
2026-06-21 15:56:32 +02:00
-
b5f02fe7a4
feat(admin): add hidden admin panel, ban system, ads, and legal pages
admin
2026-06-21 15:21:07 +02:00
-
e407064866
feat(explore): add trending tab with hot posts and hashtags
admin
2026-06-21 14:41:20 +02:00
-
38952b1563
docs: update README with v2 features, full schema overview, and next-session roadmap

adminandClaude Sonnet 4.6
2026-06-15 18:03:01 +02:00
-
23c570b2af
fix(health): enforce privacy — remove emergency vet from public health card

adminandClaude Sonnet 4.6
2026-06-15 17:52:58 +02:00
-
d17d71e55a
feat(health): emergency vet with OSM search and map

adminandClaude Sonnet 4.6
2026-06-15 17:39:46 +02:00
-
c9f385a9fa
fix(profile): replace bottom sheet with centered dialog for post detail

adminandClaude Sonnet 4.6
2026-06-15 17:23:21 +02:00
-
b0d6a4d7d1
fix(cron): birthday notifications require 1+ year like adoptedAt

adminandClaude Sonnet 4.6
2026-06-15 17:14:47 +02:00
-
f6aa825ad1
feat(v2): algorithmic feed toggle, anniversary notifications, welcome card

adminandClaude Sonnet 4.6
2026-06-15 17:10:50 +02:00
-
80559c3b3f
feat(health): health card share link, PDF export, weight chart in card

adminandClaude Sonnet 4.6
2026-06-15 06:06:28 +02:00
-
b9f786c87f
feat(health): add SVG weight trend chart

adminandClaude Sonnet 4.6
2026-06-15 05:49:29 +02:00
-
f1c798a4b0
feat(07): Phase 7 — Health & Vet Tracking

adminandClaude Sonnet 4.6
2026-06-15 05:07:56 +02:00
-
5d396a7bb4
fix: make pet profiles clickable from feed, search, and notifications

adminandClaude Sonnet 4.6
2026-06-15 04:52:45 +02:00
-
e2e932804b
feat(06): Phase 6 — Direct Messages

adminandClaude Sonnet 4.6
2026-06-14 09:45:45 +02:00
-
1fc69add4d
docs: update README to reflect Phases 1-5 complete

adminandClaude Sonnet 4.6
2026-06-14 08:44:48 +02:00
-
da0f9f2bb7
fix: resolve 5 bugs from dev testing

adminandClaude Sonnet 4.6
2026-06-14 08:41:46 +02:00
-
60366691e8
feat(05): Phase 5 — short-form video via Mux

adminandClaude Sonnet 4.6
2026-06-13 13:27:43 +02:00
-
08fd0dfb71
feat(04): Phase 4 — in-app notifications

adminandClaude Sonnet 4.6
2026-06-13 12:59:23 +02:00
-
7fafc6d17f
fix(StoryTray): align Add Story circle with PawRing items

adminandClaude Sonnet 4.6
2026-06-13 12:44:57 +02:00
-
4b2760a08d
fix(PawRing): center main pad ring at cy=50 so avatar sits inside it

adminandClaude Sonnet 4.6
2026-06-13 12:43:27 +02:00
-
a9886948b8
fix: empty feed + unclickable profile grid

adminandClaude Sonnet 4.6
2026-06-13 12:38:53 +02:00