ポートフォリオサイトのソースコードです。GraphCMS、 GitHub API v4、 Qiita Api v2をNext.js上で動かしています。
GraphCMSのエンドポイント、GitHubのpersonal access tokenと、Qiitaのtokenがあればポートフォリオサイトを作成することができます。
- Node.js v14.15.0
- Yarn above v1.x.x
下記手順でリポジトリのクローンが可能です。
git clone ...
cd portfolio
yarn下記コマンドを実行するとデバッグを行うことができます。
yarn devroduction build をするには、下記コマンドを実行してください。
yarn build
yarn start下記の環境変数を.envファイルに追加してください。
QIITA_ACCESS_TOKEN="your Qiita access token"
GITHUB_PERSONAL_ACCESS_TOKEN="your GitHub personal access token"
GRAPHCMS_API="your Graphcms API endpoint"
NEXT_PUBLIC_GTM_ID="your GTM ID"
NEXT_PUBLIC_FORMSPREE_ENDPOINT="your Formspree endpoint"下記のスキーマがあれば、同じようなポートフォリオサイトが作成可能です。
単純なプロフィール項目
| field | type | unique | required | Title |
|---|---|---|---|---|
| title | Single line text | ✅ | ||
| detail | Single line text |
資格のバッジを登録
| field | type | unique | required | Title |
|---|---|---|---|---|
| image | Asset picker | ✅ | ||
| title | Single line text | ✅ | ✅ | ✅ |
| width | Number | |||
| height | Number |
- width : imageのwidth
- height : imageのheight
経歴を登録
| field | type | unique | required | Title |
|---|---|---|---|---|
| title | Single line text | ✅ | ✅ | |
| startYMD | Date | ✅ | ||
| endYMD | Date | |||
| detail | Markdown |
- endYMD : 継続中の場合は未来日付を設定。
取得した資格を登録
| field | type | unique | required | Title |
|---|---|---|---|---|
| name | Single line text | ✅ | ✅ | ✅ |
| YYMM | Date | |||
| Badge | Reference |
- Badge : badgeスキーマと紐づけ。
スキルを登録
| field | type | unique | required | Title |
|---|---|---|---|---|
| name | Single line text | ✅ | ✅ | ✅ |
| star | Float |
- star : スキルを5段階で評価。 "Limit input range" ... between 1-5で設定してください。
スキルをグループ分けする
| field | type | unique | required | Title |
|---|---|---|---|---|
| category | Single line text | ✅ | ✅ | ✅ |
| Skills | Referense | |||
| orderID | Number |
- Skills : skillスキーマと紐づけ。 "Allow multiple Skills per SkillList"にもチェックを入れてください。
- Qiita API v2 ドキュメント - Qiita:Developer
- GitHub の GraphQL API - GitHub Docs
- Explorer - GitHub Docs
- Queries | GraphCMS
このプロジェクトは、MIT ライセンスのもとで実施されます。
詳細は LICENSE ファイルを参照。
