Every time I sit down to use an HTTP client and JSON parser, I get really frustrated

This page summarizes the projects mentioned and recommended in the original post on /r/scala

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • requests-scala

    A Scala port of the popular Python Requests HTTP client: flexible, intuitive, and straightforward to use.

    http4s (either with Blaze or Ember) is great, but you may need to think a bit about what you're doing. Maybe https://github.com/com-lihaoyi/requests-scala will be the best choice for your particular situation?

  • jackson-module-scala

    Add-on module for Jackson (https://github.com/FasterXML/jackson) to support Scala-specific datatypes

    The simplest JSON parsing library is Jackson.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • splain

    better implicit errors for scala

    Requires deep knowledge of implicits and how to debug them. Which if you have nested data structures is basically impossible without something like Splain.

  • circe

    Yet another JSON library for Scala

    Has the worst error messages I've ever seen for a parser. "Attempt to decode value on failed cursor" is not helpful when all you have is missing fields. Has been an issue for 5 years.

  • jsoniter-scala

    Scala macros for compile-time generation of safe and ultra-fast JSON codecs

    Use jsoniter-scala for handy auto-derive safe and efficient JSON codecs.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts