# Ring

Clojure library that abstracts HTTP into one API so web applications, servers and frameworks can share handlers, requests and middleware.


Source: https://findsoftware.frbit.cloud/ring/
Last reviewed: 2026-10-26
Listed since: 2026-10-26

## Record

### Links

- repository: https://github.com/ring-clojure/ring
- docs: https://github.com/ring-clojure/ring/wiki

### Identity

- status: active
- maintainer: Mark McGranaghan, James Reeves & contributors
- maintainerType: community
- parent: unknown
- firstRelease: 2009
- hqCountry: unknown

### Kind

- category: library
- hosting: java
- language: clojure
- runtime: jvm
- runtimeMin: jvm 11
- basedOn: unknown

### Content

- contentStore: not applicable
- databases: not applicable
- adminUi: not applicable
- headlessApi: not applicable
- templating: not applicable
- i18n: not applicable

### Rendering and deploy

- runsAs: not applicable
- renderingModes: not applicable
- installMethod: deps.edn or Leiningen dependency

### License

- licenseModel: open-source
- license: MIT

### Releases

- currentMajor: 1
- latestReleaseDate: 2026-10-19

### Adoption

- githubStargazers: 3891
- packagistDownloads: not applicable
- npmWeeklyDownloads: not applicable
- contributors: 133
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: unknown
- dependentPackages: unknown

### Sources

- urls: https://api.github.com/repos/ring-clojure/ring (read 2026-10-26)
- urls: https://github.com/ring-clojure/ring/blob/master/README.md (read 2026-10-26)
- maintainer: https://github.com/ring-clojure/ring/blob/master/README.md (read 2026-10-26)
- language: https://api.github.com/repos/ring-clojure/ring (read 2026-10-26)
- runtime: https://github.com/ring-clojure/ring/blob/master/CHANGELOG.md (read 2026-10-26)
- runtimeMin: https://github.com/ring-clojure/ring/blob/master/CHANGELOG.md (read 2026-10-26)
- category: https://github.com/ring-clojure/ring/blob/master/README.md (read 2026-10-26)
- license: https://api.github.com/repos/ring-clojure/ring (read 2026-10-26)
- licenseModel: https://github.com/ring-clojure/ring/blob/master/README.md (read 2026-10-26)
- installMethod: https://github.com/ring-clojure/ring/blob/master/README.md (read 2026-10-26)
- currentMajor: https://api.github.com/repos/ring-clojure/ring/git/refs/tags/1.15.6 (read 2026-10-26)
- latestReleaseDate: https://github.com/ring-clojure/ring/blob/master/CHANGELOG.md (read 2026-10-26)
- firstRelease: https://github.com/ring-clojure/ring/blob/master/CHANGELOG.md (read 2026-10-26)
- githubStargazers: https://api.github.com/repos/ring-clojure/ring (read 2026-10-26)
- contributors: https://api.github.com/repos/ring-clojure/ring/contributors (read 2026-10-26)

## Notes

Ring is a Clojure web applications library that its README says was inspired by Python's WSGI and Ruby's Rack. Applications are built from modular components that can be shared among applications, web servers and web frameworks. The repository holds several libraries: ring-core for handlers, requests, responses and middleware; ring-devel for debugging; adapters for Java Servlets in both the older and the Jakarta forms; and ring-jetty-adapter, which runs an application on an embedded Jetty server. The interface is described in a SPEC.md file in the repository.

## Worth knowing

The Jetty adapter needs a newer Java runtime than the core library, as the changelog records for the 1.14.0 release.

---

Data licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Attributes are recorded, never scored; absent means unknown.
Credit, in full: FindSoftware, CC BY 4.0
