GitHubアクティビティと連携する開発者向けの日報・ジャーナル管理アプリケーション
GitJournalは、GitHub Discussionsを活用して日々の作業記録を管理するWebアプリケーションです。前日のGitHubアクティビティを自動的に収集し、構造化されたテンプレートで日報を作成・管理できます。
- 🔄 GitHubアクティビティの自動収集: 前日のコミット、PR、Issue等のアクティビティを自動取得
- 📝 構造化されたジャーナル: カスタマイズ可能なテンプレートで日報を作成
- 💾 GitHub Discussionsでの保存: バージョン管理と永続性を確保
- ✏️ リアルタイム編集: Markdownサポートでセクション単位の編集が可能
- 🔐 GitHub認証: OAuth認証によるセキュアなアクセス
- Framework: Next.js 15.0.4
- Language: TypeScript
- Styling: Tailwind CSS
- Authentication: NextAuth.js
- UI Components: React 19
- Language: Go
- Platform: Vercel Serverless Functions
- Library: github-nippou (GitHubアクティビティ収集)
- Node.js 18以上
- Go 1.19以上
- GitHubアカウント
- GitHub OAuth App(認証用)
- リポジトリをクローン
git clone https://github.com/NoritakaIkeda/GitJournal.git
cd GitJournal
- 依存関係のインストール
cd web
npm install
- 環境変数の設定
.env.local
ファイルを作成し、以下の変数を設定:
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your-secret-key
GITHUB_ID=your-github-oauth-app-id
GITHUB_SECRET=your-github-oauth-app-secret
- 開発サーバーの起動
npm run dev
アプリケーションは http://localhost:3000 でアクセス可能になります。
- ログイン: GitHubアカウントでログイン
- 日報作成: 「Create New Journal」から新規日報を作成
- GitHubアクティビティの取得: 前日のアクティビティが自動的に取得される
- 編集: 各セクションの編集ボタンから内容を編集
- 保存: 変更はGitHub Discussionsに自動保存される
GitJournal/
├── web/ # Next.js フロントエンド
│ ├── src/
│ │ ├── app/ # App Router
│ │ │ ├── api/ # API routes
│ │ │ └── feature/ # 機能コンポーネント
│ │ └── lib/ # ユーティリティ
│ └── public/ # 静的アセット
├── api/ # Go バックエンド
│ └── index.go # メインハンドラー
└── README.md # このファイル
# フロントエンド開発
cd web
npm run dev
# ビルド
npm run build
# Linting
npm run lint
cd api
go mod download
vercel dev
このプロジェクトはVercelでのデプロイに最適化されています。
- Vercelにプロジェクトをインポート
- 環境変数を設定
- デプロイ実行
このプロジェクトはMITライセンスの下で公開されています。
このプロジェクトは以下のプロジェクトに影響を受けています:
Issue報告やPull Requestは歓迎します。貢献する際は以下をご確認ください:
- Issueを作成して問題や提案を共有
- Forkしてfeatureブランチを作成 (
git checkout -b feature/amazing-feature
) - 変更をコミット (
git commit -m 'Add some amazing feature'
) - ブランチをPush (
git push origin feature/amazing-feature
) - Pull Requestを作成
問題や質問がある場合は、Issuesで報告してください。