| P0 | ▸Video-first feedRanked feed of resources, generic over every kind. | Partial | 2✓1◐0○ | 83% | GET /api/feed · index.astro · ExploreGrid |
| - As a visitor, I want to scroll a live feed of what people are building.
- As a visitor, I want to see real ratings, not vote counts.
- As a visitor, I want to feed populated from real X/YouTube pulls.
|
| P0 | ▸Creator profilesRead-only profile per creator (person or org). | Partial | 2✓1◐0○ | 83% | GET /api/creators/:handle · CreatorProfile · people.astro |
| - As a visitor, I want to open a creator and see everything they've shared.
- As a visitor, I want to browse all creators in a directory.
- As a visitor, I want to see verified-human badge on real profiles.
|
| P0 | ▸Resource detailFull view of a single resource + its reviews. | Done | 1✓0◐0○ | 100% | GET /api/resources/:id · ResourceDetail · /r/[id] |
| - As a visitor, I want to open one resource and read its reviews.
|
| P0 | ▸SearchLive filter across resources + creators by name. | Done | 1✓0◐0○ | 100% | GET /api/search · SearchResults · search.astro |
| - As a visitor, I want to press / and filter the whole site by name.
|
| P0 | ▸Ingest seamTranscriber-agnostic POST to push resources in. | Partial | 1✓1◐0○ | 75% | POST /api/ingest · scripts/aggregate-cron.mjs |
| - As a pipeline, I want to push transcribed video in via one endpoint.
- As the system, I want to auto-aggregate X + YouTube on a cron.
|
| P1 | ▸Liveness verificationCamera 'move your head' check — proves a live human. | Partial | 0✓2◐0○ | 50% | GET /api/verify/challenge · POST /api/verify/liveness · LivenessCheck · verify.astro |
| - As a new member, I want to prove I'm a real human with a quick camera check.
- As a member, I want to get the verified-human badge after passing.
|
| P1 | ▸Accounts / sign-inX/IG OAuth as convenience login; liveness is identity. | Partial | 0✓2◐0○ | 50% | AuthForm · login.astro · NavSession |
| - As a visitor, I want to sign in with X or IG.
- As a member, I want to see my session in the nav.
|
| P1 | ▸FollowFollow a creator. No DMs — connect via their socials. | Done | 1✓0◐0○ | 100% | POST /api/follow · FollowButton |
| - As a member, I want to follow a creator I like.
|
| P1 | ▸SavedSave a resource to a personal list. | Done | 1✓0◐0○ | 100% | POST /api/save · GET /api/me/saves · SavedGrid · saved.astro |
| - As a member, I want to save a resource and find it later.
|
| P2 | ▸Find peopleDiscover creators beyond the feed. | Done | 1✓0◐0○ | 100% | GET /api/creators · PeopleGrid · people.astro |
| - As a visitor, I want to browse and discover new creators.
|
| P2 | ▸Ratings + reviews1–5 ratings + written reviews. Verified-human only. | Done | 3✓0◐0○ | 100% | POST /api/resources/:id/rate · POST /api/reviews · InteractiveRating · ReviewForm |
| - As a verified human, I want to rate a resource 1–5.
- As a verified human, I want to write a review.
- As an unverified visitor, I want to be blocked from rating (verify gate).
|
| P2 | ▸Live comment threadsReal-time threads via Durable Objects. | Planned | 0✓0◐1○ | 0% | (deferred — DO, free tier) |
| - As a member, I want to comment in a live thread.
|
| P2 | ▸Likes / notificationsLightweight signals + activity inbox. | Planned | 0✓0◐1○ | 0% | (not started) |
| - As a member, I want to get notified when someone reacts to me.
|
| P3 | ▸PostingVerified humans publish their own resources. | Partial | 1✓1◐0○ | 75% | POST /api/posts · SubmitForm · submit.astro |
| - As a verified human, I want to post my own project/skill/repo.
- As an unverified visitor, I want to be blocked from posting (the only gated action).
|
| P3 | ▸Claim profileRequest to claim a pre-seeded creator profile. | Partial | 0✓1◐0○ | 50% | POST /api/claim (stub — manual Roy approve) |
| - As a creator, I want to claim the profile that's already about me.
|
| P3 | ▸Media uploadUpload video/images to R2. | Done | 1✓0◐0○ | 100% | POST /api/media/upload · GET /api/media/* (R2) |
| - As a verified human, I want to upload media with my post.
|
| P3 | ▸Creator dashboardManage your resources + see your numbers. | Partial | 0✓1◐0○ | 50% | GET /api/me · DashboardView · dashboard.astro |
| - As a creator, I want to see and manage everything I've shared.
|
| P4 | ▸Curation queueRoy curates the floor — approve/reject incoming. | Done | 2✓0◐0○ | 100% | GET /api/admin/queue · POST /api/admin/curate · AdminQueue · admin.astro |
| - As Roy (admin), I want to review and curate what enters the feed.
- As a non-admin, I want to be blocked from the admin queue (allowlist).
|
| P4 | ▸CRM / moderation / analyticsManage creators, moderate, see real numbers. | Planned | 0✓0◐1○ | 0% | (not started) |
| - As Roy (admin), I want to moderate content and track growth.
|