个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证ZAOOS
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
The ZAO ecosystem lab. Where new things get prototyped before earning their own home.查看完整 README ↗
The ZAO ecosystem lab. Where new things get prototyped before earning their own home.
Live App · Fork Guide · Research Library · Report Bug · Discord
The ZAO is a decentralized impact network for independent music artists. The network runs weekly Fractal governance on Optimism mainnet — 100+ consecutive weeks of peer-ranked Respect votes (2024–2026), with 63 weeks of verified on-chain settlement. The flagship application is WaveWarZ: live-traded music battles on Solana where artists earn automatically on every battle. As of July 2026: 1,289 battles, 921 unique songs, 34 Audius-rostered artists, $1,497 raised for charity across 2 benefit-battle rounds, 878.30 SOL total volume (~$64.8K). Mission: profit, data, and IP ownership back to independent artists.
9TUfEH…2fYo)Sources: wwtracker open-source dashboard, ZAO OS research docs 1077, 1253, 1254.
ZAOOS is the lab. The repo started as a gated Farcaster social client for The ZAO (a decentralized music community of 188 members on Base) and grew into a monorepo where many ZAO experiments live side-by-side. Today it’s the place where new ZAO-ecosystem things get prototyped before they earn their own home.
The pattern: Monorepo as Lab.
| Thing | Status |
|---|---|
| Gated Farcaster client for The ZAO (live at zaoos.com) | In production, also still being iterated |
| ZAOstock 2026 dashboard + Telegram bot | Graduating to its own repo + zaostock.com (Wed 2026-04-29) |
| Agent stack (ZOE, Hermes, others) | In R&D until one is solid + worth its own brand |
| Music player components (Sonata-pattern, etc) | In R&D |
| Live audio: ZAO Spaces (Stream.io + 100ms) + Juke integration (/spaces, /live, /juke-status) | In production - 3 providers from one Go-Live button, public Juke dashboard for partner |
| Research library (~1,400 active docs across 7 topic areas — ZAOOS) | Always stays here |
Full status census: research/infrastructure/836. Reproduce the cloud half with scripts/estate-audit/audit.sh.
| Area | Snapshot (2026-06-10) |
|---|---|
| Code | 302 API routes / 54 domains, ~360 components, 18 hooks, 41 lib domains |
| Tests | 16 of 54 API domains have suites (38 untested = top gap) |
| Agents | 5-surface model (ZOE, Hermes, ZAO Devz, Teams, ZAOstock bot), no zombie code |
| Half-built | Music NFT mint (Arweave not wired), ambient mixer, Kick/festival stubs, Lens/Hive disabled |
| Vercel estate | 86 projects — 32 live, 54 dead (12 old NEXUS iterations + ~5 dupes lead the kill-list) |
| Supabase estate | 4 projects — 2 active (ZAOOS, ZAO STOCK), 2 inactive/paused |
ZAOOS was born as a gated social platform for The ZAO — a decentralized music community where artists keep their revenue, curators earn reputation, and the community governs itself. Built on Farcaster with encrypted messaging via XMTP, on-chain governance via ORDAO, and inline music from 9 platforms.
That client is still live, still iterated, still forkable.
Everything community-specific lives in one file — community.config.ts. Change it and you have your own gated community hub.
| Doc | What It's For |
|---|---|
| FORK.md | Step-by-step fork guide — clone, configure, deploy in under an hour |
| AGENTS.md | AI coding agent context — works with Claude Code, Cursor, Copilot, Windsurf |
| CONTRIBUTING.md | Code conventions, PR process, testing standards |
| community.config.ts | The one file to change — branding, channels, contracts, admin, nav |
| .env.example | All env vars with descriptions, organized by priority |
git clone https://github.com/bettercallzaal/zaoos.git
cd zaoos
npm install
cp .env.example .env.local # fill in env vars
npm run dev # starts on localhost:3000
See FORK.md for the complete setup guide including database scripts, app wallet generation, and deployment.
Key services:
/spaces).env.example for the full listEvery feature with a checked box is built and working. Unchecked = planned. Code primitives are listed under each feature so forkers know exactly what to grab.
src/app/api/auth/ (6 routes: register, session, logout, verify, signer, siwe)src/lib/auth/session.ts · src/lib/farcaster/neynar.tssrc/hooks/useAuth.tssrc/app/api/auth/siwe/route.tssrc/lib/gates/allowlist.tssrc/app/api/admin/allowlist/route.tssrc/components/admin/AllowlistTable.tsx · src/components/admin/CsvUpload.tsxsrc/lib/auth/session.tssrc/middleware.tssrc/lib/validation/schemas.tssrc/app/(auth)/admin/src/components/admin/ (UsersTable, ZidManager, AllowlistTable, RespectOverview, HiddenMessages, CsvUpload, SyncRespectButton, ImportRespectButton, PollConfigEditor)/admin/members
src/app/api/chat/messages/route.ts · src/app/api/chat/send/route.tssrc/components/chat/ChatRoom.tsx · src/components/chat/MessageList.tsx · src/components/chat/Message.tsxsrc/hooks/useChat.tssrc/app/api/chat/thread/[hash]/route.tssrc/components/chat/ThreadDrawer.tsxsrc/app/api/chat/react/route.tssrc/components/chat/ComposeBar.tsx · src/components/chat/MentionAutocomplete.tsxsrc/app/api/chat/search/route.tssrc/components/chat/SearchDialog.tsxsrc/app/api/chat/schedule/route.tssrc/components/chat/SchedulePanel.tsxsrc/components/chat/FeedFilters.tsxsrc/contexts/XMTPContext.tsx (500+ line state manager)src/lib/xmtp/client.tssrc/components/messages/MessagesRoom.tsx · src/components/messages/MessageThread.tsxsrc/components/messages/GroupInfoDrawer.tsx · src/components/messages/NewConversationDialog.tsxsrc/hooks/useWalletXMTP.tssrc/components/messages/ConnectXMTP.tsxsrc/components/messages/ConversationList.tsxsrc/components/music/MusicEmbed.tsx · src/components/music/UniversalLinkCard.tsxsrc/providers/audio/ (9 platform-specific providers + PlayerProvider orchestrator)src/lib/music/ (isMusicUrl, findMusicEmbed, songlink, formatDuration, curationWeight)src/app/api/music/metadata/route.tssrc/components/music/PersistentPlayer.tsx — volume, like, playlist, prev/play/next, expandsrc/components/music/PersistentPlayerWithRadio.tsx — global wrappersrc/components/music/MusicSidebar.tsx — right-side drawer with user queue + channel queuesrc/components/music/ExpandedPlayer.tsx — shuffle, repeat, like, playlist, share, crossfade toggle, lyrics, waveform commentssrc/providers/audio/HTMLAudioProvider.tsx — dual <audio> elements with fade in/outsrc/components/music/CrossfadeSettings.tsx — settings UI (off / 1s / 2s / 3s / 5s / 8s / 12s)setPositionState() for lock screen scrubber + time displaysrc/app/api/users/[fid]/followers/route.ts · src/app/api/users/[fid]/following/route.tssrc/components/social/SocialPage.tsx · src/components/social/FollowerCard.tsxsrc/app/api/users/follow/route.tssrc/app/api/users/[fid]/route.ts · src/app/api/users/profile/route.tssrc/components/chat/ProfileDrawer.tsxsrc/app/api/social/suggestions/route.tssrc/components/social/DiscoverPanel.tsxsrc/app/api/search/users/route.tssrc/app/api/social/community-graph/route.tssrc/components/social/CommunityGraph.tsxsrc/components/social/ShareToFarcaster.tsxsrc/components/social/SocialPage.tsxGovernance tab has three distinct sections with visual separation:
src/lib/zounz/contracts.ts — Token, Auction, Governor, Treasury addresses + ABIssrc/app/api/zounz/proposals/route.ts — reads proposalCount, threshold, quorumsrc/components/zounz/ZounzProposals.tsx — proposal count, user voting power (wagmi), links to nouns.buildsrc/components/zounz/ZounzAuction.tsx@snapshot-labs/snapshot.js
src/lib/snapshot/client.ts — GraphQL client for active/recent pollssrc/app/api/snapshot/polls/route.ts — public endpoint for poll datasrc/components/governance/SnapshotPolls.tsx — active polls with score bar charts, "Vote on Snapshot" linkssrc/components/governance/CreateWeeklyPoll.tsx — admin one-click creator (10 workstream choices, 7-day period)src/app/api/admin/poll-config/route.ts — GET (public) / PUT (admin)src/components/admin/PollConfigEditor.tsx — add/remove/reorder/edit choices, save to DBsrc/app/api/proposals/route.ts (GET, POST, PATCH)src/app/(auth)/fractals/ProposalsTab.tsxsrc/app/api/proposals/vote/route.ts — with upsert fallback + error revertsrc/components/governance/ProposalComments.tsxsrc/app/api/respect/leaderboard/route.tssrc/components/chat/RespectPanel.tsxsrc/app/api/respect/sync/route.ts — manual admin sync (fallback)src/app/api/webhooks/alchemy/route.ts — auto-sync via Alchemy webhooks (real-time on mint)src/components/admin/SyncRespectButton.tsxsrc/app/api/respect/transfers/route.ts — query + backfill from Alchemy getAssetTransfersscripts/create-respect-transfers.sql — transfers tablesrc/app/api/respect/member/route.ts — returns ledger[] (every point earned: date, source, amount, detail)src/app/api/fractals/member/[wallet]/route.ts — fractal history + events + ledgersrc/app/api/respect/fractal/route.tssrc/app/api/respect/event/route.tssrc/app/(auth)/fractals/ (page, FractalsClient, SessionsTab, FractalLeaderboardTab, AnalyticsTab, ProposalsTab, AboutTab)src/app/api/fractals/sessions/route.tssrc/app/api/fractals/member/[wallet]/route.tssrc/app/api/fractals/proposals/route.tssrc/app/api/fractals/analytics/route.tssrc/app/api/fractals/webhook/route.tssrc/lib/ordao/client.ts (fetchProposalsOnChain, fetchRespectBalance, fetchZorBalance)src/app/api/fractals/proposals/route.tssrc/lib/hats/ (client.ts, tree.ts, gating.ts, constants.ts)src/app/api/hats/tree/route.tssrc/app/api/hats/check/route.tssrc/app/api/notifications/route.ts · src/app/api/notifications/status/route.ts · src/app/api/notifications/send/route.tsCompose once in ZAO OS, publish to multiple platforms simultaneously. Farcaster is always primary; other platforms receive fire-and-forget copies with content normalization per platform.
src/app/api/bluesky/ (sync, members, feed)src/lib/bluesky/ (client.ts, feed.ts, labeler.ts)src/app/api/discord/sync/route.ts (GET: read members, POST: receive bot data)src/lib/publish/normalize.tssrc/app/api/publish/status/route.tssrc/app/api/publish/x/route.ts · src/lib/publish/x.tssrc/app/api/publish/lens/route.ts · src/lib/publish/lens.ts · src/lib/publish/lens-client.tssrc/app/api/publish/hive/route.ts · src/lib/publish/hive.tssrc/app/(auth)/wavewarz/page.tsxsrc/app/api/wavewarz/sync/route.tssrc/lib/wavewarz/scraper.tssrc/app/api/wavewarz/artists/route.tssrc/lib/wavewarz/constants.tssrc/app/api/wavewarz/random-stat/route.tssrc/lib/wavewarz/random-stats.tssrc/lib/wavewarz/proposals.tssrc/components/wavewarz/GeneratePostButton.tsxsrc/components/calls/JitsiRoom.tsxsrc/components/calls/ListeningRoom.tsxsrc/hooks/useListeningRoom.tssrc/app/spaces/ — room pages with slug routingsrc/components/spaces/ — 40+ components (RoomView, ControlsPanel, BroadcastModal, ParticipantsPanel, ClosedCaptions, ConnectionQuality, etc.)src/app/api/stream/ — token, rooms CRUD, webhook handlersrc/app/api/admin/spaces/ — admin list/delete endpointssrc/lib/spaces/roomsDb.ts · src/lib/spaces/rtmpManager.tsscripts/configure-stream-grants.ts — call type permission setupsrc/app/(auth)/ecosystem//members with PFP, name, ZID, tier, respect, category, cover images
src/app/members/page.tsx (public) · src/app/api/members/directory/route.ts/directory redirects here/members/[username] (no login required)
src/app/members/[username]/page.tsx · src/app/api/members/[username]/route.tssrc/app/(auth)/contribute/src/app/api/community-issues/route.tssrc/app/api/webhooks/neynar/route.tssrc/components/zounz/ZounzProposals.tsx · src/components/zounz/ZounzAuction.tsxsrc/app/api/moderation/queue/route.tssrc/hooks/useMobile.ts#0a1628 background, gold #f5a623 primarynext/dynamicsrc/hooks/useFocusTrap.tssrc/components/chat/SignerConnect.tsx| Layer | Technology | Version |
|---|---|---|
| Framework | Next.js (App Router, Turbopack) | 16 |
| UI | React | 19 |
| Styling | Tailwind CSS v4 | Dark theme: navy + gold |
| Auth | iron-session (encrypted httpOnly cookies) | 8.x |
| Social | Neynar SDK (Farcaster) | 3.x |
| Messaging | XMTP Browser SDK (MLS protocol) | 7.x |
| Database | Supabase PostgreSQL + RLS + Realtime | 2.x |
| Blockchain | Wagmi + Viem (Optimism) | 2.x |
| Wallet UI | RainbowKit | 2.x |
| Validation | Zod | 4.x |
| Music | 9 platform providers + Wavesurfer.js + Web Audio (binaural) | — |
| Governance | Nouns Builder Governor + Snapshot.js + Supabase | — |
| State | React Query (@tanstack/react-query) | 5.x |
| Analytics | PostHog + Vercel Analytics | — |
| Testing | Vitest | 3.x |
| Video | Jitsi React SDK | — |
| Cross-posting | @atproto/api (Bluesky), twitter-api-v2 (X), @lens-protocol/client (scaffolded), @hiveio/dhive (scaffolded) | — |
| Moderation | Perspective API (Google Jigsaw) | — |
| Deployment | Vercel | — |
Optimism:
| Contract | Address |
|---|---|
| OG Respect (ERC-20) | 0x34cE89baA7E4a4B00E17F7E4C0cb97105C216957 |
| ZOR Respect (ERC-1155) | 0x9885CCeEf7E8371Bf8d6f2413723D25917E7445c |
| Hats Protocol v1 | 0x3bc1A0Ad72417f2d411118085256fC53CBdDd137 |
| Multicall3 | 0xcA11bde05977b3631167028862bE2a173976CA11 |
Base (ZOUNZ Nouns Builder DAO):
| Contract | Address |
|---|---|
| ZOUNZ Token (ERC-721) | 0xCB80Ef04DA68667c9a4450013BDD69269842c883 |
| ZOUNZ Auction | 0xb2d43035c1d8b84bc816a5044335340dbf214bfb |
| ZOUNZ Governor | 0x9d98ec4ba9f10c942932cbde7747a3448e56817f |
| ZOUNZ Treasury | 0x2bb5fd99f870a38644deafe7e4ecb62ac77a213f |
| File | What It Does |
|---|---|
community.config.ts | All branding, channels, contracts, admin FIDs, nav — change this to fork |
src/middleware.ts | Rate limiting + CORS headers |
src/lib/auth/session.ts | iron-session config |
src/lib/db/supabase.ts | Supabase client (service role + anon) |
src/lib/farcaster/neynar.ts | Neynar SDK wrapper |
src/lib/validation/schemas.ts | All Zod schemas |
src/contexts/XMTPContext.tsx | XMTP state management (500+ lines) |
src/providers/audio/ | 9 audio platform providers + PlayerProvider (crossfade, MediaSession, Wake Lock) |
src/lib/zounz/contracts.ts | ZOUNZ DAO contract addresses + ABIs (Token, Auction, Governor, Treasury) |
src/lib/snapshot/client.ts | Snapshot GraphQL client for reading polls |
src/lib/music/curationWeight.ts | Respect-weighted curation formula: log2(respect + 1) |
src/lib/ordao/client.ts | Direct OREC contract reader via viem — on-chain fallback for proposals + respect |
src/lib/format/timeAgo.ts | Relative time, deadline countdown, wallet shortener, number formatter |
src/lib/publish/ | Cross-platform publishing (Farcaster, X, normalize, Lens/Hive scaffolds) |
src/lib/moderation/moderate.ts | AI moderation via Perspective API |
src/hooks/ | 16+ custom hooks (auth, chat, radio, playerQueue, nowPlaying, listeningRoom, ENS, etc.) |
src/
├── app/ # Next.js App Router
│ ├── (auth)/ # Protected routes (chat, messages, governance, fractals, social, admin, etc.)
│ ├── api/ # 302 route handlers across 55 domains: /api/[feature]/[action]/route.ts
│ └── page.tsx # Landing / login
├── components/ # React components by feature (chat, messages, music, admin, social, etc.)
├── hooks/ # 18 custom hooks (useAuth, useChat, useRadio, usePlayerQueue, useNowPlaying, useListeningRoom, useENS, etc.)
├── contexts/ # React contexts (XMTPContext, QueueContext)
├── providers/ # Provider wrappers (8 audio providers, PostHog)
├── lib/ # Utilities by domain (auth, db, farcaster, gates, music, xmtp, hats, publish, moderation, etc.)
└── types/ # TypeScript type definitions
community.config.ts # All community config — fork-friendly
research/ # ~820 active research docs (see research/README.md)
scripts/ # DB setup, wallet generation, webhook registration, data import
docs/ # Internal plans, QA checklists, architecture decisions
~820 active research documents (plus 77 superseded in _archive/) covering every aspect of building a decentralized music platform — protocol, identity, music, AI agents, governance, revenue, cross-platform publishing, on-chain distribution, Arweave, NFTs, reputation, security, and developer tooling.
Start with:
Detailed execution plans live in docs/superpowers/plans/. This is the high-level view:
| Sprint | Focus | Status |
|---|---|---|
| 1 | Quick wins — ZID badges, OG badges, notification triggers | Done |
| 2 | Governance fixes — proposal categories, status transitions, deadline countdown, rate limits, security audit | Done |
| 3 | Engagement — streaks, badges, Track of the Day, activity feed, OG badge, referral system | Done |
| 4 | Moderation & search — AI moderation (Perspective API), full-text search (tsvector), music approval queue | Done |
| Cross-platform | Approved proposals auto-publish to Farcaster + Bluesky + X at 1000 Respect | Done |
| Settings | Unified accounts section (Wallet, Farcaster, Bluesky, Solana, X), features, socials | Done |
| Music Player | 30+ components: liked songs, queue, reactions, crossfade, binaural beats, lyrics, waveform comments, artist profiles, respect-weighted curation, curators leaderboard | Done |
| Mobile Polish | Complete MediaSession (8 actions), expanded player, swipe gestures, haptics, Wake Lock | Done |
| Governance | Three-tier system: ZOUNZ on-chain + Snapshot weekly polls + Community proposals. Admin poll config. 7-day voting + deferred publishing. | Done |
| Member Profiles | Public directory + profiles, ENS resolution, cover images, respect breakdown, badges, completeness indicator | Done |
| On-Chain Distribution | Music NFTs via Arweave atomic assets + BazAR/UCM + 0xSplits. Upload → mint → buy. (see docs 150-155) | Planned |
| 5 | Hats & Treasury — Hats tree deployment on Optimism, Safe multisig, HSG v2 | Planned (Q3 2026) |
| 6 | AI Agent — ElizaOS + Claude + pgvector, welcome DMs, music recs | Planned (Q4 2026) |
| 7 | Music Tier 4 — Farcaster embeds, Audius SDK, AI recs, Last.fm scrobbling | Planned (see doc 130) |
ZAO OS is open source (MIT). Fork it, build on it, make it yours.
Organization: The ZAO
Type: Music-focused Decentralized Autonomous Organization (DAO)
Founded: 2024 (Optimism Mainnet)
Location: Ellsworth, Maine (primary IRL presence) + distributed globally
Website: thezao.xyz | wavewarz.info
GitHub: github.com/bettercallzaal/ZAOOS
License: MIT (code) + CC-BY (research corpus)
On-chain contracts (Optimism Mainnet):
0x34cE89baA7E4a4B00E17F7E4C0cb97105C2169570x9885CCeEf7E8371Bf8d6f2413723D25917E7445c0xcB05F9254765CA521F7698e61E0A6CA6456Be532Products:
Governance: 63+ consecutive weekly on-chain governance sessions via OREC (as of Jul 2026)
Community: 188 active members | 157 Respect holders | newsletter 500+ subscribers
AI fleet: ZOE (social automation), ZOL (Farcaster scout), ZAOscribe (transcription), ZAOOS Loop (research), Bonfire (knowledge graph)
Citation: ZAO (2024–2026). ZAOOS: ZAO Open Source Research Corpus, 1,400+ documents. Creative Commons CC-BY. https://github.com/bettercallzaal/ZAOOS/
Built in public by The ZAO · Powered by Farcaster · Research-first development
src/app/(auth)/admin/members/page.tsxsrc/app/api/members/directory/route.ts — unified member view (identity, wallets, platforms, respect, activity)src/app/api/admin/member-health/route.ts — data quality report (missing fields, tier mismatches, unlinked records)respect_holder (governance) vs community (view only)src/lib/db/activity.tssrc/lib/ens/resolve.ts — shared module (resolveENSNames, getENSTextRecords, getENSAvatar)src/app/api/ens/route.ts — public server-side API (protects Alchemy key)src/hooks/useENS.ts — client hooks call API route (no browser-side RPC)ALCHEMY_API_KEY env var (free tier: 30M CU/month)src/middleware.ts · src/lib/validation/schemas.ts · src/lib/db/audit-log.tsscripts/fix-scheduled-casts-rls.sql · scripts/add-notifications-rls.sqlsrc/providers/posthog/ (PostHogProvider, PostHogPageview)src/app/api/miniapp/ (auth, webhook)src/hooks/useMiniApp.tssrc/app/api/upload/route.ts · src/app/api/admin/upload/route.tssrc/hooks/useKeyboardShortcuts.ts · src/hooks/useEscapeClose.ts · src/hooks/useFocusTrap.tscommunity.config.tssrc/app/api/chat/hide/route.tssrc/components/admin/HiddenMessages.tsxsrc/components/chat/Sidebar.tsxnavigator.wakeLock.request('screen')navigator.vibrate(10) on play, pause, resume, stop, skipsrc/hooks/usePlayerQueue.ts · src/contexts/QueueContext.tsxsrc/components/music/QueueActions.tsx — "Play Next" / "Add to Queue" popover on all track cardssrc/app/api/music/library/like/route.ts · src/components/music/LikeButton.tsxsrc/components/music/AddToPlaylistButton.tsxcollaborative column on playlists table, API updated for shared addingsrc/app/api/music/library/react/route.ts · src/components/music/TrackReactions.tsxsrc/hooks/useNowPlaying.ts · src/components/music/NowPlayingBar.tsxsrc/components/music/ShareToChatButton.tsxsrc/app/api/music/radio/route.ts · src/providers/audio/RadioProvider.tsxsrc/app/api/music/submissions/route.ts · src/app/api/music/submissions/vote/route.tssrc/lib/music/library.ts · src/app/api/music/library/route.tssrc/app/api/music/playlists/ — CRUD + track managementsrc/components/music/SleepTimerButton.tsxsrc/app/api/music/lyrics/route.ts · src/components/music/LyricsPanel.tsxsrc/app/api/music/comments/route.ts · src/components/music/WaveformComments.tsxsrc/app/api/music/artists/route.ts · src/components/music/ArtistCard.tsxsrc/lib/music/curationWeight.ts — log2(respect + 1) weighting formulasrc/app/api/music/trending-weighted/route.ts · src/components/music/RespectTrending.tsxsrc/app/api/music/curators/route.ts · src/components/music/TopCurators.tsxsrc/components/music/BinauralBeats.tsx — presets, timer, volume, custom carrier/beat sliderssrc/components/music/AmbientMixer.tsx — white/pink/brown noise layerssrc/app/api/music/wallet/route.tssrc/components/music/WaveformPlayer.tsxsrc/hooks/useListeningRoom.tssrc/app/api/music/track-of-day/ (3 routes)src/components/music/MusicPage.tsx (39KB)src/app/api/admin/respect-import/route.tssrc/components/admin/ImportRespectButton.tsxscripts/import-fractal-history.ts (run: npx tsx scripts/import-fractal-history.ts --dir ./data)src/app/api/streaks/ (2 routes: get streak, record activity)src/components/streaks/StreakBadge.tsxscripts/create-streaks-tables.sqlsrc/components/badges/OGBadge.tsxsrc/components/compose/PlatformToggles.tsx · src/components/compose/PublishButton.tsxsrc/app/api/users/messaging-prefs/route.ts · src/app/api/users/wallet-visibility/route.tssrc/app/api/platforms/ (Lens, Hive connection endpoints)src/components/home/ (HomePage, NowPlayingHero, QuickActions, ActivityFeed, PillarCard)src/app/api/activity/feed/route.tssrc/components/chat/TutorialPanel.tsx · src/components/chat/FaqPanel.tsxsrc/app/api/chat/minimax/route.tssrc/app/api/moderation/queue/route.tssrc/lib/moderation/moderate.ts