English 简体中文 日本語 한국어 Français Deutsch Español
これは私の TypeScript フルスタックベストプラクティスプロジェクトです。データモデルを定義した後、バックエンド API コードを書くことなくフロントエンドから直接データベースを操作でき、MVP モデルを迅速に開発できます。
従来の管理画面ページには本当にうんざりしています。もう二度と書きたくありません。
-
バックエンド
- 技術スタック:TypeScript + Prisma + ZenStack + Effect + Fastify
- ZenStack(Prisma ベースの拡張ソリューション)を使用してデータベースモデリングと Row Level Security を実装。
-
ブリッジ
- 技術スタック:TypeScript + SuperJSON + 自社開発 RPC ライブラリ
- フロントエンドから直接バックエンド API を呼び出し、完全な TypeScript タイプヒントがあり、ミドルウェアコードを記述する必要がありません。
- SuperJSON は Date、Map、Set、RegExp などの複雑なオブジェクトのシリアライズとデシリアライズをサポートし、Prisma の引数と戻り値をシームレスに渡すことを保証します。
-
フロントエンド
- 技術スタック:TypeScript + Vue 3 + Tailwind CSS + PrimeVue コンポーネントライブラリ
- 完璧な i18n 国際化サポートを提供し、ページを再読み込みすることなくすべての詳細が多言語動的切り替えをサポートします。
- 明暗テーマ切り替え、コンポーネントと Tailwind CSS が動的切り替えを同期サポート。
- 実装された機能ページ
その他のアプリケーションデモ
- ブラウザ拡張機能 - InfoFlow
- https://wxt.dev/guide/installation.html に基づいて構築され、tsfullstack をブラウザ拡張機能のバックエンドサポートとして使用する方法を示します。
- プロジェクトをクローン
- 依存関係のインストール:backend ディレクトリに移動し、
pnpm iを実行して依存関係をインストール(エラーを無視:Failed to resolve entry for package "@tsfullstack/backend"、このパッケージは後の手順で生成します) - データベースの初期化:backend ディレクトリで
pnpm zenstack generateとpnpm prisma migrate devを実行 - @tsfullstack/backend API パッケージをコンパイル:backend ディレクトリで
pnpm build:libを実行(いくつかのタイプエラーが報告されますが、現時点では良い解決策が見つかっていませんが、使用には影響しないので無視してください) - バックエンドサービスを起動:backend ディレクトリで
pnpm devを実行 - フロントエンドサービスを起動:website-frontend ディレクトリで
pnpm devを実行
- プロジェクトベース
- apps/website-frontend がフロントエンドベースプロジェクト
- apps/backend がバックエンドベースプロジェクト
- モジュール化フロントエンド・バックエンドプロジェクトコード
- modules/*
- モジュール内のフロントエンドコードは、モジュール内のバックエンドコードインターフェースを直接参照できます