ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Drop a doc. Unspool it. — unspool.cc
Drag in any document (class notes, a textbook chapter, a work PDF, a contract) and Unspool turns it into 10 short, swipeable, Instagram-style reels with hooks, voiceover, animated visuals and a quick quiz.
Stack: Next.js 16 (App Router) + TypeScript + Tailwind v4 + Motion, Supabase (Auth, Postgres, Storage), Vercel (hosting, background functions, cron), Stripe (Checkout, Portal, webhooks), Claude (plan + scripts + OCR), OpenAI TTS or ElevenLabs (voiceover).
Try the viewer with no backend at all: npm run dev → http://localhost:3000/s/demo.
upload (browser → Supabase Storage via signed URL)
└─ POST /api/documents/:id/start
└─ job: process (own function invocation)
extract text (unpdf / mammoth / pptx XML; Claude vision OCR for scans & photos)
plan 10 reels with Claude → reels rows (titles + hooks = free preview)
└─ job: reel 1 (script with Claude → TTS per segment → Storage)
└─ jobs: reels 2–10 in parallel (reuse the warm prompt cache)
browser polls GET /api/documents/:id every 2s and plays reels as they become ready
src/lib/schema.ts) via structured outputs, validated with zod, retried once.healIfStuck).Key files: src/lib/pipeline.ts, src/lib/claude.ts, src/lib/tts.ts, src/components/reel/* (player),
src/components/reel/use-playback.ts (timing engine), supabase/migrations/* (schema + RLS + buckets).
supabase/migrations/20261015000000_init.sql
(SQL editor, or supabase db push). It creates the tables, RLS policies, and the private documents and audio buckets.
https://unspool.cc; add redirect URL https://unspool.cc/auth/callback
(and http://localhost:3000/auth/callback for dev).https://<project>.supabase.co/auth/v1/callback).STRIPE_SECRET_KEY. Create a webhook endpoint at https://unspool.cc/api/stripe/webhook for
checkout.session.completed, checkout.session.async_payment_succeeded, customer.subscription.created|updated|deleted
and set STRIPE_WEBHOOK_SECRET. Enable the Customer Portal. Prices are inline by default ($2.49 per doc, $7.99/mo);
override with PRICE_*_CENTS or STRIPE_PRICE_SUBSCRIPTION.ANTHROPIC_API_KEY, plus OPENAI_API_KEY (or ELEVENLABS_API_KEY) for voiceover..env.example, set CRON_SECRET (daily cleanup of anonymous
uploads older than 7 days) and JOB_SECRET. If Deployment Protection is on for previews, enable
"Protection Bypass for Automation" so internal job calls work (VERCEL_AUTOMATION_BYPASS_SECRET is picked up automatically).unspool.cc in Vercel → Domains, then at Namecheap set an A record @ → 76.76.21.21 and a
CNAME www → cname.vercel-dns.com (or switch nameservers to Vercel).cp .env.example .env.local # fill in
npm install
npm run dev
FREE_UPLOADS_PER_DAY (default 3) per IP / device / account; subscribers get SUBSCRIBER_UPLOADS_PER_DAY.GENERATE_LOCKED_REELS_EAGERLY=false defers reels 2–10 until unlock to cut AI cost.