{"id":23143975,"url":"https://github.com/arata1202/nextblogapp","last_synced_at":"2026-04-07T22:31:31.716Z","repository":{"id":239525488,"uuid":"795273609","full_name":"Arata1202/NextBlogApp","owner":"Arata1202","description":"個人ブログ「リアル大学生」｜Next.js SSG","archived":false,"fork":false,"pushed_at":"2026-03-29T05:40:30.000Z","size":15997,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-29T08:10:40.581Z","etag":null,"topics":["cloudflare","go","microcms","nextjs","onesignal","tailwindcss","typescript","vercel"],"latest_commit_sha":null,"homepage":"https://realunivlog.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Arata1202.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-05-02T23:41:49.000Z","updated_at":"2026-03-29T05:40:34.000Z","dependencies_parsed_at":"2024-05-17T12:47:11.335Z","dependency_job_id":"71010f8b-9b8a-426f-a75c-22440689cf8b","html_url":"https://github.com/Arata1202/NextBlogApp","commit_stats":null,"previous_names":["arata1202/nextblogapp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Arata1202/NextBlogApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arata1202%2FNextBlogApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arata1202%2FNextBlogApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arata1202%2FNextBlogApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arata1202%2FNextBlogApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Arata1202","download_url":"https://codeload.github.com/Arata1202/NextBlogApp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arata1202%2FNextBlogApp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31532194,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare","go","microcms","nextjs","onesignal","tailwindcss","typescript","vercel"],"created_at":"2024-12-17T15:14:35.895Z","updated_at":"2026-04-07T22:31:31.698Z","avatar_url":"https://github.com/Arata1202.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv id=\"top\"\u003e\u003c/div\u003e\n\n\u003cdiv align=\"right\"\u003e\n\n![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/Arata1202/NextBlogApp/vercel_deploy.yml)\n![GitHub License](https://img.shields.io/github/license/Arata1202/NextBlogApp)\n\n\u003c/div\u003e\n\n![2](/.docs/readme/images/title.png)\n\n## 目次\n\n- [リアル大学生](#top)\n  - [目次](#目次)\n  - [リンク一覧](#リンク一覧)\n  - [主な機能一覧](#主な機能一覧)\n  - [使用技術](#使用技術)\n  - [環境構築](#環境構築)\n  - [ディレクトリ構成](#ディレクトリ構成)\n  - [Gitの運用](#Gitの運用)\n    - [ブランチ](#ブランチ)\n    - [コミットメッセージの記法](#コミットメッセージの記法)\n\n## リンク一覧\n\n\u003cul\u003e\u003cli\u003e\u003ca href=\"https://realunivlog.com\"\u003eリアル大学生\u003c/a\u003e\u003c/li\u003e\u003c/ul\u003e\n\u003cul\u003e\u003cli\u003e\u003ca href=\"https://www.figma.com/design/Fa4LsgTvBhWAu4sIcwYy1O/NextBlogApp?node-id=0-1\u0026node-type=canvas\u0026t=zcqCjvUj22ccvYpV-11\"\u003eFigma\u003c/a\u003e\u003c/li\u003e\u003c/ul\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n\n## 主な機能一覧\n\n※本番環境ではGoogle AdSenseによる広告が表示されます。\n\n| 最新記事ページ                     | 　カテゴリーページ                               |\n| ---------------------------------- | ------------------------------------------------ |\n| ![1](/.docs/readme/images/1.png)   | ![2](/.docs/readme/images/2.png)                 |\n| 最新記事を一覧表示するページです。 | 特定のカテゴリーの記事を一覧表示するページです。 |\n\n| タグページ                                 | お問い合わせページ                   |\n| ------------------------------------------ | ------------------------------------ |\n| ![3](/.docs/readme/images/3.png)           | ![7](/.docs/readme/images/7.png)     |\n| 特定のタグの記事を一覧表示するページです。 | 管理者にお問い合わせするページです。 |\n\n| アーカイブページ                           | 　記事ページ                     |\n| ------------------------------------------ | -------------------------------- |\n| ![5](/.docs/readme/images/5.png)           | ![6](/.docs/readme/images/6.png) |\n| 特定の年月の記事を一覧表示するページです。 | 記事を表示するページです。       |\n\n| サイトマップ・RSS                            | 　ダークテーマ                                         |\n| -------------------------------------------- | ------------------------------------------------------ |\n| ![9](/.docs/readme/images/9.png)             | ![8](/.docs/readme/images/8.png)                       |\n| XML形式のサイトマップとRSSを公開しています。 | ライトテーマとダークテーマを切り替えることができます。 |\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n\n## 使用技術\n\n| Category          | Technology Stack                              |\n| ----------------- | --------------------------------------------- |\n| Frontend          | Next.js, TypeScript, Tailwind CSS             |\n| Backend           | Go                                            |\n| CMS               | MicroCMS                                      |\n| Infrastructure    | Cloudflare Pages, Vercel                      |\n| Environment setup | Docker                                        |\n| CI/CD             | GitHub Actions                                |\n| Design            | Figma, Canva                                  |\n| Google            | AdSense, Analytics, Search Console, reCAPTCHA |\n| etc.              | PWA, OneSignal, Pipedream                     |\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n\n## 環境構築\n\n```\n# リポジトリのクローン\ngit clone git@github.com:Arata1202/NextBlogApp.git\ncd NextBlogApp\n\n# .env.exampleから.envを作成\nmv .env.example .env\n\n# .envの編集\nvi .env\n\n# コンテナのビルドと起動\ndocker compose up -d --build\n\n# ブラウザにアクセス\nhttp:localhost:3000\n\n# コンテナの停止\ndocker compose down\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n\n## ディレクトリ構成\n\n```\n❯ tree -a -I \"node_modules|.next|.git|out|.vercel|_|.DS_Store|.env|next-env.d.ts|tmp\" -L 3\n.\n├── .air.toml\n├── .docker\n│   ├── go\n│   │   └── Dockerfile\n│   └── js\n│       └── Dockerfile\n├── .docs\n│   └── readme\n│       └── images\n├── .env.example\n├── .github\n│   └── workflows\n│       └── vercel_deploy.yml\n├── .gitignore\n├── .husky\n│   └── pre-commit\n├── .nvmrc\n├── .prettierignore\n├── .prettierrc\n├── .vercelignore\n├── .vscode\n│   ├── extensions.json\n│   └── settings.json\n├── LICENSE\n├── README.md\n├── api\n│   ├── recaptcha.go\n│   └── sendemail.go\n├── cmd\n│   └── main.go\n├── docker-compose.yml\n├── eslint.config.mjs\n├── go.mod\n├── next.config.ts\n├── package-lock.json\n├── package.json\n├── pnpm-lock.yaml\n├── postcss.config.mjs\n├── public\n│   ├── OneSignalSDKWorker.js\n│   ├── ads.txt\n│   ├── app-ads.txt\n│   ├── favicon.ico\n│   ├── images\n│   │   ├── blog\n│   │   ├── head\n│   │   ├── plugin\n│   │   ├── post\n│   │   ├── pwa\n│   │   └── thumbnail\n│   └── robots.txt\n├── src\n│   ├── app\n│   │   ├── archive\n│   │   ├── articles\n│   │   ├── category\n│   │   ├── contact\n│   │   ├── copyright\n│   │   ├── disclaimer\n│   │   ├── layout.module.css\n│   │   ├── layout.tsx\n│   │   ├── link\n│   │   ├── manifest.json\n│   │   ├── not-found.module.css\n│   │   ├── not-found.tsx\n│   │   ├── p\n│   │   ├── page.tsx\n│   │   ├── privacy\n│   │   ├── profile\n│   │   ├── sitemap.ts\n│   │   └── tag\n│   ├── components\n│   │   ├── Common\n│   │   ├── Features\n│   │   ├── Pages\n│   │   └── ThirdParties\n│   ├── constants\n│   │   ├── archive.ts\n│   │   ├── category.ts\n│   │   ├── data.ts\n│   │   ├── limit.ts\n│   │   └── tag.ts\n│   ├── contents\n│   │   ├── copyright.ts\n│   │   ├── disclaimer.ts\n│   │   ├── link.ts\n│   │   ├── privacy.ts\n│   │   └── profile.ts\n│   ├── contexts\n│   │   ├── ThemeProvider.tsx\n│   │   └── ThemeWrapper.tsx\n│   ├── hooks\n│   │   ├── useExtractHeadings.ts\n│   │   └── useMutationObserver.ts\n│   ├── libs\n│   │   ├── microcms.ts\n│   │   └── rss.ts\n│   ├── styles\n│   │   ├── globals.css\n│   │   └── plugin.css\n│   ├── types\n│   │   ├── form.ts\n│   │   ├── heading.ts\n│   │   └── microcms.ts\n│   └── utils\n│       └── formatDate.ts\n├── tailwind.config.ts\n├── tsconfig.json\n└── vercel.json\n\n49 directories, 67 files\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n\n## Gitの運用\n\n### ブランチ\n\nGitHub Flowを使用する。\nmasterとfeatureブランチで運用する。\n\n| ブランチ名 |   役割   | 派生元 | マージ先 |\n| :--------: | :------: | :----: | :------: |\n|   master   | 本番環境 |   -    |    -     |\n| feature/\\* | 機能開発 | master |  master  |\n\n### コミットメッセージの記法\n\n```\nfix: バグ修正\nfeat: 新機能追加\nupdate: 機能更新\nchange: 仕様変更\nperf: パフォーマンス改善\nrefactor: コードのリファクタリング\ndocs: ドキュメントのみの変更\nstyle: コードのフォーマットに関する変更\ntest: テストコードの変更\nrevert: 変更の取り消し\nchore: その他の変更\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eトップへ\u003c/a\u003e)\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farata1202%2Fnextblogapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farata1202%2Fnextblogapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farata1202%2Fnextblogapp/lists"}