Open-source toolkit for reliable service-to-service communication.
dfsync provides a set of lightweight tools for building reliable communication between backend services, microservices and integrations.
The project focuses on predictable networking behavior, consistent error handling and TypeScript-first APIs.
Most clients are designed for browser or general use.
dfsync focuses specifically on service-to-service communication and provides predictable networking behavior for backend systems.
| Package | Description |
|---|---|
| @dfsync/client | HTTP client for service-to-service communication |
A lightweight HTTP client designed for service-to-service communication.
NPM: https://www.npmjs.com/package/@dfsync/client
Home page: https://dfsyncjs.github.io
Full documentation: https://dfsyncjs.github.io/#/docs
- typed responses
- request timeout support
- automatic JSON parsing
- consistent error handling
- auth support:
bearer,API key, custom - lifecycle hooks:
beforeRequest,afterResponse,onError - retry policies
dfsync is designed for reliable HTTP communication in:
- microservices
- internal APIs
- integration services
- background workers
Install:
npm install @dfsync/clientExample:
import { createClient } from '@dfsync/client';
const client = createClient({
baseUrl: 'https://api.example.com',
retry: { attempts: 3 },
});
const users = await client.get('/users');This repository uses a pnpm monorepo.
Setup:
corepack enable
pnpm installpackages/
client/ main dfsync HTTP client package
examples/
node-basic/ basic usage example
smoke/
*/ smoke tests verifying published packages
See the project roadmap:
https://github.com/dfsyncjs/dfsync/blob/main/ROADMAP.md