chenglou/pretext リポジトリ

構成・検証パイプライン・デモ入口の地図(npm パッケージ @chenglou/pretext の公開元)

1 — 概要

本ページは GitHub の chenglou/pretext をモノレポとして読むためのナビです。prepare / layout などパッケージ API の正はリポジトリの README.md と npm パッケージページに置き、ここでは src/ 周辺の責務、Bun スクリプト、チェックイン済み JSON スナップショット、静的デモの URL パスを整理します。

Bun
ランタイム・パッケージマネージャ
Canvas
計測のグラウンドトゥルース
JSON
精度・ベンチの退避先
2 — ディレクトリ役割
パス役割
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/フロント共通の小さなユーティリティ(例: ナビ状態)。
3 — 開発コマンド

README.md と DEVELOPMENT.md に揃えた要約。詳細オプションは upstream のドキュメントを参照。

コマンド内容
bun install初回セットアップ。
bun startローカルページサーバ(既定でポート 3000 付近)。/demos/index などを開く。
bun run check型検査 + Lint。
bun test小さめの不変条件テスト。
bun run build:packagenpm 向け dist/ を生成。
bun run site:build静的デモサイトを site/ にビルド。
bun run generate:bidi-data簡略化 Unicode bidi レンジの再生成。

ブラウザ検証系(抜粋)

shell
bun run accuracy-check
bun run benchmark-check
bun run corpus-sweep
bun run corpus-status

ブラウザターゲット別に :safari / :firefox サフィックスが付くタスクが並ぶ。スナップショット更新は accuracy-snapshot 系や letter-spacing-snapshot など名前に snapshot が付いたスクリプトで行う。

4 — 精度・ベンチマーク

STATUS.md によれば、精度スイープは「フォント × サイズ × 幅 × テキスト集合」の行列をブラウザで走らせた結果を JSON に固定している。公開の /accuracy ページは回帰ゲート寄りで、日々の意思決定の主指標ではない、という位置づけ。

ベンチ: チェックイン値は 3 回冷起動チェックの中央値。ローカル単発のページ数値とはズレうるため、ホットパス変更時は src/analysis.ts / measurement.ts / line-break.ts / layout.ts / bidi.ts または pages/benchmark.ts を触ったらスナップショット更新手順を踏む、と upstream が案内している。
5 — コーパス

corpora/ には言語横断のテキストファイルと、Chrome/Safari の step=10 幅スイープ結果、dashboard.json などが置かれる。corpus-check で単一コーパスを狭い幅集合で診断し、corpus-taxonomy で不一致フィールドをバケツ分けする、といった運用が DEVELOPMENT.md に列挙されている。

6 — デモとレポート

ローカルサーバ上のパス(DEVELOPMENT.md より)。

パス内容
/demos/indexデモ一覧。
/demos/dynamic-layout可変幅フローなど手動レイアウトの厚めの例。
/demos/markdown-chatチャット風 UI のサンプル。
/accuracyブラウザ精度レポート。
/benchmarkベンチマーク表示。
/corpusコーパス向け UI。

ホスト済みのライブデモは chenglou.me/pretext とコミュニティの pretext-demos も参照。

7 — npm API の参照先

型付き API、コード例、注意事項(system-ui や Canvas 前提など)は upstream の README が一次情報。パッケージのバージョンと依存は npm を参照。

本ページはリポジトリの運用・検証・ツリーに限定する。コードを触る前の着地先として使う。