オープンソース · Apache-2.0ローカルは無料 · コマンド 1 つで共有 · レビュー結果は Agent へ

まずデモで見せて、決めてから作る

TS/TSX でクリック・再生できるプロトタイプを書き、ローカルのボードで案を比べる。コマンド 1 つで共有・埋め込みし、チームはレビューリンクで投票して決定。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 は 1 問題 1 行。Agent がそのまま読めます
features/invite/options/a-modal.tsx
export default option({  name: 'A · メールで 1 人ずつ招待するダイアログ',  tradeoffs: ['最短の手順', '一度に 1 人だけ'],});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 に埋め込めば、訪問者はまずカバーを見て、クリックで再生・全画面表示できます。

  • Web の 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 }}

サンプル

Joplo で何が伝えられるか

B2B の管理画面からモバイルアプリ、バックエンドの構成や技術記事まで。ここでそのまま再生でき、自分のページに埋め込んだときと同じ見た目です。

サンプルをすべて見る

料金

ローカルはずっと無料、共同作業は誰でも

CLI での作成・チェック・ビルドは無料。埋め込み、レビュー、API キーはすべてのアカウントで使えます。Pro で買えるのは無期限のリンクと、より大きな上限です。

Free

$0

同僚にちょっと見せたい、レビューを一度回したいときに。

  • ローカル CLI の全機能。オープンソースで無料
  • サインインして公開。リンクは 1 時間有効
  • 埋め込み:Web の iframe、GitHub バッジ、リンクカード
  • レビューリンク、コメント、投票、joplo feedback
  • CI やスクリプト用の API キー
  • 1 時間有効な PR プレビュー(近日公開)
  • 共有ページに無料プランの表示と Joplo のバー
無料で登録

Pro

おすすめ

$48/ 年

リンクをずっと使いたいときに。

  • 共有リンクが無期限に
  • 無料プランの表示とブランドバーを非表示
  • 再公開しても同じリンクのまま。レビューのコメントも残ります
  • 期限切れから 7 日以内にアップグレードすれば元のリンクが復活
  • アップロードと公開の上限が拡大
  • PR が閉じるまで有効な PR プレビュー(近日公開)
  • 非公開リンク、バージョン履歴、クラウドでの書き出し(近日公開)
Pro にアップグレード

Lifetime

$99買い切り

一度の支払いで Pro の特典をずっと。

  • Pro のすべての特典
  • 更新なし
Lifetime を購入

価格は米ドル表示です。決済は Waffo Pancake が販売代理店(Merchant of Record)として処理します。

FAQ

よくある質問

料金、共有、埋め込み、レビュー、Agent についての率直な回答です。

次の機能は、まずデモから

ローカルで書いて、再生して、比べる。はっきりしてから本番のコードを書きましょう。

ターミナル

$ npx joplo@latest init my-demo