https://github.com/isirmt/nextjsblogwithgitpat
Markdown blog using Next.js and GitHub API
https://github.com/isirmt/nextjsblogwithgitpat
githubapi nextjs14 tailwindcss
Last synced: 25 days ago
JSON representation
Markdown blog using Next.js and GitHub API
- Host: GitHub
- URL: https://github.com/isirmt/nextjsblogwithgitpat
- Owner: isirmt
- License: mit
- Created: 2024-08-07T04:08:43.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2026-02-24T09:40:02.000Z (3 months ago)
- Last Synced: 2026-02-24T12:43:14.899Z (3 months ago)
- Topics: githubapi, nextjs14, tailwindcss
- Language: TypeScript
- Homepage: https://blog.isirmt.com
- Size: 2.22 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README-jp.md
- License: LICENSE
Awesome Lists containing this project
README
# nextjs_blog_with_git_pat





## 概要
他のリポジトリの指定されたフォルダから`.md`を取得し、ブログとしてページを動的に構築します。
## Development環境下の開発
最初に不足するパッケージをインストールします
```bash
pnpm i
```
次に、開発環境を実行します
```bash
pnpm dev
```
## 環境変数
ローカル環境(`.env.local`)で次の環境変数をセットしてください。
- GIT_USERNAME: 対象ユーザー名
- GIT_REPO: 対象リポジトリ名
- GIT_POSTS_DIR: 対象リポジトリのMDファイルがあるフォルダ
- GIT_IMAGES_DIR: 対象リポジトリの画像フォルダ
- GIT_PROFILE_PATH: 対象リポジトリのプロフィールのMDまでのパス
- GIT_TOKEN: GitHub API (PAT) トークン
- NEXT_PUBLIC_RECAPTCHA_SITE_KEY: reCAPTCHAのサイトキー
- RECAPTCHA_SECRET_KEY: reCAPTCHAのシークレットキー
- GTM_ID: Google Tag Manager
公開URLも`.env.production`で変更してください
### ブログ用リポジトリの例
```tree:記事のディレクトリ構造
isirmt/example_blog_posts
├── posts/
│ ├── [シリーズ名]/
│ │ ├── (meta.json)
│ │ ├── 1.md
│ │ ├── 2.md
│ │ └── ...
│ └── 記事名.md
├── img/
│ ├── [任意]
│ └── 任意
└── profile/
└── index.md
```
この場合は環境変数を次のようにセットします。
- GIT_USERNAME=isirmt
- GIT_REPO=example_blog_posts
- GIT_POSTS_DIR=posts
- GIT_IMAGES_DIR=img
- GIT_PROFILE_PATH=profile/index.md
また、`/src/static/constant.ts`も必要に応じて変更してください
## ビルド
次を実行します。
```bash
pnpm build
```
```bash
pnpm start
```