• Stars
    star
    2,481
  • Rank 17,606 (Top 0.4 %)
  • Language
    Scala
  • License
    Apache License 2.0
  • Created about 12 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A minimal, idiomatic Scala interface for HTTP

Http4s Build Status Maven Central Typelevel library Cats friendly

Http4s is a minimal, idiomatic Scala interface for HTTP services. Http4s is Scala's answer to Ruby's Rack, Python's WSGI, Haskell's WAI, and Java's Servlets.

val http = HttpRoutes.of {
  case GET -> Root / "hello" =>
    Ok("Hello, better world.")
}

Learn more at http4s.org.

If you run into any difficulties please enable partial unification in your build.sbt (not needed for Scala 2.13 and beyond, because Scala 2.13.0+ has partial unification switched on by default)

scalacOptions ++= Seq("-Ypartial-unification")

Requirements

Running the blaze backend requires a modern, supported version of the JVM to build and run, as it relies on server APIs unavailable before JDK8u252. Any JDK newer than JDK8u252, including 9+ is supported.

Code of Conduct

http4s is proud to be a Typelevel project. We are committed to providing a friendly, safe and welcoming environment for all, and ask that the community adhere to the Scala Code of Conduct.

License

This software is licensed under the Apache 2 license, quoted below.

Copyright 2013-2021 http4s [https://http4s.org]

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

[http://www.apache.org/licenses/LICENSE-2.0]

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Acknowledgments

YourKit

Special thanks to YourKit for supporting this project's ongoing performance tuning efforts with licenses to their excellent product.

More Repositories

1

blaze

Blazing fast NIO microframework and Http Parser
Scala
344
star
2

rho

A self documenting DSL built on http4s
Scala
289
star
3

http4s.g8

giter8 template for bootstrapping http4s services
Scala
104
star
4

http4s-armeria

Armeria backend for http4s
Scala
59
star
5

http4s-jdk-http-client

JDK 11+ http client implementation for http4s clients
Scala
55
star
6

http4s-netty

Http4s on pure netty
Scala
40
star
7

http4s-curl

curling isn't just for Canadians
Scala
32
star
8

http4s-dom

http4s, in a browser near you
Scala
26
star
9

http4s_demo

See how easy http4s makes life
JavaScript
14
star
10

http4s-finagle

Http4s on Finagle Server or Client
Scala
11
star
11

http4s-websocket

Common websocket support for blaze and http4s-servlet
Scala
9
star
12

sbt-http4s-org

An experimental SBT plugin to support various http4s projects
Scala
9
star
13

http4s-io.g8

An alternate giter8 template fixed on IO
Scala
9
star
14

http4s-session

Http4s Session Convenience
Scala
8
star
15

http4s-fs2-data

http4s integration with fs2-data
Scala
7
star
16

http4s-crypto

Incubator for cryptographic functions cross-built for the JVM and Scala.js.
Scala
7
star
17

http4s-prometheus-metrics

Support for Prometheus Metrics
Scala
6
star
18

http4s-servlet

http4s-servlet support
Scala
5
star
19

http4s-scalatags

Scalatags template support for http4s
Scala
5
star
20

http4s-twirl

Twirl template support for http4s
Scala
4
star
21

http4s-jetty

Jetty backend for http4s servers
Scala
4
star
22

http4s-scala-xml

http4s codecs for scala-xml
Scala
4
star
23

http4s-fabric

Fabric integration module for http4s
Scala
4
star
24

http4s-play-json

Play JSON codecs for http4s
Scala
3
star
25

http4s-monadic-dsl

Scala
3
star
26

hpack

Header Compression for HTTP/2
Scala
2
star
27

http4s-okhttp-client

okhttp implementation for http4s clients
Scala
1
star
28

http4s-tomcat

Apache Tomcat backend for http4s
Scala
1
star