📝

Dev Recap 2024 で今年のエンジニアリングを振り返ろう!

2024/12/29に公開

概要

自分の 1 年間の活動を振り返りたかったので作りました。

https://dev-recap.pages.dev/

アプリの画像

他にも似たようなのいくつかありますが、主に作った理由は以下の 2 つです。

  • 自分で見たい項目を選びたかった。(レビューした数とか)
  • OSS ではなく業務で書いてるのでプライペートリポジトリの情報を反映したかった。

免責

プライベートリポジトリの情報が反映されない可能性があります。
※ 正直あまり時間とれなかったので検証しきれなかった。。

ログインセッションからアクセストークンを使っています。

providers: [
  GitHub({
    authorization: {
      param: {
        scope: "repo",
      },
    },
  }),
],

権限を設定したつもりですが、もしかしたら見れないかもしれません。
プライベートリポジトリの情報が見れなくても、他にない項目とかあるからまぁいいか!と自分に言い聞かせました。

セルフホストする場合

権限の問題で組織のリポジトリやプライベートリポジトリにアクセスを許可できない場合は、セルフホストして env にトークンを設定してくれたら見れると思います。
GITHUB_TOKEN という名前の環境変数があればそちらを優先して使うように書いています。

const token = process.env.GITHUB_TOKEN ?? session.accessToken;

自分の場合はこれでプライベートリポジトリの内容も反映されました。

技術スタック

  • Next.js v15
  • Tailwind CSS
  • shadcn/ui
  • octokit/graphql.js
  • Cloudflare Pages

参考にしたリポジトリ

あまり作業時間とれなかったので UI を参考に(ほぼ丸パクり)させていただきました!
https://github.com/Kiranism/next-shadcn-dashboard-starter

おまけ

CLI だったら確実にプライベートリポジトリの情報反映できるのでいつもはこっち見てます
ターミナルの画像
https://github.com/namidapoo/gh-recap/

おわりに

まだ色々こだわれてないけど年越しそうなので公開しました 😅
気が向いたら来年以降触ろうと思います。
プライベートリポジトリの情報が見れないなら、ログインなくしてユーザー名入力する仕様に変えようかなとか。。

要望や修正などあれば 気軽に GitHub で連絡ください!
https://github.com/namidapoo/dev-recap/

Discussion