FindSoftware

sharaf

Scala 3 web framework for HTTP servers with routing, typed request parsing, HTML templates and OpenAPI-generated routes.

Sharaf is a Scala 3 web framework. Routes match on the request method and path segments, and query strings, forms and JSON bodies are parsed into case classes, optionally with validation. HTML is written with Twirl, and server-sent events are supported. The Undertow integration is the stable one and runs on the JVM, and an app adds the library as a dependency for Scala CLI, sbt or Mill. The README’s example starts the server from the app’s own code.

The framework can also generate models and routes from an OpenAPI 3.0 or 3.1 document through OpenApi4s. The README lists GraalVM and Scala Native examples and an AWS Lambda starter that runs an Undertow app through the Lambda Web Adapter.

Worth knowing

The servers reference says the http4s, JDK HTTP server, Helidon and snunit integrations are beta or experimental, with narrower form handling, incomplete request features and possible changes between releases. The project is pre-1.0 and its releases are numbered 0.x.

Identity

Status
Active
Maintainer
Sakib Hadžiavdić4
Maintained by
Individual
First release
202410

Rendering and deploy

Runs as
Always on7
Install with
library dependency for Scala CLI, sbt or Mill6

Releases

Current major version
Pre-1.010
Last release
2026-09-2810

Adoption

GitHub stars
682
Contributors
311

Why these figures do not compare

Sources

  1. 2026-10-26: links, Categories
    sake92.github.io/sharaf/
  2. 2026-10-26: links, Written in, GitHub stars
    api.github.com/repos/sake92/sharaf
  3. 2026-10-26: links
    raw.githubusercontent.com/sake92/sharaf/main/README.md
  4. 2026-10-26: Maintainer
    repo1.maven.org/maven2/ba/sake/sharaf-undertow_3/0.20.0/sharaf-undertow_3-0.20.0.pom
  5. 2026-10-26: Runtime
    sake92.github.io/sharaf/reference/servers.html
  6. 2026-10-26: Install with
    sake92.github.io/sharaf/reference/dependencies.html
  7. 2026-10-26: Runs as
    sake92.github.io/sharaf/tutorials/hello-world.html
  8. 2026-10-26: Templating
    sake92.github.io/sharaf/philosophy/why-sharaf.html
  9. 2026-10-26: License
    github.com/sake92/sharaf/blob/main/LICENSE
  10. 2026-10-26: First release, Current major version, Last release
    api.github.com/repos/sake92/sharaf/releases
  11. 2026-10-26: Contributors
    api.github.com/repos/sake92/sharaf/contributors?per_page=1

Last reviewed · Listed since Edit on GitHubThis page as markdownas JSON