feat: LP を独立した lp パッケージに切り出す#545
Merged
owk-owk130 merged 12 commits intodevelopfrom May 1, 2026
Merged
Conversation
pnpm workspace に lp を追加し、astro / tsconfig / wrangler の 最小設定とルートからの dev / build / deploy スクリプト、 .tagpr の versionFile 同期対象を整備する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LpPage と配下コンポーネントに加え、AmbientBG / Mascot / RootLayout / SentryErrorBoundary / sentry / class-merge / useScrollReveal / index.css と LP で参照する画像を持ち込み、 apex で配信するための pages/index.astro を作成する。 MiniChat の API_BASE は openapi-fetch ベースの api/client に 依存させず、import.meta.env.PUBLIC_API_URL を直接読む形にする。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
dev 環境のみ BASIC_AUTH_USER / BASIC_AUTH_PASSWORD を設定して 保護する運用にし、prd は未設定で公開する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
CI で lp パッケージの tsc --noEmit を実行し、deploy-dev / deploy-prd ワークフローに lp:deploy:dev / lp:deploy:prd を呼ぶ ジョブを追加する。LP は server に依存せず並列で実行する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LP は静的サイトでエラー監視の必要性が低いため、@sentry/react / @sentry/vite-plugin の依存と initSentry / SentryErrorBoundary、 astro.config.ts の sentryVitePlugin 設定、deploy ワークフローの PUBLIC_SENTRY_DSN env を削除する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
旧 web 内では href="/" でチャット画面に遷移できたが、LP 分離後は "/" が LP 自身のトップになるため、Nav / Hero / FinalCTA / MiniChat / FooterSection の CTA を PUBLIC_WEB_URL ベースに変更し、 ローカル / dev / prd で適切な web ドメインを指す形にする。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LP が apex (nepp-chan.ai) 配信の別ドメインになるため、 TopBar の href を PUBLIC_LP_URL から取得する形に変更し、 ローカル / dev / prd で適切な LP URL を指す環境変数を整備する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LP は lp パッケージに移管したため、web/src/pages/lp.astro と web/src/app/lp/、web/public/lp/ を削除し、CLAUDE.md からも LP 関連の記述を取り除いてルートのデプロイ環境表に LP を追加する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Astro が生成する .astro/settings.json はインデントスタイルが Biome の formatter 設定と揃わないため、対象ディレクトリから外す。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LP の独立化に伴い、server の vars に LP_URL を追加し、 CORS の許可 origin に WEB_URL に加えて LP_URL を含める。 あわせて開発時のポート違いを許容するため、http://localhost の任意ポートを正規表現で許可する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
CI の tsc --noEmit で astro が自動生成する型ファイルが解決されず import.meta.env が ImportMeta に存在しないエラーになるため、 web と同様に astro/client の参照を src/env.d.ts に明示する。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
lp/src/lib/web-url.ts と web/src/lib/lp-url.ts を constants/urls.ts に 移動し、LP 側は MiniChat の API_BASE も API_URL として同ファイルに まとめる。今後の規約・行政向けページなど外部 URL 定数が増えたときの 見通しを良くする。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This was referenced May 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
web/から独立したlp/パッケージに切り出し、nepp-chan.aiで配信する構成に変更web.nepp-chan.aiを維持。互いの動線はPUBLIC_WEB_URL/PUBLIC_LP_URL環境変数で切り替え@assistant-ui/*等のアプリ依存も持ち込まない最小構成主な変更内容
新規
lp/パッケージpnpm-workspace.yamlに追加、ルート scripts にlp:dev/lp:build/lp:deploy:{dev,prd}を追加web/src/app/lp/およびweb/public/lp/から移植~/lib/api/client.ts経由ではなくimport.meta.env.PUBLIC_API_URLを直読み(auth-token / openapi-fetch を持ち込まないため)web/側pages/lp.astro/app/lp//public/lp/を削除href=\"/lp\"をPUBLIC_LP_URL経由の外部 URL に変更server/側LP_URLを追加し、開発時のポート違いを許容するためhttp://localhost:*を正規表現で許可wrangler.jsoncの各環境 vars にLP_URLを追加CI/CD
ci.ymlに lp の TypeScript チェック追加deploy-dev.yml/deploy-prd.ymlにdeploy-lpジョブを追加(server に依存させず並列実行)その他
.astro生成ディレクトリを除外CLAUDE.mdのデプロイ環境表に LP 列を追加、web/CLAUDE.mdから LP 関連の記述を削除Test plan
nepp-chan-lp-dev.pages.devまたはdev-lp.nepp-chan.ai)dev-web.nepp-chan.aiに遷移できるnepp-chan.aiが Basic 認証なしで公開される