# alovajs/alova

The request strategy layer for JavaScript. 20+ ready-made strategies cut your request code by up to 70%

Repository: https://github.com/alovajs/alova
Canonical: https://ross.abutalabs.com/products/alova
Homepage: https://alova.js.org
Language: TypeScript
License: MIT
License Family: permissive
Topics: hooks, typescript, vuejs, xmlhttprequest, reactjs, svelte, axios, fetch-api, request, alova, superagent, ajax, solid, nextjs, nuxtjs, bff, ssr, taro, uniapp
Last push: 2026-08-21T05:34:12+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 98, release rhythm 86, longevity 100
- inputs: {"age_days": 1407, "days_push": 12, "days_rel": 12, "gap_med": 0, "n_releases_24m": 146}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4014, forks 148 (observed 2026-08-28T04:08:32.375398+00:00)

## What it is
alova is a request strategy layer for JavaScript that provides 20+ ready-made strategies (pagination, forms, uploads, retries, caching) on top of existing HTTP clients like axios and fetch. It works across React, Vue, Svelte, Solid, mini-programs, and server environments with a single unified API.

## Use cases
- implement paginated lists with prefetching in react
- handle form submission with automatic state management
- add retry logic to http requests
- manage request caching and cache invalidation
- upload files with progress tracking
- share and deduplicate identical requests
- use the same data fetching hooks across vue and react
- server-side data fetching in nextjs or nuxt

## When to choose
- you repeatedly hand-write pagination, form, upload, or retry logic
- you want one request API across multiple UI frameworks
- you want higher-level strategies than react-query or swr primitives
- you need request state management on both client and server

## When to avoid
- you only need a raw http client without request orchestration
- your team is already invested in react-query or swr workflows
- you need a solution limited strictly to react

## Facets
- artifact type: library
- maturity: active
- function: http-client, state-management, caching, middleware, ssr, file-upload, webhook
- domain: web-development, frontend, backend, apis, developer-tools
- platform: browser, cross-platform
- tags: request-strategy, react-hooks, vue, svelte, solid, axios, fetch-api, data-fetching, pagination, form-submission, retry, request-caching, mini-programs, ssr-support, openapi, nodejs, web-server, typescript

## Member repositories
- alovajs/alova (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:32.375398+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:23:59.441335+00:00, confidence not recorded.
  - readme: https://github.com/alovajs/alova (fetched 2026-08-28T04:08:32.375398+00:00, sha 0e087a0b4af0)
  - homepage: https://alova.js.org (fetched 2026-08-29T09:17:10.461606+00:00, sha ea924fab53fb)
  - site_page: https://alova.js.org/about/comparison (fetched 2026-08-29T09:17:10.468531+00:00, sha f0eff28b15ba)
  - site_page: https://alova.js.org/about/faqs (fetched 2026-08-29T09:17:10.470392+00:00, sha 1abc9dcef375)
  - site_page: https://alova.js.org/tutorial/getting-started/introduce (fetched 2026-08-29T09:17:10.464339+00:00, sha f725b0a78bca)
  - site_page: https://alova.js.org/about/RSM (fetched 2026-08-29T09:17:10.466308+00:00, sha 1daf7b8d2745)
- Data as of 2026-08-30T08:39:29.467469+00:00.
