Join the Agent Deck Discord Server!
Discord에서 Agent Deck 커뮤니티 확인, 357명과 자유 음성·텍스트 채팅 이용
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기pirokaapp
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Intent-first live map for queer adults. Web/PWA first, native later. Built by XRankFlow Media Group.
Next.js 14 (App Router) · TypeScript · Tailwind CSS (tokens in tailwind.config.ts) · Framer Motion · Three.js (@react-three/fiber, drei) · MapLibre GL · TanStack Query · Zod · Supabase (Postgres + PostGIS + Realtime) · Vercel.
npm install
cp .env.example .env.local # all keys optional in Phase 0
npm run dev # http://localhost:3000
npm run build · npm run lint · npm run typecheck · npm run format
| Route | Screen | Phase |
|---|---|---|
/ | Homepage: live map, chat sign-up, 18+ consent, face age check, log in | 1 ✓ |
/onboarding | 5-step profile setup | 0 shell → 2 |
/app/map | Live map (default tab) | 0 shell → 3 |
/app/pulse | Stats, hotspots, arrivals | 6 |
/app/chats | Smart inbox, threads, local board | 4 |
/app/places | Places · Events · Groups · Testing | 6 |
/app/me | Profile, PIROKA Mode, SafeMeet, album, plan | 2, 5, 8 |
/account/forgot /account/magic /account/reset | Account flows | 1 ✓ |
/help/[slug] | Help center, support, appeals, report, policies | 7 |
App shell: 80px left rail at ≥820px (rail: breakpoint), 66px bottom tab bar below that, with env(safe-area-inset-bottom).
Auth is Supabase Auth (Google, email magic link, anonymous, password). Without NEXT_PUBLIC_SUPABASE_URL + NEXT_PUBLIC_SUPABASE_ANON_KEY the app runs in demo auth (a signed cookie, no real identity) so the whole flow can be walked locally; production builds refuse demo mode unless NEXT_PUBLIC_AUTH_DEMO=1.
Every new account passes the gate before /onboarding and /app/* (enforced in middleware.ts):
POST /api/consent.POST /api/age/verify. Providers in lib/age: yoti, persona (stubs to wire) or local (the on-device UI only, dev). Only age_verified = true is stored, in Supabase app_metadata via the service role.To go live on Supabase: set the keys plus SUPABASE_SERVICE_ROLE_KEY, enable Anonymous sign-ins, configure the Google provider, add <origin>/auth/callback to the redirect allow list, and pick an age provider.
app/ routes (App Router)
components/ shared UI (logo, app nav, providers)
lib/ intent.ts, geo/fuzz.ts (server only), help.ts, i18n.ts, env.ts, supabase/
messages/ en · pt-BR · es catalogs
supabase/ schema.sql (Postgres 15 + PostGIS)
design_handoff/ the design spec — README, FEATURES, BUILD_PLAN, HTML prototypes (source of truth for UI)
Read design_handoff/README.md first. The .dc.html prototypes in design_handoff/design/ are the behavioral spec (open with support.js beside them); design_handoff/standalone/ are single-file offline demos. Build order is design_handoff/starter/BUILD_PLAN.md.
lib/geo/fuzz.ts only.