【決定版】2022年~2023年で必ず確認するべきGitHubリポジトリ 40選
はじめに
今回の記事では、個人の独断と偏見で2022年~2023年で必ず確認するべきGitHubのリポジトリを紹介する。私のTwitterでこれまで紹介したものもあれば、そうではないものもある。
GitHubはプログラマーにとって、普段の学習・開発を進めるうえでもっとも重要な情報源の1つである。本記事では、分野ごとに確認するべきGitHubリポジトリを紹介する。
なお、今回の記事で紹介するGitHubリポジトリの分野は以下の通り。内容はWeb開発に特化している。
- 確認必須
- Web
- Python
- JavaScript
- TypeScript
ちなみに、「確認必須」は分野を問わずすべてのプログラマーに役立つGitHubリポジトリを紹介している。
今回の記事を通して、年末年始の学習・開発に大いに役立ててもらえたら幸いだ。
確認必須
freeCodeCamp
世界最大規模のプログラミングメディア「freeCodeCamp」のGitHubリポジトリである。扱う内容はWeb開発、モバイルアプリ開発やデータサイエンスなど多岐に渡る。特に、PythonやReact、Node.jsやFlutterを実務で触るプログラマーは必見だ。
最大の特徴は完全無料でこれらの情報を学べることだ。初心者から上級者まで毎日確認しておくべきGitHubリポジトリである。
developer-roadmap
分野ごと(フロントエンド、バックエンド、モバイル、機械学習など)に最低限学ぶべき基本的な知識やマスターするべきテクニック、概念を図解でまとめてられているGitHubリポジトリ。
プログラミングの勉強方法がわからないなら絶対に確認しておくべきだ。
free-programming-books
ネット上にあるすべての無料のプログラミング・エンジニアリング関連の書籍をまとめたGitHubリポジトリ。技術書の相場はおおよそ2,000~3,000円程度するものの、こちらのリポジトリに掲載されている書籍はすべて無料で読める。さらに、数多くの言語に対応しているのもメリットだ。
無料の電子書籍ではなく、無料のオンライン動画などの情報も含まれている。freeCodeCampとセットで確認しておきたい。
design-resources-for-developers
デザインやUIに関する情報を1つに掲載したGitHubリポジトリ。Webデザインで使えるフォント、画像、ライブラリやデザイン集などを1つのリポジトリにまとめられている。
Webデザインで生計を立てるなら絶対に確認しておきたい。
free-for-dev
無料で使えるSaaS、PaaSやIaaSなどのソフトウェアをまとめられているGitHubリポジトリ。主にインフラ関連で生計を立てるプログラマーに限定されるものの、個人開発でクラウド関連の知識は必要不可欠だ。
無料で使えるクラウド関連のソフトウェアを探すなら絶対に確認しておくべきだろう。
software-architecture-books
ソフトウェアアーキテクチャを学習できる書籍(洋書)をまとめられている。ソフトウェアアーキテクチャは開発を円滑に進めるために必要不可欠な知識だ。その最大の理由は、プログラマー間で共通認識を作れることである。
ソフトウェアアーキテクチャを学べる書籍がわからない場合、以下のGitHubリポジトリにアクセスしておこう。
awesome
効率的に開発を進められるツール、ライブラリやフレームワーク等をまとめたGitHubリポジトリである。
GitHubDaily
学習・開発で重宝するGitHubリポジトリを言語や分野別にまとめられているリポジトリ。ただし、中国語で書かれているので使う際にはDeepLで読み進めることを推奨する。
system-design-primer
大規模システムの設計・開発の基礎的な内容を徹底解説しているGitHubリポジトリ。システム設計・開発を学ぶ上で必要なポイントが丁寧にまとめられている。テキストの羅列ではなく、図解もセットで説明されているので理解しやすい。
システム設計・開発に携わるプログラマーは全員確認するべきである。
github-cheat-sheet
学習・開発でGitHubを使う上で必ず理解しておくべきコマンドがまとめられている。
awesome-github-profile-readme
世界中のGitHubアカウントのREADME
を1つにまとめたGitHubリポジトリ。GitHubのREADME
を整える上で重宝するサービスやツールも同時に掲載されている。
GitHubのREADME
の見た目を整えたい人は確認して損はない。OSSを開発する上でREADME
を制作するときにも重宝する。
Web
Web-Dev-For-Beginners
Microsoftが提供している、Web開発の基礎知識を学べるGitHubリポジトリ。Web開発を学習する上でやkづ圧動画やネット記事が豊富である。Web開発の基本を学習する上では絶対に欠かせない。
Web開発を学びたいプログラミング初心者は確認して損はない。
public-apis
世界中で扱えるAPIをまとめたGitHubリポジトリ。ゲームやアニメなどのエンタメから、ビジネスまで幅広い分野を扱う。APIを用いたWebアプリを開発したいなら必ず確認しておきたい。
json-server
簡単なダミーデータを取り扱うAPIのプログラムである。自分が開発したアプリケーションでテストを行う上で重宝する。
APIを使って開発を進めるプログラマーは全員確認すべきだ。
api-guidelines
Microsoftが提供している、REST APIに関するチュートリアルや基礎知識を丁寧に解説しているGitHubリポジトリ。
REST APIを実務で開発するプログラマーや、REST APIについて理解を深めたいプログラマーは絶対に確認しておくべきだろう。
graphql-apis
GraphQLで開発されたAPIを一覧形式でまとめたGitHubリポジトリ。GraphQLの活用事例を確認する上では絶対に外せない。
API-Security-Checklist
セキュリティ性の高いAPIを開発する上で最低限満たしておくべき要件を丁寧にまとめられているGitHubリポジトリ。API設計・開発で生計を立てるプログラマーは絶対に確認しておくべきだ。
Python
awesome-python
Pythonのフレームワーク、ライブラリや開発ツールなどを1つにまとめたGitHubリポジトリ。分野が多岐にわたっている。実務でPythonを使っているプログラマーは全員確認するべき。
PyPattyrn
デザインパターンを自分のプロジェクトに簡単、かつ迅速に実装することを目的としたPythonのライブラリである。開発でよく使われるデザインパターンを一から手動で実装せずにすぐ使えるように開発された。
TheAlgorithms
Pythonで実装されたアルゴリズムが丁寧にまとめられているGitHubリポジトリ。AtCoderなどの競技プログラミングやコーディング試験で重宝する。
oauthlib
PythonでOAuth認証を効率よく実装するためのライブラリ。実務でPythonを使ったOAuthを実装しなければならない場合、これさえ使っておけば問題ないだろう。
mkdocs
Pythonで開発された、プロジェクトのドキュメントを設計するための高速かつシンプルな静的サイトジェネレータである。Markdownに対応して使いやすいように設計されているのがポイント。
Pythonを使ってドキュメントを制作する場合は必ず視野に入れておくべき。
Django REST Framework
PythonのWebフレームワーク「Django」でREST APIを開発できるサードパーティ製ライブラリである。公式ドキュメントにチュートリアルが掲載されているので、初心者でもサンプルコードを順番にコピペすれば簡単にAPIを開発できる。
PythonでAPIを設計・開発したいなら視野に入れておくべきだろう。
fastapi
PythonのWebフレームワーク「FastAPI」の公式リポジトリ。こちらもDjango REST Framework同様にPythonでAPIを開発するなら視野に入れておくべき重要な技術になる。
FastAPIはDjango REST Frameworkと違って必要最低限の機能しか搭載されていない。それゆえに、開発に多様性を持たせたいさいに選ぶべきだろう。
ariadne
GraphQLサーバを実装できるPythonのライブラリである。実装できる機能が非常に豊富で、公式ドキュメントが非常にわかりやすく学びやすい。
PythonでGraphQL APIを開発するなら視野に入れておくべき。
openai-python
Pythonで開発されたアプリケーションから、OpenAI APIへ簡単にアクセスできるように設計されたライブラリ。
余談だが、OpenAIはChatGPTを開発・運営している企業だ。ChatGPTを使ったアプリケーションを開発したい場合、こちらのリポジトリが参考になるだろう。
JavaScript
javascript-algorithms
JavaScriptで実装された、数多くある一般的なアルゴリズムやデータ構造をまとめられているGitHubリポジトリ。TheAlgorithmsと同様に、AtCoderやコーディング試験で重宝する。
clean-code-javascript
JavaScriptの良いコードと悪いコードを比較して、良質なコードを書くためのテクニックを詳細に解説されている。
airbnb-javascript
Airbnbで採用されているJavaScriptのコーディング規約がまとめられているGitHubリポジトリ。コーディング規約をまとめるうえで参考になる。
JavaScriptで生計を立てたいプログラマーは全員確認するべき。
30-seconds-of-code
JavaScriptの学習・開発で重宝するコード(いわゆるSnippet)がまとめられている。JavaScriptで効率よく学習・開発を進めたいなら絶対に確認して損はない。
prettier
JavaScriptで開発されたコードの見た目を整形できるツール。
Node.js Best Practices
Node.jsで開発を進める上で確認しておきたいベストプラクティスがまとめられている。Node.jsで生計を立てるプログラマーは全員確認しておくべき。日本語にも対応している。
Front-End-Checklist
フロントエンドの開発を進める上で必ず確認するべき要件を一覧形式でまとめられている。フロントエンド開発で生計を立てるプログラマーは全員確認するべき。
TypeScript
awesome-typescript
TypeScriptの学習・開発に役立つツール、サイトや書籍を1つにまとめているGitHubリポジトリ。TypeScriptを学習・開発で使っているなら絶対に確認しておくべき。
Deno
Rust言語で開発されたJavaScript/TypeScript実行環境である。Node.jsの問題を解決するために開発された。Node.jsとの最大の違いは、TypeScriptファイルをスクリプトとして実行できることである。
NestJS
TypeScriptで開発されたNode.jsフレームワーク。主な特徴は以下の通り。
- デフォルトでTypeScriptが使えること
- コマンド一つで開発に必要な雛形を出力できること
TypeScriptでバックエンドを開発する上では絶対に外せない重要な技術である。
type-challenges
TypeScriptの型定義の仕組みを理解するために作られたGitHubリポジトリ。内容は、TypeScriptの型定義を理解する上で参考になる情報(公式ドキュメント、ネット記事や書籍なsど)が中心である。
TypeScriptの型定義に関する理解が曖昧なら、確認して損はない。
Prisma
TypeScriptとNode.jsで開発されたORM。最大の特徴は、独自の言語でデータベースのモデルを設計できることである。(以下のコードを参照)REST APIやGraphQL両方に対応している。
今後TypeScriptのプロジェクトでデータベースと連携させる上では絶対に外せない。
Docusaurus
オープンソースプロジェクトのWebサイトを簡単に制作、デプロイや運営するためのプロジェクト。React(TypeScript)の前提知識さえあれば簡単に扱える。
余談だが、「サバイバルTypeScript」でも採用されている。
editor.js
TypeScriptで開発された、テキストエディタを実装できるライブラリ。簡単なテキストエディタをこのライブラリ1つで実装できるのが最大の特徴。
NoteやMediumのようなブログサービスを開発する上で重宝する。
まとめ
今回の記事では、分野ごとに年末年始で確認するべきGitHubリポジトリを40も紹介した。年末年始の時間をフル活用して、GitHubマスターになろう。
参考サイト
Discussion