json-tools
Version, currently 1.0.12 versions
- 1.0.1latestNov 10, 2019
- 1.0.0not indexedNov 10, 2019
github.com/impatienttraveller/json-tools
An implementation of RFC-6901 and RFC-6902 in Crystal Lang
19 stars
0 dependents
License: MIT
Installation
# Add this to your shard.yml
dependencies:
json-tools:
github: impatienttraveller/json-tools
version: ~> 1.0.1Then run:
shards installshard.yml
- Crystal
0.31.1- License
- MIT
- Author
- Daniel del Castillo <dadelcas@hotmail.com>
Dependencies
This version declares no dependencies.
README
# json-tools
[](https://crystal-lang.org/)
[](https://travis-ci.org/impatienttraveller/json-tools)
[](https://github.com/impatienttraveller/json-tools/releases)
An implementation of [RFC-6901](https://tools.ietf.org/html/rfc6901) and [RFC-6902](https://datatracker.ietf.org/doc/rfc6902)
## Installation
Add this to your application's `shard.yml`:
```yaml
dependencies:
json-tools:
github: impatienttraveller/json-tools
```
## Usage
```crystal
require "json-tools"
```
Once you have a `JSON::Any` object in memory you can address any value using the `Pointer` class:
```crystal
json : JSON::Any = ...
val = Json::Tools::Pointer.new("/foo/0/bar").eval(json)
```
JSON object can be patched by using the `Patch` class:
```crystal
patch : JSON::Any = ...
json : JSON::Any = ...
patched_json = Json::Tools::Patch.new(patch).apply(json)
```
This creates a copy of the passed JSON object to work with and the original object is not altered.
## Development
Please raise a GitHub issue and document the commit with the following format:
```
[issue-x] Description
```
## Contributing
1. Fork it (<https://github.com/impatienttraveller/json-tools/fork>)
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request
## Contributors
- [ddcprg](https://github.com/ddcprg) Daniel del Castillo - creator, maintainer
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
1.0.1- Tagged
- Nov 10, 2019
- Commit
2b6c41f94d0d- Crystal
0.31.1- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/impatienttraveller/json-tools
Metadata
- Created
- Aug 12, 2026
- Updated
- Aug 12, 2026
- Synced
- Aug 12, 2026
- Versions
- 2