What is Fastify?
Who uses Fastify?
Here are some stack decisions, common use cases and reviews by companies and developers who chose Fastify in their tech stack.
I'm building most projects using: Server: either Fastify (all projects going forward) or ExpressJS on Node.js (existing, previously) on the server side, and Client app: either Vuetify (currently) or Quasar Framework (going forward) on Vue.js with vuex on Electron for the UI to deliver both web-based and desktop applications for multiple platforms.
The direct support for Android and iOS in Quasar Framework will make it my go-to client UI platform for any new client-side or web work. On the server, I'll probably use Fastly for all my server work, unless I get into Go more in the future.
Update: The mobile support in Quasar is not a sufficiently compelling reason to move me from Vuetify. I have decided to stick with Vuetify for a UI for Vue, as it is richer in components and enables a really great-looking professional result. For mobile platforms, I will just use Cordova to wrap the Vue+Vuetify app for mobile, and Electron to wrap it for desktop platforms.
- 100% asynchronous: all the core is implemented with asynchronous code, in this way not even a millisecond is wasted.
- Highly performant: as far as we know, Fastify is one of the fastest web frameworks in town, depending on the code complexity we can serve up to 20000 request per second.
- Extendible: Fastify is fully extensible via its hooks, plugins and decorators.
- Schema based: even if it is not mandatory we recommend to use JSON Schema to validate your routes and serialize your outputs, internally Fastify compiles the schema in an highly performant function.
- Logging: logs are extremely important but are costly
- we chose the best logger to almost remove this cost, Pino!
- Developer friendly: the framework is built to be very expressive and help the developer in his daily use, without sacrificing performance and security.