Fastify

Last updated • 1 min readFrom Wikipedia, The Free Encyclopedia

Fastify
Original author(s)
  • Matteo Collina
  • Tomas Della Vedova
Developer(s) Platformatic, OpenJS and others
Initial releaseSeptember 2016;8 years ago (2016-09) [1]
Stable release
5.1.0 / October 31, 2024; 21 days ago [2]   OOjs UI icon edit-ltr-progressive.svg
Repository
Written in JavaScript
Platform Node.js
Type Web framework
License MIT License
Website fastify.dev   OOjs UI icon edit-ltr-progressive.svg

Fastify is a performance-oriented backend web framework for Node.js, released as free and open-source software under an MIT License. Its development was inspired by Hapi and Express. [3]

Contents

As a lightweight alternative to other Node.js web API frameworks, [4] [5] benchmarks reveal it to be significantly faster. [6]

History

Fastify was conceived by Matteo Collina while working at NearForm in 2015. Collina and Tomas Della Vedova created Fastify in September 2016. [1] According to the Fastify GitHub repository, the initial release, version 0.1.0, was on October 17, 2016. [7]

Building upon the technical foundations of Fastify, Collina and Luca Maraschi create Platformatic in 2022, to support a "batteries-included" developer experience for building APIs (REST/OpenAPI or GraphQL). [8] [9]

Features

Core features include:

Popularity

Fastify is used by Capital One, Walmart, American Express [1] and others. [10]

See also

Related Research Articles

In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform.

Haluka was a experimental and hobby project back-end framework/stack built on top of express. It is no longer maintained and not recommend for production according to the Github repository.

<span class="mw-page-title-main">Vaadin</span> Web development platform written in Java

Vaadin is an open-source web application development platform for Java. Vaadin includes a set of Web Components, a Java web framework, and a set of tools that enable developers to implement modern web graphical user interfaces (GUI) using the Java programming language only, TypeScript only, or a combination of both.

<span class="mw-page-title-main">Node.js</span> JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web browser.

<span class="mw-page-title-main">Opa (programming language)</span>

Opa is a programming language for developing scalable web applications. It is free and open-source software released under a GNU Affero General Public License (AGPLv3), and an MIT License.

<span class="mw-page-title-main">Socket.IO</span> Library for realtime web applications

Socket.IO is an event-driven library for real-time web applications. It enables real-time, bi-directional communication between web clients and servers. It consists of two components: a client, and a server. Both components have a nearly identical API.

Meteor, or MeteorJS, is a partly proprietary, mostly free and open-source isomorphic JavaScript web framework written using Node.js. Meteor allows for rapid prototyping and produces cross-platform code. The server-side MongoDB program is the only proprietary component of Meteor and is part of the Meteor download bundle. It is possible to use Meteor without using the server-side MongoDB. It uses the Distributed Data Protocol and a publish–subscribe pattern to automatically propagate data changes to clients without requiring the developer to write any synchronization code. On the client, Meteor can be used with any popular front-end JS framework, Vue, React, Svelte, Angular, or Bazel.

<span class="mw-page-title-main">GraalVM</span> Virtual machine software

GraalVM is a Java Development Kit (JDK) written in Java. The open-source distribution of GraalVM is based on OpenJDK, and the enterprise distribution is based on Oracle JDK. As well as just-in-time (JIT) compilation, GraalVM can compile a Java application ahead of time. This allows for faster initialization, greater runtime performance, and decreased resource consumption, but the resulting executable can only run on the platform it was compiled for.

Express.js, or simply Express, is a back end web application framework for building RESTful APIs with Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js.

A headless browser is a web browser without a graphical user interface.

<span class="mw-page-title-main">React (software)</span> JavaScript library for building user interfaces

React is a free and open-source front-end JavaScript library that aims to make building user interfaces based on components more "seamless". It is maintained by Meta and a community of individual developers and companies.

<span class="mw-page-title-main">WebAssembly</span> Cross-platform assembly language and bytecode designed for execution in web browsers

WebAssembly (Wasm) defines a portable binary-code format and a corresponding text format for executable programs as well as software interfaces for facilitating communication between such programs and their host environment.

<span class="mw-page-title-main">Electron (software framework)</span> Development framework built on Chromium

Electron is a free and open-source software framework developed and maintained by OpenJS Foundation. The framework is designed to create desktop applications using web technologies that are rendered using a version of the Chromium browser engine and a back end using the Node.js runtime environment. It also uses various APIs to enable functionality such as native integration with Node.js services and an inter-process communication module.

<span class="mw-page-title-main">Webpack</span> Open-source JavaScript module bundler

Webpack is a free and open-source module bundler for JavaScript. It is made primarily for JavaScript, but it can transform front-end assets such as HTML, CSS, and images if the corresponding loaders are included. Webpack takes modules with dependencies and generates static assets representing those modules.

Angular is a TypeScript-based free and open-source single-page web application framework. It is developed by Google and by a community of individuals and corporations. Angular is a complete rewrite from the same team that built AngularJS. The Angular ecosystem consists of a diverse group of over 1.7 million developers, library authors, and content creators. According to the Stack Overflow Developer Survey, Angular is one of the most commonly used web frameworks.

<span class="mw-page-title-main">Enonic XP</span>

Enonic XP is a free and open-source web application platform and content management system (CMS) in one based on Java and Elasticsearch. Developed by the Norwegian software company Enonic, the microservice web platform can be used to build progressive web applications, Next.js websites, or web-based APIs. Enonic XP uses an application framework for coding server logic with JavaScript, and has no need for SQL as it ships with an integrated content repository. The CMS is fully decoupled, meaning developers can create traditional websites and landing pages, or use XP in headless mode, that is without the presentation layer, for loading editorial content onto any device or client. Enonic is used by major organizations in Norway, including the national postal service Norway Post, the insurance company Gjensidige, the national lottery Norsk Tipping, the Norwegian Labour and Welfare Administration, and all the top football clubs in the national football league for men, Eliteserien.

Next.js is an open-source web development framework created by the private company Vercel providing React-based web applications with server-side rendering and static rendering.

<span class="mw-page-title-main">Deno (software)</span> Secure JavaScript and TypeScript runtime

Deno is a runtime for JavaScript, TypeScript, and WebAssembly that is based on the V8 JavaScript engine and the Rust programming language. Deno was co-created by Ryan Dahl, who also created Node.js.

htmx is an open-source front-end JavaScript library that extends HTML with custom attributes that enable the use of AJAX directly in HTML and with a hypermedia-driven approach. These attributes allow for the dynamic definition of a web page directly in HTML and CSS, without the need for writing additional JavaScript. These attributes allows tasks that traditionally required writing JavaScript to be done completely with HTML. The library was created by Carson Gross as a new version of intercooler.js.

References

  1. 1 2 3 Collina, Matteo (May 17, 2023). "A tale of community: How the quest for better performance led to Fastify and grew into Platformatic". Blog. Platformatic. Retrieved 2024-11-19. A few months later, in June 2016, while delivering a Node.js training course at Avanscoperta in Bologna, an attendee asked me how to get started working in Open Source. His name was Tomas Della Vedova, and by the end of the course, I asked him if he wanted to build this Node.js framework with me. By September, we landed the first commit of what would later become Fastify.
  2. "Release 5.1.0". October 31, 2024. Retrieved November 18, 2024.
  3. "Fastify home page" . Retrieved 2024-11-20.
  4. Dindi, Sandra (March 22, 2023). "5 Node.js Packages to Build Your Next API". MakeUseOf. Retrieved 2024-11-20.
  5. Mulders, Michiel (October 19, 2020). "How to Create Your First REST API with Fastify". SitePoint . Retrieved 2024-11-20.
  6. Lawson, Loraine (October 11, 2023). "A Showdown Between Express.js and Fastify Web App Frameworks". The New Stack. Retrieved 2024-11-20.
  7. "Release v0.1.0". fastify/fastify. GitHub . Retrieved 2024-11-19.
  8. Scott, Josh (June 1, 2023). "Platformatic secures $3.5 million, launches tech to simplify back-end development for enterprises". BetaKit. Retrieved 2024-11-20.
  9. Williams, Marie (June 1, 2023). "Platformatic Raises $3.5M to Help Developers and Enterprises Evolve Microservices Without a Costly Rearchitecture of Legacy Backend". Business Wire . Retrieved 2024-11-20.
  10. "Organisations using Fastify". fastify.dev. Retrieved 2024-11-20.