- Notifications
You must be signed in to change notification settings - Fork0
Multi-format schema-based serializer, deserializer and validator. Charged URI syntax. URI Charge Notation
License
UCNot/churi
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
ChURI is a polyglot serializer, deserializer and validator supporting various data formats.
The data processing is based on data schemas. Schemas are written in TypeScript. ChURI compiles such schemas intoefficient code implementing serializers, deserializers, and validators for the data conforming to those schemas.
The core data format encodes the data withURI Charge Notation. It is designed to pass structured data inside URI.Such URI is called Charged URI, or just ChURI.
Other data formats supported out of the box:
- JSON
application/x-www-form-urlencoded
(URI query parameters)- URL-encoded
- plain text
Some formats supportinsets containing data in another formats. For example, theapplication/x-www-form-urlencoded
format allows query parameter values to be encoded as URL-encoded ones, as plain text, or as URI Charge. The choiceis made by data schema.
Charged URI (ChURI) may include arbitrary structured data. The data is encoded withURI Charge Notation.
It is like JSON for GET requests, but may include even more:
https://example.com/!v(3)api/user;id=0n302875106592253/article;slug=hello-world/comments?date=since(!date'1970-01-01)till(!now)&range=from(10)to(20)
This package provides:
About
Multi-format schema-based serializer, deserializer and validator. Charged URI syntax. URI Charge Notation
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.