Speakeasy プロジェクトで使用される専門用語・技術用語の一覧です。
Speakeasy のサービス名はカクテル・バーをテーマにしています。
| 名前 | 由来 | 役割 |
|---|
| Speakeasy | 禁酒法時代の隠れ酒場 | プロジェクト全体 |
| Counter | カウンター席 | 店舗管理 UI(コックピット) |
| Penthouse | ペントハウス(最上階) | 管理者コンソール |
| Fizz | 炭酸の泡 | チャット・一括配信エンジン |
| Vintage | ヴィンテージ(年代物) | 連絡先・グループ管理 |
| Bell | バーベル(呼び鈴) | 通知配信サービス |
| Base | ベースリカー(基酒) | 組織・アカウント基盤 |
| Proof | プルーフ(アルコール度数) | 認証サービス |
| Door | ドア(入口) | 認証ゲートウェイ |
| Tap | タップ(注ぎ口) | 外部 API ゲートウェイ |
| Cellar | セラー(酒蔵) | 業務データベース(Drizzle ORM) |
| Vault | ヴォールト(金庫) | 認証データベース |
| Jigger | ジガー(計量カップ) | 共有スキーマ・型定義 |
| Glass | グラス | UI コンポーネントライブラリ |
| Garnish | ガーニッシュ(飾り) | デザイントークン |
| Card | カード(メニューカード) | Public API リファレンス |
| Menu | メニュー | Storybook コンポーネントドキュメント |
| 用語 | 説明 |
|---|
| Organization(組織) | テナント単位。individual(個人)と group(グループ)の2種類がある |
| Shop(店舗) | Organization に紐付く店舗。連絡先・チャットの単位 |
| Member(メンバー) | Organization に所属するユーザー |
| Role(ロール) | owner / admin / member / staff の4段階 |
| Active Organization | ユーザーが現在操作対象としている Organization |
| 用語 | 説明 |
|---|
| Contact(連絡先) | 顧客情報。Shop に紐付く |
| UserType(ユーザー種別) | 優良 / 普通 / 要注意 / NG の4段階分類 |
| Group(グループ) | 連絡先のグルーピング。Cloudflare KV に保存 |
| Label(ラベル) | タグの AND/OR 条件による動的フィルタ |
| Tag(タグ) | 連絡先に付与する自由テキストの分類 |
| Chat NG | 特定の連絡先とのチャットを制限するステータス |
| NG タイプ | USER_NG(顧客希望)/ SHOP_NG(店舗判断)/ RESERVATION_ONLY(予約のみ)/ NO_PURELOVERS_USER(非会員制限) |
| 用語 | 説明 |
|---|
| ChatRoom(チャットルーム) | 店舗と顧客の 1対1 チャット。Room ID は {shopId}:{contactId} |
| Message Type | normal(通常)/ advertisement(広告)/ broadcast(一括配信)/ system(システム) |
| Content Type | text(テキスト)/ html(HTML) |
| Display Days | メッセージの表示期限(デフォルト90日) |
| Availability(在席状態) | online(対応可能)/ away(離席中) |
| Availability Mode | auto(自動切替)/ manual(手動切替) |
| 用語 | 説明 |
|---|
| Broadcast(一括配信) | 条件に合致する複数の顧客に一斉送信するメッセージ |
| Broadcast Status | DRAFT → SCHEDULED → QUEUED → SENDING → SENT / FAILED / CANCELED |
| Criteria(配信条件) | ターゲティングの条件(タグ、ユーザー種別、グループ等) |
| Target Count | 配信条件に合致する顧客数 |
| 用語 | 説明 |
|---|
| Notification Channel | BOX(アプリ内)/ PUSH(Web Push)/ LINE / EMAIL |
| Notification Type | chat_message / system_alert / system_alert_user / shop_to_customer |
| VAPID | Voluntary Application Server Identification(Web Push の認証プロトコル) |
| Shop Notification | 店舗スタッフ向けのアプリ内通知ボックス |
| 用語 | 説明 |
|---|
| Workers | Cloudflare のエッジコンピューティングランタイム。全サービスのデプロイ先 |
| Service Binding | Workers 間のゼロレイテンシ通信。HTTP を経由せず直接メソッド呼び出し |
| Native RPC | Service Binding 上で TypeScript メソッドを直接呼び出すパターン |
| WorkerEntrypoint | Native RPC を提供するための基底クラス |
| Durable Objects (DO) | ステートフルなオブジェクト。WebSocket 管理に使用 |
| Hyperdrive | PostgreSQL への接続プーリングサービス |
| KV | Key-Value ストア。セッション・グループデータに使用 |
| R2 | S3 互換オブジェクトストレージ。チャット添付ファイルに使用 |
| Queues | メッセージキュー。一括配信・通知処理に使用 |
| Analytics Engine | 構造化データの分析エンジン |
| 用語 | 説明 |
|---|
| SvelteKit | Svelte ベースのフルスタックフレームワーク |
| Svelte 5 Runes | Svelte 5 の新しいリアクティビティシステム($state, $derived, $effect 等) |
| Remote Functions | SvelteKit の実験的機能。サーバーサイド関数をクライアントから直接呼び出し |
| Hono | 軽量 Web フレームワーク。全バックエンドサービスで使用 |
| Drizzle ORM | TypeScript ファーストの ORM。v1.0 beta を使用 |
| Relations V2 | Drizzle ORM v1.0 のリレーション定義方式(defineRelations) |
| RQBv2 | Drizzle ORM v1.0 のリレーショナルクエリビルダー |
| better-auth | 認証ライブラリ。Passkey・OAuth・組織管理をサポート |
| Zod | TypeScript ファーストのスキーマバリデーションライブラリ |
| Melt UI | ヘッドレス UI コンポーネントプリミティブ |
| daisyUI | Tailwind CSS ベースの UI コンポーネントライブラリ |
| Turborepo | モノレポビルドシステム |
| 用語 | 説明 |
|---|
| ResultAsync | neverthrow ライブラリの非同期 Result 型。例外を使わないエラーハンドリング |
| Guard Clause | 早期リターンパターン。ネストを浅く保つ |
| Barrel Export | index.ts から re-export するパターン |
| Cursor Pagination | カーソルベースのページネーション。大量データの効率的な取得 |
| 用語 | 説明 |
|---|
| purelovers | 外部ロイヤリティプラットフォーム。連絡先・店舗を同期 |
| LINE | メッセージングプラットフォーム。通知チャネルとして使用 |
| Resend | メール送信 API サービス |
| LIFF | LINE Front-end Framework。LINE 内ブラウザで動作するアプリ |
| Scalar | OpenAPI ベースの API ドキュメントビューア |