GithubのシンプルなGithubの代替オープンソース(皮肉なこと?)、GitHubが動作するコア機能のいくつかを完全に機能させることを目的としています。
サポートされている機能の詳細については、#84を参照してください。
ものが壊れることを期待してください。
git pushおよびgit remoteコマンドをサポートしますまず、リポジトリをクローンする必要があります
git clone https://github.com/Fredkiss3/gh-next.gitDockerを開始するインスタンスを作成して、DB + Redisインスタンスを開始します。
docker-compose up -d --remove-orphans依存関係をインストールします。
pnpm install .env.exampleに.env.localに名前を変更し、ファイルをニーズに変更します。
プロジェクトを起動します:
pnpm run devアプリはhttp:// localhost:3000に表示されます。
ソースコードを開き、ロッキングを開始します! ?
このプロジェクトで表示されるトップレベルのファイルとディレクトリを簡単に見てみましょう。
.
├── src/
│ ├── app
│ ├── actions
│ ├── components
│ ├── models
│ └── lib/
│ ├── client
│ ├── server
│ └── shared
├── biome.json
├── pnpm-lock.yaml
└── tsconfig.json
src/app/ :このフォルダーには、アプリのすべてのルートとページが含まれています。
src/actions :このフォルダーには、アプリのすべてのロジックが含まれています。
src/components :このフォルダーには、アプリのすべてのコンポーネントが含まれています。
src/models :このフォルダーには、アプリのすべてのDBモデルが含まれています。
src/lib/ :このフォルダーには、アプリ全体で使用されるUTILSとヘルパーが含まれています。
client :このフォルダーには、クライアント専用のすべてのユーティリティが含まれており、通常はクライアントコンポーネントで使用されます。主にフックが含まれています
server :このフォルダーには、サーバーコンポーネントとサーバーアクション内で使用するために、サーバーのみのすべてのユーティリティが含まれています。また、 db/schema内のDBスキーマも含まれています
shared :このフォルダーには、サーバーとクライアントの間で共有されるすべてのユーティリティが含まれています。これらはアプリのどこでも使用できます。
biome.json :このファイルには、バイオームの構成がオートフォルミングを有効にするための構成が含まれています。
pnpm-lock.yaml :このファイルには、リポジトリの依存関係ロックが含まれています。
tsconfig.json :このファイルには、すべての基礎となるパッケージが使用するTypeScriptの構成が含まれています
| nom | 役割 |
|---|---|
SESSION_SECRET | セッションIDをエンコードするために使用されるランダム32 chars長さの文字列 |
REDIS_HTTP_URL | キー/バリューストアのredis httpへの接続へのURL |
DATABASE_URL | Postresデータベースへの接続へのURL |
REDIS_HTTP_USERNAME | キー値を保存するためのローカルファイルサーバーURL |
REDIS_HTTP_PASSWORD | キー値を保存するためのローカルファイルサーバーURL |
GITHUB_CLIENT_ID | GitHubでユーザーを認証するために使用されるアプリに保存されているGitHubクライアントID |
GITHUB_PERSONAL_ACCESS_TOKEN | GitHubを使用してユーザーを認証するために使用されるアプリ用に保存されているGitHubクライアントトークン |
GITHUB_REDIRECT_URI | ユーザーが認証されたときにリダイレクトするURL |
GITHUB_SECRET | Github Secretはアプリに保存されています |