メインコンテンツまでスキップ

Fastify

Overview

Fastifyについてまとめているセクション

FastifyはNode.js最速のWebフレームワークで Express.jsKoa.js の開発が落ち着いているのとは対象的に、現在も活発に開発されている。 TypeScript で書かれてはいないが、型定義などはほぼ全てのパッケージで丁寧に記述されており、TypeScript で書く上で困ることはない。

歴史

Fastify は、もともと Matteo さんがコンサルをしていた時のクライアントに、ある Express 製のアプリケーションを速くしてくれと頼まれたのがきっかけで産まれました。最初は Logger の改善から始めたらしいですが、調べていくと Web フレームワーク自体を速くする必要があったため、 Fastify を作るに至ったらしいですね。その誕生エピソードもさることながら、現在に至るまで Fastify はオープンなコミュニティが形成されており、プルリクへの反応も早いですし、新しい機能などもテストさえ書いていれば積極的に取り入れていく傾向にあります。また周辺のエコシステムも活発で、 GraphQL のフレームワークである Mercurius や WebSocket 拡張の fastify-ws 、各種 View ライブラリとの統合である point-of-view など、だいたい Express でやっていたことは Fastify で実現できるので、もう Express を使うことはなくなってきたのではないでしょうか。私も2018年くらいから Express を使うのをやめて、以降新規プロジェクトでは Fastify を使うようにしています。

Resource

Fastify リファレンス