ai-startup-skills
AI 제품을 만드는 스타트업을 위한 7단계 에이전트 스킬: 검증 → 비즈플랜 → 정책 → 로드쇼 → 고객 확보 → 가격 책정 → 등록
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Citizen-reported status board for Busan's shark "Bukangi" (bukangi.com). React on Cloudflare Workers, Express + SQLite on a Mac mini, local open-model photo screening (Jev-style).
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Is Bukangi Here Now? (부캉이 지금 있나, bukangi.com) A citizen-reported status board for "Bukangi," the shark that showed up at Bukhang Waterfront Park in Busan's North Port in September 2026. When someone at the park uploads a photo of the shark or taps "I see it / I don't," the last-seen time updates right away. • Service: https://bukangi.com (launched 2026-09-22, developed with Claude Code) • Write-up, including why it is built this way: English · Korean Home · Report · Hall of Fame · Card rarity tiers (actual screens, 2026-09-30)README 전문 보기 ↗
English | 한국어
A citizen-reported status board for "Bukangi," the shark that showed up at Bukhang Waterfront Park in Busan's North Port in September 2026. When someone at the park uploads a photo of the shark or taps "I see it / I don't," the last-seen time updates right away.
User ──┬─ bukangi.com ──────▶ Cloudflare Workers static assets (React app)
│ └ worker.js: forwards only /c/<card> previews to the API
│
└─ api.bukangi.com ──▶ Cloudflare Tunnel (only allowed paths pass; everything else 404s)
│
▼ a single Mac mini (no external ports opened; listens on 127.0.0.1 only)
Express server :8787 ── SQLite (WAL) + photo folder
├─ AI screening engine :8788 (jev-visual + Qwen3.5-4B-4bit, MLX, local only)
└─ Discord webhook (decision alerts + signed approve/reject/undo links)
docs/operations.md.docs/screening.md, eval/README.mdops/cloudflared-config.example.yml).timingSafeEqual, and the server will not start without a token. Uploads are checked by their leading bytes, and photo IDs are unguessable random values.docs/data.md). Google Analytics loads only when VITE_GA_ID is set. Report photos, the production DB, and secrets are not in this repository.src/ React + TypeScript UI (Vite)
server/ Express API, SQLite, AI screening integration, Discord alerts, card images
eval/ AI photo screening evaluation scripts and results (report IDs anonymized)
ops/ Mac mini ops scripts, launchd config, example tunnel config, jev engine installer
test/ Load test and browser flow check (Playwright)
public/ Static assets
worker.js Cloudflare Worker (forwards only card preview paths to the API)
docs/ Deployment, operations, AI screening, data, third-party notices (English and Korean)
Requirements: Node.js (v25 in the development environment) and npm. To also run the AI screening engine, you need an Apple Silicon Mac (MLX) and Python 3.13.
npm install
# 1) UI only
npm run dev # http://localhost:5173
# 2) With the API server
export ADMIN_TOKEN=$(openssl rand -hex 24) # admin token (required)
export BUKANG_DATA=~/bukang-dev # folder where the DB and photos are stored
export SITE_URL=http://localhost:5173 # UI origin that calls the report/admin APIs
export SCREEN_ENGINE=off # no screening engine (a human reviews on the admin page)
npm run seed # sample data (optional)
npm run server # http://127.0.0.1:8787 , admin page at #/admin
| Name | Default | Description |
|---|---|---|
ADMIN_TOKEN | (required) | Admin API token. 32+ random characters recommended |
BUKANG_DATA | ~/bukang | Location of the SQLite DB and photo folder |
PORT / HOST | 8787 / 127.0.0.1 | Server address. Loopback only, in production too |
SITE_URL, ALLOWED_ORIGINS | UI origins allowed to call the report/admin APIs | |
PUBLIC_URL | The API's external URL. If set, photos are returned as absolute URLs | |
SERVE_STATIC | 1 | Whether the server serves dist/ and card images itself |
SCREEN_ENGINE | claude | Photo screening engine: claude / api / jev / off |
JEV_URL, JEV_THRESHOLD | http://127.0.0.1:8788, 0.7 | jev engine URL and auto-approve threshold (auto-reject if ≤ 1 − threshold) |
ANTHROPIC_API_KEY | Required only when SCREEN_ENGINE=api | |
DISCORD_WEBHOOK | If set, sends decision alerts and signed links | |
PARK_RADIUS | 700 | Park radius (m) within which on-site buttons are accepted |
VITE_GA_ID | (none) | Frontend build value. Google Analytics measurement ID. Leave empty to disable GA |
./ops/jev/setup.sh # installs jev-visual (pinned commit) and the model, registers with launchd, 127.0.0.1:8788
export SCREEN_ENGINE=jev
npm run server
Domain, the Mac mini (launchd), the Cloudflare Tunnel, and the Workers frontend: docs/deploy.md. Security checklist and load tests: docs/operations.md.
MIT. See LICENSE. Third-party code: docs/third-party.md. jev-visual (MIT) and the Qwen3.5 models (Apache-2.0) are downloaded at install time and are not included in this repository.