awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
sindresorhus avatar

sindresorhus/ky

0
View on GitHub↗
16,943 نجوم·474 تفرعات·TypeScript·MIT·8 مشاهدات

Ky

🌳 Tiny & elegant JavaScript HTTP client based on the Fetch API

Features

  • Fetch-Based HTTP Clients - An HTTP client built on the Fetch API that simplifies requests with automatic error handling and retry logic.
  • Fetch API Wrappers - Wraps the native Fetch API with a cleaner interface, adding automatic error handling and retry logic.
  • Request Retries - Automatically retries failed requests with configurable limits, delays, backoff, and jitter.
  • Automatic Retry Clients - Automatically retries failed requests with configurable limits, delays, and jitter.
  • Configurable Retry Engines - Provides automatic retry of failed HTTP requests with configurable limits, delays, backoff, and jitter.
  • Configurable Retry Engines - Ky controls retry behavior with configurable limits, status codes, delays, jitter, and timeout handling to automatically retry failed requests.
  • HTTP Client Libraries - An HTTP client library built on the Fetch API for making requests with retries, timeouts, and error handling.
  • Request Cancellations - Leverages the standard AbortController API to cancel in-flight HTTP requests.
  • Client Instance Defaults - Builds reusable Ky instances with custom defaults supporting inheritance and option replacement.
  • HTTP Lifecycle Hooks - Allows request and response interception through lifecycle hooks for customization and authentication.
  • HTTP Retry Engines - Implements automatic retries with configurable limits, status codes, delays, jitter, and timeout handling.
  • Per-Attempt Timeouts - Applies per-attempt and total timeouts to requests, throwing a timeout error if the limit is exceeded.
  • Lightweight HTTP Clients - A minimal HTTP client for making requests with JSON handling, timeouts, and configurable retries.
  • Pre-Configured HTTP Clients - Creates reusable HTTP clients with custom defaults using extend or create.
  • HTTP Client Requests - Ky makes HTTP requests with a clean API, automatic error handling, retries, and timeouts for web and Node.js applications.
  • HTTP Error Handling - Ky controls how non-2xx status codes are handled with selective error throwing and retry logic for failed requests.
  • Request Cancellation - Ky aborts an in-flight request using the AbortController API, throwing an AbortError.
  • Request Lifecycle Hooks - Exposes hooks at initialization, before request, before retry, before error, and after response stages.
  • Base URL Mappers - Resolves relative request URLs against a specified base URL to simplify API endpoint configuration.
  • Standard Schema Validators - Validates JSON response bodies against Standard Schema libraries like Zod, throwing a validation error on mismatch.
  • JSON Request Serializers - Ky automatically serializes JavaScript objects to JSON and sets the appropriate Content-Type header for request bodies.
  • Hook-Triggered Retries - Ky triggers a retry from an afterResponse hook based on response content, even for successful status codes.
  • Bidirectional Progress Tracking - Ky reports progress of data transfer with percentage, bytes transferred, and chunk data for both uploads and downloads.
  • Automatic Token Refreshes - Refreshes expired authentication tokens by intercepting 401 responses and retrying requests with fresh credentials.
  • Hook-Based Token Refreshes - Retries requests with fresh authentication tokens when a 401 response is received, using before-retry hooks.
  • Response Schema Validators - Validates JSON response bodies against a schema, throwing an error on mismatch.
  • Fetch Function Mocking - Replaces the fetch function with a custom implementation to return predefined responses without network calls.
  • AbortController-Based Clients - Uses the standard AbortController API for consistent request cancellation across environments.
  • Schema-Based Response Validation - Parses JSON responses and validates them against a schema, throwing an error on mismatch.
  • Standard Schema Response Validators - Validates JSON response bodies against Standard Schema libraries like Zod, throwing an error on mismatch.
  • Fetch Overrides - Allows replacement of the default fetch implementation with a custom one for mocking or instrumentation.
  • Custom Fetch Implementations - Provides a mechanism to replace the default fetch function for testing and instrumentation purposes.
  • Form Data Submission - Ky submits FormData or URLSearchParams as request bodies, automatically setting the appropriate Content-Type header.
  • Selective Status Code Filtering - Ky controls whether non-2xx status codes throw an error, with optional per-status-code filtering.
  • Query Parameter Mergers - Ky merges query parameters into request URLs, combining them with any existing parameters already present in the input URL.
  • General Utilities - Lightweight HTTP client based on Fetch API.

سجل النجوم

مخطط تاريخ النجوم لـ sindresorhus/kyمخطط تاريخ النجوم لـ sindresorhus/ky

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

بدائل مفتوحة المصدر لـ Ky

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع Ky.
  • unjs/ofetchالصورة الرمزية لـ unjs

    unjs/ofetch

    5,316عرض على GitHub↗

    ofetch is an HTTP client built on the native fetch API that adds automatic JSON serialization, request/response interceptors, configurable retry, and timeout handling. It provides descriptive error objects for non-OK responses and automatically parses response bodies based on their content type. The client supports creating pre-configured instances with preset base URLs, headers, and default options, enabling consistent configuration across a project. It offers full TypeScript type inference for response data and request payloads, and allows extending request options with custom properties wh

    TypeScript
    عرض على GitHub↗5,316
  • mzabriskie/axiosالصورة الرمزية لـ mzabriskie

    mzabriskie/axios

    109,096عرض على GitHub↗

    Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js environments. It functions as a multi-environment network adapter that abstracts the transport layer to ensure consistent behavior across different runtimes. The project distinguishes itself through a request lifecycle management system that allows for the cancellation of active requests, the setting of timeouts, and the monitoring of upload and download transfer progress. It includes a mechanism for intercepting network traffic, enabling the transformation of outgoing requests and inco

    JavaScript
    عرض على GitHub↗109,096
  • elbywan/wretchالصورة الرمزية لـ elbywan

    elbywan/wretch

    5,174عرض على GitHub↗

    Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration, response parsing, and error handling. It functions as a network request manager and middleware framework for managing the end-to-end lifecycle of HTTP calls. The project is distinguished by a fluent interface for request configuration and a modular extension system. It utilizes a programmable response resolver to automate parsing and a plugin-based architecture to add new capabilities to request and response objects. The library covers a broad range of operational capabilities,

    TypeScript
    عرض على GitHub↗5,174
  • kittinunf/fuelالصورة الرمزية لـ kittinunf

    kittinunf/fuel

    4,652عرض على GitHub↗

    Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and asynchronous web requests. It functions as a network wrapper that supports executing calls via suspending functions in coroutines, reactive streams, and traditional callbacks. The library features built-in integration for Android LiveData to bind network responses directly to observable state holders for user interface updates. It also includes a JSON serialization client that utilizes customizable mappers to convert raw HTTP response bodies into structured data objects. Capability area

    Kotlinandroidhttp-clientkotlin
    عرض على GitHub↗4,652
عرض جميع البدائل الـ 30 لـ Ky→

الأسئلة الشائعة

ما هي وظيفة sindresorhus/ky؟

🌳 Tiny & elegant JavaScript HTTP client based on the Fetch API

ما هي الميزات الرئيسية لـ sindresorhus/ky؟

الميزات الرئيسية لـ sindresorhus/ky هي: Fetch-Based HTTP Clients, Fetch API Wrappers, Request Retries, Automatic Retry Clients, Configurable Retry Engines, HTTP Client Libraries, Request Cancellations, Client Instance Defaults.

ما هي البدائل مفتوحة المصدر لـ sindresorhus/ky؟

تشمل البدائل مفتوحة المصدر لـ sindresorhus/ky: unjs/ofetch — ofetch is an HTTP client built on the native fetch API that adds automatic JSON serialization, request/response… mzabriskie/axios — Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js… elbywan/wretch — Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration,… kittinunf/fuel — Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and… urllib3/urllib3 — urllib3 is a Python HTTP client library used for sending network requests and receiving responses. It functions as an… sindresorhus/got — Got is a promise-based HTTP request library for Node.js that supports HTTP/2 and streaming. It provides a system for…