Overview
Feathers is a lightweight web framework for creating APIs and real-time applications using TypeScript or JavaScript. It provides everything you need to build modern web and mobile applications with minimal boilerplate. Feathers can interact with any backend technology, supports many databases out of the box, and works with any frontend like React, VueJS, Angular, React Native, Android or iOS.Quick Start
Get your first Feathers app running in minutes with our step-by-step guide
Tutorial
Build a complete real-time application from scratch
Services
Learn about Feathers’ powerful service-oriented architecture
Real-time
Automatic real-time events via Socket.io and WebSockets
Installation
Get started with just three commands:Key Features
Service Architecture
Feathers is built around the concept of services. A service is an object or class that implements specific methods. Services provide a uniform, protocol-independent interface for interacting with data.packages/feathers/src/service.ts
find- Find all records (with optional query)get- Get a single record by IDcreate- Create a new recordupdate- Replace an existing recordpatch- Update specific fields of a recordremove- Remove a record
Real-time by Default
Feathers automatically sends real-time events when a service method creates, updates, patches, or removes data:packages/feathers/src/service.ts
Universal API
The same service interface works across multiple protocols:Powerful Hooks System
Hooks are middleware functions that can run before, after, or around service methods. They’re perfect for validation, authorization, logging, and more:packages/feathers/src/hooks.ts
Example
Database Agnostic
Feathers includes adapters for many popular databases:Memory
In-memory data store for testing
MongoDB
Native MongoDB adapter
SQL (Knex)
PostgreSQL, MySQL, SQLite via Knex.js
packages/memory/src/index.ts
Express and Koa Compatible
Feathers extends Express or Koa, so you can use any existing middleware:packages/express/src/index.ts
Example
Architecture Benefits
Type-Safe
Type-Safe
Full TypeScript support with generics for services, hooks, and configuration. Get autocomplete and type checking throughout your application.
Transport Agnostic
Transport Agnostic
Write your business logic once and expose it via REST, Socket.io, or any custom protocol. The same code works everywhere.
Scalable
Scalable
Service-oriented architecture makes it easy to split functionality into microservices as your application grows.
Extensible
Extensible
Hooks, middleware, and plugins allow you to customize every aspect of your application without modifying core code.
What’s Next?
Quick Start Guide
Create your first Feathers application in 5 minutes
Complete Tutorial
Build a full-featured chat application step by step
Community
- GitHub - Star the repo and contribute
- Discord - Join the community chat
- Documentation - Full documentation and guides
- NPM - View package details
Feathers is MIT licensed and maintained by a vibrant community of contributors. It powers applications for startups and enterprises alike.