-
cask
Cask: a Scala HTTP micro-framework. Cask makes it easy to set up a website, backend server, or REST API using Scala (by lihaoyi)
I found Cask the most "lean" one of them all: https://github.com/lihaoyi/cask
-
InfluxDB
InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
-
I've never used it myself, but Resty may fit what you're looking for
-
The example uses Cats Effect, FS2 and Tagless Final.
-
This example uses probably the most popular JSON library for Scala, Circe. There is another Scala library that lets us "be more specific with," or "refine," our types, called Refined. http4s doesn't provide any particular support for Refined, but Circe has a module integrating Refined, meaning that all of Circe's parsing, encoding, and decoding support is integrated with Refined. Putting together http4s' Circe support, Circe's generic codec derivation, and Circe's Refined integration, here's what I came up with:
-
advanced-http4s
Discontinued :rainbow: Code samples of advanced features of Http4s in combination with some features of Fs2 not often seen.
Your "file upload" question, I think, reveals more of the actual difficulties. It raises all sorts of security, resource safety, and just general design issues, e.g. how does the system handle really huge files? How should errors be handled? etc. That said, there is an example of a file upload service written by Gabriel Volpe that, once again, reveals that it's not a lot of effort to do, given some decisions about how you want to deal with the possible range of issues involved.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.