A simple PureScript JSON library that uses types automatically for encoding and decoding.
PureScript-Simple-JSON is a JSON library for PureScript that automatically generates encoders and decoders based on type definitions. It uses PureScript's RowToList feature to infer record types, simplifying JSON serialization and deserialization without manual boilerplate.
PureScript developers who need a straightforward, type-safe way to handle JSON data in their applications, particularly those working with records and APIs.
It reduces the manual effort required for JSON parsing by leveraging PureScript's type system, offering a simple API that integrates well with PureScript's ecosystem and records.
A simple Purescript JSON library that uses types automatically
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses PureScript's RowToList to automatically derive JSON encoders and decoders from record types, eliminating manual boilerplate as shown in the Quickstart example with readJSON and writeJSON.
Provides straightforward functions like readJSON and writeJSON for common JSON operations, making it easy to integrate into PureScript projects with minimal learning curve.
Works well with PureScript's record system for type-safe data handling, as highlighted in the presentation linked in the README, though it's based on an older version.
Allows customization of how specific JSON fields are read or written through the library's guide, enabling flexibility for API integrations.
Defaults to decoding undefined and null as Nothing and writing Nothing as undefined, which can break APIs expecting null values, forcing use of the Nullable type as warned in the README.
The FAQ explicitly advises copying the library into your own codebase if you dislike its behavior, indicating a lack of configurable options or plugin support.
Key usage information is scattered across Quickstart, API docs, and external presentations, with some guides outdated, potentially hindering troubleshooting and adoption.