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 on Scala 2.12 please enable partial unification in your build.sbt
(not needed for Scala 2.13 and beyond, because they enable partial unification by default)
scalacOptions ++= Seq("-Ypartial-unification")
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.
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.
This software is licensed under the Apache 2 license, quoted below.
Copyright 2013-2022 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.
Special thanks to YourKit for supporting this project's ongoing performance tuning efforts with licenses to their excellent product.