# haskell-servant/servant

Servant is a Haskell DSL for describing, serving, querying, mocking, documenting web applications and more!

Repository: https://github.com/haskell-servant/servant
Canonical: https://ross.abutalabs.com/products/servant
Homepage: https://docs.servant.dev/
Language: Haskell
License Family: other
Topics: hacktoberfest, haskell
Last push: 2026-08-22T13:29:39+00:00

## Health v2 (maintenance only)
Score: 77/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 35, longevity 100
- inputs: {"age_days": 4292, "days_push": 11, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1966, forks 426 (observed 2026-08-28T04:05:59.927089+00:00)

## What it is
Servant is a Haskell DSL for describing web APIs at the type level, from which servers, clients, mocks, and documentation can be derived. It lets you define an API once and automatically get type-safe serving, querying, mocking, and documenting of that API.

## Use cases
- build a type-safe REST API server in Haskell
- generate API clients from a single API definition
- auto-generate API documentation from code
- mock a web service for testing
- define an API once and derive server and client
- serve a JSON web service with compile-time route checking

## When to choose
- you write Haskell and want compile-time guarantees that server and client match the API
- you want to derive documentation, clients, and mocks from one API type
- you value type-level correctness for routing and serialization

## When to avoid
- you need a framework in a non-Haskell language
- your team is not comfortable with advanced Haskell type-level programming
- you want a batteries-included framework with built-in ORM and templating

## Facets
- artifact type: framework
- maturity: active
- function: web-framework, api-framework, http-server, http-client, routing, mock-api, api-documentation, type-system
- domain: web-development, backend, apis, developer-tools
- platform: cli
- tags: type-level-dsl, rest, haskell, code-generation, openapi, web-server

## Member repositories
- haskell-servant/servant (main) score 77

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:59.927089+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-30T03:05:26.975253+00:00, confidence not recorded.
  - readme: https://github.com/haskell-servant/servant (fetched 2026-08-28T04:05:59.927089+00:00, sha 0b8fc2b6c263)
- Data as of 2026-08-30T08:39:29.467469+00:00.
