From 6c93dd2b890394279f1b23d4b542b9deec9379a5 Mon Sep 17 00:00:00 2001 From: namidapoo <83203852+ve1997@users.noreply.github.com> Date: Thu, 26 Dec 2024 09:08:13 +0900 Subject: [PATCH 1/4] =?UTF-8?q?feat:=20=E8=AA=8D=E8=A8=BC=E5=AE=9F?= =?UTF-8?q?=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/auth/[...nextauth]/route.ts | 4 ++++ bun.lockb | Bin 195873 -> 199834 bytes lib/auth.ts | 5 +++++ middleware.ts | 14 ++++++++++++++ package.json | 1 + 5 files changed, 24 insertions(+) create mode 100644 app/api/auth/[...nextauth]/route.ts create mode 100644 lib/auth.ts create mode 100644 middleware.ts diff --git a/app/api/auth/[...nextauth]/route.ts b/app/api/auth/[...nextauth]/route.ts new file mode 100644 index 0000000..8edc1c6 --- /dev/null +++ b/app/api/auth/[...nextauth]/route.ts @@ -0,0 +1,4 @@ +import { handlers } from "@/lib/auth"; + +export const runtime = "edge"; +export const { GET, POST } = handlers; diff --git a/bun.lockb b/bun.lockb index 72bd292a3e0f3b245e5849f37b3f71eafb850b08..e5ed4050362e9d369ce025778ab09feccd972e83 100755 GIT binary patch delta 36129 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 diff --git a/lib/auth.ts b/lib/auth.ts new file mode 100644 index 0000000..e8e42a1 --- /dev/null +++ b/lib/auth.ts @@ -0,0 +1,5 @@ +import NextAuth from "next-auth"; +import GitHub from "next-auth/providers/github"; +export const { handlers, auth, signIn, signOut } = NextAuth({ + providers: [GitHub], +}); diff --git a/middleware.ts b/middleware.ts new file mode 100644 index 0000000..906515a --- /dev/null +++ b/middleware.ts @@ -0,0 +1,14 @@ +import { auth } from "@/lib/auth"; +import { type NextRequest, NextResponse } from "next/server"; + +export async function middleware(req: NextRequest) { + const session = await auth(); + if (!session) { + return NextResponse.redirect(new URL("/api/auth/signin", req.url)); + } + return NextResponse.next(); +} + +export const config = { + matcher: ["/((?!api|_next/static|_next/image|favicon.ico).*)"], +}; diff --git a/package.json b/package.json index 0dd4957..b715f3b 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "clsx": "^2.1.1", "lucide-react": "^0.469.0", "next": "15.1.2", + "next-auth": "^5.0.0-beta.25", "react": "^19.0.0", "react-dom": "^19.0.0", "tailwind-merge": "^2.5.5", From 8fa57d49418eff694da60d23cb2e3ac1d080cb71 Mon Sep 17 00:00:00 2001 From: namidapoo <83203852+ve1997@users.noreply.github.com> Date: Thu, 26 Dec 2024 09:11:05 +0900 Subject: [PATCH 2/4] =?UTF-8?q?docs:=20PR=E3=83=86=E3=83=B3=E3=83=97?= =?UTF-8?q?=E3=83=AC=E3=83=BC=E3=83=88=E3=81=AE=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/PULL_REQUEST_TEMPLATE.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..783771a --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,16 @@ +## issue + +## 変更内容 + +## 確認したこと + +## スクリーンショット + +## 補足事項 + +## PR 時のセルフチェック + +- [ ] 関数や変数の命名は一目で分かるものになってますか? +- [ ] コメントは適切な量で、誰が見ても分かるコメントになってますか? +- [ ] PR 内容に関するテストは書きましたか? +- [ ] Issue の完了の定義は満たせていますか? From 3e087c76a0d985e711ed68dddd44968dad66f0bf Mon Sep 17 00:00:00 2001 From: namidapoo <83203852+ve1997@users.noreply.github.com> Date: Thu, 26 Dec 2024 09:11:20 +0900 Subject: [PATCH 3/4] =?UTF-8?q?docs:=20ISSUE=E3=83=86=E3=83=B3=E3=83=97?= =?UTF-8?q?=E3=83=AC=E3=83=BC=E3=83=88=E3=81=AE=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/ISSUE_TEMPLATE/bug.md | 20 +++++++++++++++++ .github/ISSUE_TEMPLATE/feature.md | 17 ++++++++++++++ .github/ISSUE_TEMPLATE/story.md | 37 +++++++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/task.md | 17 ++++++++++++++ 4 files changed, 91 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug.md create mode 100644 .github/ISSUE_TEMPLATE/feature.md create mode 100644 .github/ISSUE_TEMPLATE/story.md create mode 100644 .github/ISSUE_TEMPLATE/task.md diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md new file mode 100644 index 0000000..f56c34e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.md @@ -0,0 +1,20 @@ +--- +name: バグレポート +about: レポートを作成して改善に役立てる +title: "[BUG] バグの内容" +labels: bug +assignees: "" +--- + +## バグの内容 + +## 再現方法 + +1. +2. + +## 想定動作 + +## スクリーンショット + +## 補足 diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md new file mode 100644 index 0000000..843f52c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.md @@ -0,0 +1,17 @@ +--- +name: 機能要望 +about: プロジェクトに機能を要望する +title: "[FEATURE] 機能名" +labels: feature +assignees: "" +--- + +## 機能の説明 + +```[tasklist] +## Story +``` + +## 背景 + +## 課題・検討・補足 diff --git a/.github/ISSUE_TEMPLATE/story.md b/.github/ISSUE_TEMPLATE/story.md new file mode 100644 index 0000000..1b0c546 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/story.md @@ -0,0 +1,37 @@ +--- +name: ストーリー +about: ユーザーストーリー +title: "[STORY] 〜をする、〜をしたい" +labels: story +assignees: "" +--- + +## ストーリーの目的 + +## 経緯・背景 + +## 実現方法/UI + +## 受入条件・完了の定義 + +## 詳細タスク + +```[tasklist] +### 調査 +``` + +```[tasklist] +### 設計 +``` + +```[tasklist] +### フロント実装 +``` + +```[tasklist] +### バックエンド実装 +``` + +```[tasklist] +### テスト +``` diff --git a/.github/ISSUE_TEMPLATE/task.md b/.github/ISSUE_TEMPLATE/task.md new file mode 100644 index 0000000..96aeb66 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/task.md @@ -0,0 +1,17 @@ +--- +name: タスク +about: タスクを作成する +title: "[TASK] タスク内容" +labels: "" +assignees: "" +--- + +## タスク + +## 資料 + +## 作業 + +```[tasklist] +### tasks +``` From f1f78a1056de98411850abf600bc55a9a33b5693 Mon Sep 17 00:00:00 2001 From: namidapoo <83203852+ve1997@users.noreply.github.com> Date: Thu, 26 Dec 2024 09:19:06 +0900 Subject: [PATCH 4/4] =?UTF-8?q?chore:=20`.env.example`=E3=81=AE=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.example | 3 +++ .gitignore | 1 + 2 files changed, 4 insertions(+) create mode 100644 .env.example diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..f2333ad --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +AUTH_SECRET= +AUTH_GITHUB_ID= +AUTH_GITHUB_SECRET= diff --git a/.gitignore b/.gitignore index 5ef6a52..7b8da95 100644 --- a/.gitignore +++ b/.gitignore @@ -32,6 +32,7 @@ yarn-error.log* # env files (can opt-in for committing if needed) .env* +!.env.example # vercel .vercel