오픈 소스 · Apache-2.0로컬은 무료 · 명령 하나로 공유 · 리뷰 결과는 Agent에게

먼저 데모로 보여 주고, 결정한 다음 만든다

TS/TSX로 클릭하고 재생할 수 있는 프로토타입을 만들고 로컬 보드에서 안을 비교하세요. 명령 하나로 공유하거나 임베드하고, 팀은 리뷰 링크에서 투표해 결정합니다. Agent는 joplo feedback으로 결정대로 소스를 고칩니다.

터미널

$ npx joplo@latest init my-demo$ npx joplo dev --open$ npx joplo share --review✓ 리뷰판 공개 → https://joplo.app/s/…$ npx joplo feedback반영할 결정 2건 → Agent에게 넘기기
데모를 재생 중인 Joplo 보드: 왼쪽에 안 A와 B, 가운데에 프로토타입 화면, 아래에 단계 타임라인.

작동 방식

소스에서 결정으로, 다시 소스로

소스 파일이 기준이고 기록은 Git이 남깁니다. 리뷰 의견이 채팅에 묻히지 않습니다. 결정된 내용은 Agent가 같은 TSX에 반영하고 다시 공개합니다.

  1. 01

    TS/TSX로 작성

    화면, 안, 케이스, 흐름을 모두 소스 파일에 적고 코드 옆에 둡니다.

    options/a.tsx
  2. 02

    보드에서 비교하고 재생

    안 A와 B를 전환하며 각 안이 어떤 케이스를 다루는지 보고, 단계별로 재생합니다.

    npx joplo dev --open
  3. 03

    공유하거나 리뷰판 공개

    일반 링크에는 고른 안만 들어갑니다. 리뷰판에는 모든 안이 들어가고, 규칙과 질문은 리뷰어에게만 보입니다.

    npx joplo share --review
  4. 04

    리뷰, 투표, 결정

    리뷰어는 데모 옆에 댓글을 달고 요소를 가리키고 투표합니다. 작성자는 안을 고르고 규칙을 확정하거나 기각하고 질문에 답합니다.

    cloud.joplo.app/review/…
  5. 05

    Agent가 결정대로 수정

    Agent가 아직 반영하지 않은 결정과 댓글을 가져와 소스를 고치고 check를 통과시킨 뒤 반영 완료로 표시합니다.

    npx joplo feedback

2단계로 돌아가기: 수정이 끝나면 npx joplo share --review를 다시 실행하세요. Pro에서는 같은 리뷰 링크가 갱신되고 댓글과 투표도 그대로 남습니다.

기능

첫 프로토타입부터 Agent의 마지막 수정까지

01

데모 작성

화면, 안, 케이스, 흐름을 TS/TSX로 써서 Git에 넣습니다. 나와 Agent가 같은 소스 파일을 고칩니다.

  • 컴포넌트, 전환 카드, 여러 역할, Agent 스트리밍 출력까지
  • joplo check는 문제 하나에 한 줄, Agent가 바로 읽습니다
features/invite/options/a-modal.tsx
export default option({  name: 'A · 이메일로 한 명씩 초대하는 대화상자',  tradeoffs: ['가장 짧은 경로', '한 번에 한 명만'],});flow('관리자가 초대를 보냄')  .click('btn_invite', '초대 대화상자 열기')  .type('in_email', '[email protected]')  .select('sel_role', '편집자', uses('role_cap'))  .click('btn_send', '초대 보내기');

02

안 비교

같은 기능에 안 A와 B를 씁니다. 보드는 케이스별로 각 안의 커버리지를 보여 주므로, 빠진 곳과 미정인 곳이 한눈에 보입니다.

  • 단계별로 재생하고, 자막·카메라·레이어는 흐름을 따라갑니다
  • ⌥를 누른 채 요소를 클릭하면 파일과 줄 번호를 Agent에게 넘깁니다
Joplo 보드: 왼쪽에 안 A·B와 케이스별 커버리지, 오른쪽에 프로토타입 화면.

03

공유와 임베드

npx joplo share로 joplo.app/s/… 링크를 공개합니다. 블로그, 문서, README에 임베드하면 방문자는 먼저 표지를 보고, 클릭해서 재생하거나 전체 화면으로 볼 수 있습니다.

  • 웹 iframe, GitHub 배지, 링크 카드를 모든 계정에서
  • 무료 링크는 1시간, Pro 링크는 기한 없음
임베드된 Joplo 데모 재생 중: 아래에 자막과 간단한 컨트롤 바가 있어 단계 이동과 전체 화면이 가능합니다.

04

리뷰하고 Agent에게 돌려주기

리뷰 링크를 보내면 동료가 데모 옆에 댓글을 달고 요소를 가리키고 투표합니다. 결정을 내리면 Agent가 npx joplo feedback으로 결정을 받아 그대로 소스를 고칩니다.

  • 규칙과 미결 질문은 리뷰 링크에서만 보입니다
  • 댓글과 투표는 로그인이 필요하고, 결정은 작성자만 합니다
~/my-demo — zsh
$ npx joplo feedbackShare k3f9x2Qa1B · version 3Decisions not yet applied (2):  [d_8f2k] Pick option invite.a-modal for feature invite  [d_3m9q] Reject rule resend_cap: 1분 안의 재전송만 막기Unresolved comments (1):  [c_7xw1] scenario invite.a-modal.success · step 2 — 천천      버튼 문구를 "동료 초대"로 바꾸면 어떨까요?Next: update the source as decided, run npx joplo check,then npx joplo feedback --applied d_8f2k,d_3m9q

05곧 공개

CI와 PR 미리보기

CI에서는 기기 로그인 대신 API 키로 공개합니다. Joplo GitHub App이 열리면 PR마다 미리보기 댓글이 달리고, PR을 닫으면 링크가 만료됩니다.

  • API 키는 지금 바로 사용 가능: 권한 범위 지정, 기본 90일
  • PR 미리보기: 무료는 1시간, Pro는 PR을 닫을 때까지
.github/workflows/joplo-preview.yml
on: pull_requestjobs:  preview:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4      - run: npx joplo share --new --pr ${{ github.event.number }}        env:          JOPLO_API_KEY: ${{ secrets.JOPLO_API_KEY }}

가격

로컬은 언제나 무료, 협업은 누구나

CLI로 작성·검사·빌드하는 데는 비용이 들지 않고, 임베드·리뷰·API 키는 모든 계정에서 쓸 수 있습니다. Pro는 기한 없는 링크와 더 높은 한도를 위한 요금제입니다.

Free

$0

동료에게 잠깐 보여 주거나 리뷰를 한 번 돌릴 때.

  • 로컬 CLI 전체 기능, 오픈 소스이며 무료
  • 로그인 후 공개, 링크는 1시간 유효
  • 임베드: 웹 iframe, GitHub 배지, 링크 카드
  • 리뷰 링크, 댓글, 투표, joplo feedback
  • CI와 스크립트용 API 키
  • 1시간 유효한 PR 미리보기 (곧 공개)
  • 공유 페이지에 무료 요금제 안내와 Joplo 바 표시
무료로 가입

Pro

추천

$48/ 년

링크가 계속 살아 있어야 할 때.

  • 공유 링크 기한 없음
  • 무료 요금제 안내와 브랜드 바 제거
  • 다시 공개해도 같은 링크 유지, 리뷰 댓글도 보존
  • 만료 후 7일 안에 업그레이드하면 원래 링크 복구
  • 더 높은 업로드·공개 한도
  • PR을 닫을 때까지 유효한 PR 미리보기 (곧 공개)
  • 비공개 링크, 버전 기록, 클라우드 내보내기 (곧 공개)
Pro로 업그레이드

Lifetime

$991회 결제

한 번 결제하고 Pro 혜택을 계속 누리세요.

  • Pro의 모든 혜택
  • 갱신 없음
Lifetime 구매

가격은 미국 달러 기준입니다. 결제는 Waffo Pancake가 판매 대행사(Merchant of Record)로서 처리합니다.

FAQ

자주 묻는 질문

가격, 공유, 임베드, 리뷰, Agent에 대한 솔직한 답변입니다.

다음 기능은 데모부터

로컬에서 쓰고, 재생하고, 비교하세요. 분명해진 다음에 진짜 코드를 쓰면 됩니다.

터미널

$ npx joplo@latest init my-demo