이건 교내 베팅 앱이 아니라 예측시장을 5분 만에 띄우는 엔진을 보여주는 라이브 데모입니다. 파는 것은 ① LMSR 가격 엔진 ② 실제 LLM 애널리스트 파이프라인 ③ 라이브 UX — 셋을 묶은 화이트라벨입니다.
- 🏫 학교·동아리·행사 — 축제·선거 같은 행사에 참여형 소통툴을 빠르게 올린다 (B2B/B2G).
- 🏢 사내 의사결정 예측시장 — 프로젝트 마감·출시일을 사내 베팅으로 forecasting (실재하는 기업 내부 예측시장 카테고리).
- 💳 과금 — 주최자 시트 구독 · 이벤트 건당 · SDK 연 라이선스. 참여자는 돈을 내지 않고, 매출은 주최측에서 나온다.
- 🛡️ 규제 비해당 — 전 구간 플레이머니(상점)이며 현금 미환전 → 사행성 규제 비해당, 미성년 안전.
자세한 계획 → docs/PITCH.md
- 🎯 실시간 예측시장 — 8개 교내 마켓, 4초마다 시세가 움직이는 라이브 가격 + 차트 + 티커
- 📈 LMSR 가격 책정 — 로그 시장 점수 규칙으로 매수·매도 시 확률·비용·수령액을 정확히 계산
- 🤖 AI 애널리스트 — API 키 없이 시세·차트·거래량 기반 휴리스틱으로 ‘예/아니오’ 전망·신뢰도·능청스러운 근거를 제시
- 💰 희소 정수 경제 — 30 상점으로 시작, 1 상점 단위 거래라 한 푼이 아쉬운 긴장감
- 🏆 랭킹 · 내 지갑 — 리더보드, 보유 포지션 평가액, 거래 내역
- 🌗 라이트 / 다크 테마 — 애플풍 디자인 시스템 + 부드러운 framer-motion 모션
- 🔌 백엔드 0 — 100% 클라이언트,
localStorage만으로 동작 (오프라인·즉시 실행, 기기별 독립)
![]() 🌙 다크 모드 — 라이트/다크 토글, 티커의 ▲▼ 실시간 플래시 |
![]() 📊 모든 마켓 — 카드 그리드 + 교내 속보 · 인기 마켓 · AI 오늘의 픽 |
![]() 🔍 마켓 상세 — 라이브 확률 차트 · LMSR 거래 패널 · 지비닥 AI 애널리스트 |
|
각 마켓은 LMSR(Logarithmic Market Scoring Rule)로 가격을 매깁니다. 예 가격은 0~1 사이의
값이고, 이는 곧 시장이 매긴 확률입니다. 매수하면 그 방향 가격이 오르고 반대쪽은 내려가며,
두 가격의 합은 항상 1입니다. 확률·매수 지분·매도 수령액은 모두 lib/lmsr.ts의
순수 함수로 계산되며 단위 테스트로 검증됩니다.
서버·DB 없이 lib/demo/store.tsx의 DemoProvider가 4초마다 각 마켓을
random-walk(0.03~0.97 클램프)시켜 새 가격을 history에 push합니다. 차트·티커·카드는 스토어를
읽기만 하면 자동으로 살아 움직입니다. 모든 상태(잔액·포지션·원장·시세)는 localStorage에
영속되고, 내비게이션의 리셋 버튼으로 초기 시드 상태로 되돌릴 수 있습니다.
“지비닥 AI 애널리스트”는 외부 모델 호출 없이 lib/ai/fakeAnalyst.ts의
결정적 휴리스틱으로 전망·신뢰도·능청스러운 한국어 근거를 만들어냅니다. 별도 API 키가 필요 없습니다.
페이지 로드마다 호출은 딱 한 번입니다 — 홈은 보이는 마켓 전체를 한 번에 묶어 분석해 “AI 오늘의 픽”을 고르고, 상세 페이지는 해당 마켓 하나를 분석합니다. 새로고침하면 다시 호출하며, 캐시는 없습니다. 네트워크 호출이 실패해도 클라이언트에서 같은 휴리스틱으로 폴백하므로 데모가 절대 깨지지 않습니다.
| 영역 | 사용 기술 |
|---|---|
| 프레임워크 | Next.js 16 (App Router · Turbopack) · React 19 |
| 언어 | TypeScript 5 |
| 스타일 | Tailwind CSS v4 · 애플풍 디자인 토큰 (app/globals.css) |
| 애니메이션 | Framer Motion 12 |
| 테스트 | Vitest 4 (LMSR · AI 애널리스트) |
| 배포 | Vercel (icn1 · 서울 리전) |
npm install # 의존성 설치
npm run dev # 개발 서버 → http://localhost:3000이 데모는 별도 환경 변수 없이 실행됩니다.
| 스크립트 | 설명 |
|---|---|
npm run dev |
개발 서버 (Turbopack) |
npm run build |
프로덕션 빌드 |
npm start |
빌드 결과 실행 |
npm run lint |
ESLint |
npm test |
단위 테스트 (Vitest) |
app/
layout.tsx # 루트 레이아웃 — 테마/스토어/토스트/내비 Provider
page.tsx # 홈 — 티커 + 카테고리 탭 + 히어로 + 마켓 그리드
market/[slug]/ # 마켓 상세 — 차트 · 거래 · AI · 규칙
leaderboard/ # 랭킹
portfolio/ # 내 지갑 — 보유 포지션 + 거래 내역
lib/
demo/store.tsx # localStorage 스토어 + 클라 가격 엔진 (useDemo 훅)
demo/seed.ts # 마켓 8개 · 데모 유저 · 시작 잔액(30 상점)
lmsr.ts # LMSR 순수 함수 (+ 단위 테스트)
ai/fakeAnalyst.ts # 휴리스틱 AI 애널리스트 (+ 단위 테스트)
format.ts # 표시 포맷 (상점 · 퍼센트)
components/
market/ # 카드 · 히어로 · 라이브 차트 · 거래 패널 · 우측 레일
ai/ # AI 분석 패널
ui/ · theme/ # 토스트 · 애니메이션 퍼센트 · 테마 토글
- 현재는 정산 없이 상시 시세차익만 다루는 라이브 데모입니다. 정산(resolution)·멀티테넌트·주최자 대시보드는 상용 로드맵입니다 (docs/PITCH.md).
- AI 애널리스트는 시세 기반 휴리스틱으로만 동작하며 외부 모델/API 키가 필요 없습니다.
- 상태는 기기별
localStorage에만 저장되어 사용자 간 공유되지 않습니다.



