https://github.com/juliendelplanque/jrpc
Yet another JSON-RPC 2.0 implementation for Pharo Smalltalk
https://github.com/juliendelplanque/jrpc
json-rpc jsonrpc2 pharo rpc rpc-client rpc-server
Last synced: 2 months ago
JSON representation
Yet another JSON-RPC 2.0 implementation for Pharo Smalltalk
- Host: GitHub
- URL: https://github.com/juliendelplanque/jrpc
- Owner: juliendelplanque
- License: mit
- Created: 2018-10-27T15:31:23.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2025-01-09T20:16:47.000Z (4 months ago)
- Last Synced: 2025-02-28T07:49:30.747Z (3 months ago)
- Topics: json-rpc, jsonrpc2, pharo, rpc, rpc-client, rpc-server
- Language: Smalltalk
- Size: 137 KB
- Stars: 11
- Watchers: 7
- Forks: 7
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# JRPC
[](https://github.com/juliendelplanque/JRPC/actions/workflows/unit-tests.yml)
[](https://codecov.io/gh/juliendelplanque/JRPC/branch/master)
[](https://github.com/juliendelplanque/JRPC/actions/workflows/loading-groups.yml)[](LICENSE)
[](https://pharo.org/download)
[](https://pharo.org/download)
[](https://pharo.org/download)
[](https://pharo.org/download)
[](https://pharo.org/download)Yet another [JSON-RPC 2.0](https://www.jsonrpc.org/specification) implementation for Pharo Smalltalk
- [Features](#features)
- [Installation](#installation)
- [Examples](#examples)
- [Comparison with other JSON RPC implementations](#jrpc-vs-others)
- [Contributing](#contributing)## Features
- Client and Server support for JSON-RPC 2.0.
- Only depends on Pharo's built-in packages.
- Uses STONJSON to parse JSON internally.
- Transport agnostic (like JSON-RPC 2.0 spec claims).
- Can currently be used over
- HTTP
- TCP
- It is easy to add other transport layers.
- Additional `data` when an error occured in the `error` object.## Examples
Explore the [documentation](docs/Examples.md)
## Installation
To load the project in a Pharo image or declare it as a dependency of your project follow this [instructions](docs/Installation.md).
## Comparison with other JSON RPC implementations
| Property | JRPC | LtJsonRpc | NeoJSONRPC |
|--------------|--------------------|--------------------|--------------------|
| Server | :white_check_mark: | :white_check_mark: | :x: |
| Client | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| JSON backend | STONJSON | Json | NeoJSON |
| Tests | :white_check_mark: | :x: | :x: |## Contributing
Check the [Contribution Guidelines](CONTRIBUTING.md)