chenglou/pretext リポジトリ
構成・検証パイプライン・デモ入口の地図(npm パッケージ @chenglou/pretext の公開元)
本ページは GitHub の chenglou/pretext をモノレポとして読むためのナビです。prepare / layout などパッケージ API の正はリポジトリの README.md と npm パッケージページに置き、ここでは src/ 周辺の責務、Bun スクリプト、チェックイン済み JSON スナップショット、静的デモの URL パスを整理します。
| パス | 役割 |
|---|---|
src/ | コア実装(layout.ts、line-break.ts、measurement.ts、bidi.ts など)。パッケージのエクスポート元。 |
pages/ | ローカル開発サーバが配信する HTML/TS エントリ。精度ページ・ベンチ・コーパス UI、demos/ 配下のインタラクティブ例。 |
scripts/ | ブラウザ自動化によるスイープ、スナップショット更新、コーパス診断、パッケージスモークテスト等の CLI。 |
accuracy/ | ブラウザ別の広幅スイープ結果(Chrome / Firefox / Safari)と letter-spacing 系のコンパクト Oracle。 |
benchmarks/ | パフォーマンス検査のメディアン結果(主に Chrome、Safari は参考)。 |
corpora/ | 多言語・混在スクリプトの長文サンプル、step10 スイープ JSON、ダッシュボード用集計。 |
status/ | dashboard.json — 精度・ベンチ・コーパス入力のマシン可読サマリ。 |
shared/ | フロント共通の小さなユーティリティ(例: ナビ状態)。 |
README.md と DEVELOPMENT.md に揃えた要約。詳細オプションは upstream のドキュメントを参照。
| コマンド | 内容 |
|---|---|
bun install | 初回セットアップ。 |
bun start | ローカルページサーバ(既定でポート 3000 付近)。/demos/index などを開く。 |
bun run check | 型検査 + Lint。 |
bun test | 小さめの不変条件テスト。 |
bun run build:package | npm 向け dist/ を生成。 |
bun run site:build | 静的デモサイトを site/ にビルド。 |
bun run generate:bidi-data | 簡略化 Unicode bidi レンジの再生成。 |
ブラウザ検証系(抜粋)
bun run accuracy-check
bun run benchmark-check
bun run corpus-sweep
bun run corpus-status
ブラウザターゲット別に :safari / :firefox サフィックスが付くタスクが並ぶ。スナップショット更新は accuracy-snapshot 系や letter-spacing-snapshot など名前に snapshot が付いたスクリプトで行う。
STATUS.md によれば、精度スイープは「フォント × サイズ × 幅 × テキスト集合」の行列をブラウザで走らせた結果を JSON に固定している。公開の /accuracy ページは回帰ゲート寄りで、日々の意思決定の主指標ではない、という位置づけ。
src/analysis.ts / measurement.ts / line-break.ts / layout.ts / bidi.ts または pages/benchmark.ts を触ったらスナップショット更新手順を踏む、と upstream が案内している。
corpora/ には言語横断のテキストファイルと、Chrome/Safari の step=10 幅スイープ結果、dashboard.json などが置かれる。corpus-check で単一コーパスを狭い幅集合で診断し、corpus-taxonomy で不一致フィールドをバケツ分けする、といった運用が DEVELOPMENT.md に列挙されている。
ローカルサーバ上のパス(DEVELOPMENT.md より)。
| パス | 内容 |
|---|---|
/demos/index | デモ一覧。 |
/demos/dynamic-layout | 可変幅フローなど手動レイアウトの厚めの例。 |
/demos/markdown-chat | チャット風 UI のサンプル。 |
/accuracy | ブラウザ精度レポート。 |
/benchmark | ベンチマーク表示。 |
/corpus | コーパス向け UI。 |
ホスト済みのライブデモは chenglou.me/pretext とコミュニティの pretext-demos も参照。
型付き API、コード例、注意事項(system-ui や Canvas 前提など)は upstream の README が一次情報。パッケージのバージョンと依存は npm を参照。
- README.md(GitHub) — API 節・インストール・デモ導線
- @chenglou/pretext(npm) — 公開バンドルと README ミラー
本ページはリポジトリの運用・検証・ツリーに限定する。コードを触る前の着地先として使う。
- GitHub: chenglou/pretext
- DEVELOPMENT.md(コマンド一覧の正)
- npm: @chenglou/pretext
- chenglou/text-layout(設計の源流)