diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 93ead1d..6a1c932 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -35,7 +35,20 @@ "Skill(gsd:progress)", "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query state.advance-plan --phase 1 --plan \"01-03\")", "Bash(git stash *)", - "Bash(echo \"Exit: $?\")" + "Bash(echo \"Exit: $?\")", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query init.progress)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query roadmap.analyze)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query state-snapshot)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query progress.bar --raw)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query audit-uat --raw)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query roadmap.get-phase 2)", + "Bash(ls .planning/phases/01-foundation/*-UAT.md)", + "Bash(ls .planning/todos/pending/*.md)", + "Bash(ls .planning/debug/*.md)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query config-get workflow.discuss_mode)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query phase.mvp-mode 1 --pick active)", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query state.advance-plan --phase 1 --plan \"01-04\")", + "Bash(node \"T:/CC-Projekte/.claude/gsd-core/bin/gsd-tools.cjs\" query commit \"chore\\(01\\): phase 1 complete\" --files \".planning/STATE.md\" \".planning/ROADMAP.md\" \".planning/phases/01-foundation/01-04-SUMMARY.md\" \".planning/phases/01-foundation/SUMMARY.md\")" ] } } diff --git a/.planning/PROJECT.md b/.planning/PROJECT.md index 3c60e6c..a04a2b0 100644 --- a/.planning/PROJECT.md +++ b/.planning/PROJECT.md @@ -1,8 +1,8 @@ -# OnlyPets +# PawFeed ## What This Is -OnlyPets is a social platform where pets are the stars. Dogs, cats, and birds get their own profiles — owners manage them, but the pet is the identity. Think Instagram built from the ground up for animals: pets follow each other, post photos and videos, celebrate milestones, and track their health, all within a community that actually cares about animals. +PawFeed is a social platform where pets are the stars. Dogs, cats, and birds get their own profiles — owners manage them, but the pet is the identity. Think Instagram built from the ground up for animals: pets follow each other, post photos and videos, celebrate milestones, and track their health, all within a community that actually cares about animals. ## Core Value @@ -42,7 +42,7 @@ Pets are first-class social identities — not just content on a human's feed ## Context -- The project name "OnlyPets" signals a pet-exclusive space — no human lifestyle content bleeding in +- The project name "PawFeed" signals a pet-exclusive space — no human lifestyle content bleeding in - Pets as social identities is the core differentiator from Instagram; the UX should reinforce this (pet name first, owner is "managed by @owner") - Content types mirror modern social platforms (photos, short video, stories) so the learning curve is low for Instagram/TikTok users - Health tracking is a meaningful differentiator — shareable vet records and milestone history turn the profile into a pet's digital life record diff --git a/.planning/REQUIREMENTS.md b/.planning/REQUIREMENTS.md index 00cdcb0..a702ceb 100644 --- a/.planning/REQUIREMENTS.md +++ b/.planning/REQUIREMENTS.md @@ -1,4 +1,4 @@ -# Requirements: OnlyPets +# Requirements: PawFeed **Defined:** 2026-06-05 **Core Value:** Pets are first-class social identities — not just content on a human's feed — so every feature is built around the pet's life, not the owner's. diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md index 27bdc35..6b6c321 100644 --- a/.planning/ROADMAP.md +++ b/.planning/ROADMAP.md @@ -1,8 +1,8 @@ -# Roadmap: OnlyPets +# Roadmap: PawFeed ## Overview -OnlyPets is built in strict dependency order. Phase 1 establishes the identity and media infrastructure that every subsequent phase depends on — Clerk owner auth, the pet-as-actor data model, and the Cloudflare R2 presigned upload pipeline. Phase 2 delivers the complete social posting loop (photo posts, stories, milestone posts, social graph, home feed, and the safety baseline required before any public access). Phase 3 adds engagement depth and discovery. Phase 4 closes the notification loop. Phase 5 introduces async video via Mux. Phases 6 and 7 deliver the independent DM and health tracking subsystems that can be built once the platform core is stable. +PawFeed is built in strict dependency order. Phase 1 establishes the identity and media infrastructure that every subsequent phase depends on — Clerk owner auth, the pet-as-actor data model, and the Cloudflare R2 presigned upload pipeline. Phase 2 delivers the complete social posting loop (photo posts, stories, milestone posts, social graph, home feed, and the safety baseline required before any public access). Phase 3 adds engagement depth and discovery. Phase 4 closes the notification loop. Phase 5 introduces async video via Mux. Phases 6 and 7 deliver the independent DM and health tracking subsystems that can be built once the platform core is stable. ## Phases diff --git a/CLAUDE.md b/CLAUDE.md index 924a922..d23d6b4 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -2,9 +2,9 @@ ## Project -**OnlyPets** +**PawFeed** -OnlyPets is a social platform where pets are the stars. Dogs, cats, and birds get their own profiles — owners manage them, but the pet is the identity. Think Instagram built from the ground up for animals: pets follow each other, post photos and videos, celebrate milestones, and track their health, all within a community that actually cares about animals. +PawFeed is a social platform where pets are the stars. Dogs, cats, and birds get their own profiles — owners manage them, but the pet is the identity. Think Instagram built from the ground up for animals: pets follow each other, post photos and videos, celebrate milestones, and track their health, all within a community that actually cares about animals. **Core Value:** Pets are first-class social identities — not just content on a human's feed — so every feature is built around the pet's life, not the owner's. @@ -74,7 +74,7 @@ OnlyPets is a social platform where pets are the stars. Dogs, cats, and birds ge | Technology | Version | Purpose | Why | |------------|---------|---------|-----| -| Clerk | Latest | Authentication provider | Clerk is the standard choice for Next.js 15 App Router auth in 2025. Ships with: pre-built UI components (sign-in, sign-up, user profile), social OAuth (Google, Apple, Facebook — important for pet-owner onboarding friction), session management with edge-compatible JWT verification, webhooks for user lifecycle events. The `@clerk/nextjs` middleware integration is first-class. **Note:** OnlyPets has a two-layer identity (owner account + pet profile). Clerk manages the owner account; your DB manages the pet-as-identity layer. Do NOT try to put pets as Clerk users — they are not auth entities, they are app-domain entities. | +| Clerk | Latest | Authentication provider | Clerk is the standard choice for Next.js 15 App Router auth in 2025. Ships with: pre-built UI components (sign-in, sign-up, user profile), social OAuth (Google, Apple, Facebook — important for pet-owner onboarding friction), session management with edge-compatible JWT verification, webhooks for user lifecycle events. The `@clerk/nextjs` middleware integration is first-class. **Note:** PawFeed has a two-layer identity (owner account + pet profile). Clerk manages the owner account; your DB manages the pet-as-identity layer. Do NOT try to put pets as Clerk users — they are not auth entities, they are app-domain entities. | ### Infrastructure & Deployment diff --git a/package-lock.json b/package-lock.json index a61abe2..3928c10 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "onlypets", + "name": "pawfeed", "version": "0.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "onlypets", + "name": "pawfeed", "version": "0.1.0", "dependencies": { "@aws-sdk/client-s3": "^3.1062.0", diff --git a/package.json b/package.json index 513082a..8d4d976 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "onlypets", + "name": "pawfeed", "version": "0.1.0", "private": true, "scripts": { diff --git a/prisma/seed.ts b/prisma/seed.ts index 48e8f2e..f862b04 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -3,7 +3,7 @@ import { PrismaPg } from "@prisma/adapter-pg"; import { Pool } from "pg"; /** - * Seed script for the OnlyPets database. + * Seed script for the PawFeed database. * Seeds Species (Dog, Cat, Bird) and Breed taxonomy idempotently. * Uses upsert so it is safe to run multiple times. * diff --git a/src/app/(app)/pets/PetGrid.tsx b/src/app/(app)/pets/PetGrid.tsx index d89fefc..ea13c9b 100644 --- a/src/app/(app)/pets/PetGrid.tsx +++ b/src/app/(app)/pets/PetGrid.tsx @@ -32,7 +32,7 @@ export function PetGrid({ pets }: PetGridProps) {

Add your first pet

- Give your pet their own profile on OnlyPets. + Give your pet their own profile on PawFeed.