AIが出力した音声書き起こしJSON(話者ダイアライゼーション付き)を手動で修正するためのWebアプリ。
デジタル庁デザインシステムのカラーやスペーシングを参考にしたUIデザイン。PWA対応でオフラインでも動作します。
注意: 本プロジェクトはデジタル庁の公式プロダクトではなく、個人開発のツールです。
- JSON読み込み — ボタンまたはドラッグ&ドロップで書き起こしJSONを読み込み
- 新規作成 / エクスポート — 新規作成、JSON保存、テキスト出力(クリップボードコピー)
- 話者管理 — 追加・削除・名前変更。数字キーで素早く話者を切り替え
- 発言カード操作 — 選択(単体・範囲・Ctrl)、テキスト編集、タイムスタンプ編集
- テキスト切り分け — 選択範囲を別カードとして分割
- ドラッグ&ドロップ — カードを並び替え
- セクション追加 — カード間に空カードを挿入
- カード削除 — ボタン・Deleteキー・複数一括
- Undo — Ctrl+Z で最大30ステップ戻る
- リストビュー / タイムラインビュー の切り替え
- 音声再生・同期 — 音声ファイルを開いて再生。再生位置に合わせてカードを自動ハイライト&スクロール
| 項目 | 選定 |
|---|---|
| ビルドツール | Vite |
| UIフレームワーク | React 19 |
| PWA | vite-plugin-pwa |
| フォント | @fontsource/noto-sans-jp |
| ドラッグ&ドロップ | @dnd-kit |
| デプロイ先 | GitHub Pages |
| CI/CD | GitHub Actions |
npm installnpm run devhttp://localhost:5173/minutes-editor/ で起動します。
npm run build
npm run preview # ビルド結果のプレビューmain ブランチに push すると GitHub Actions が自動で GitHub Pages にデプロイします。
- GitHub リポジトリの Settings → Pages で Source を
gh-pagesブランチに設定 mainに push すればデプロイが走るhttps://<ユーザー名>.github.io/minutes-editor/で公開
sample.json — アプリの機能を紹介する会議風のサンプルデータ(3名・22発言)が同梱されています。「JSON読み込み」からお試しください。
[
{
"id": 1,
"speaker": "Speaker_1",
"start": 0.0,
"end": 13.5,
"text": "発言テキスト",
"incomplete": false,
"interrupted": false,
"interrupted_by": null,
"interruption": false
}
]ISC