
Security News
PyPI Expands Trusted Publishing to GitLab Self-Managed as Adoption Passes 25 Percent
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads
soroban-client
Advanced tools
js-soroban-client is a Javascript library for communicating with a Soroban RPC server. It is used for building Stellar apps either on Node.js or in the browser.
It provides:
soroban-client is a high-level library that serves as client-side API for Horizon. stellar-base is lower-level library for creating Stellar primitive constructs via XDR helpers and wrappers.
Most people will want soroban-client instead of stellar-base. You should only use stellar-base if you know what you're doing!
If you add soroban-client to a project, do not add stellar-base! Mis-matching
versions could cause weird, hard-to-find bugs. soroban-client automatically
installs stellar-base and exposes all of its exports in case you need them.
Important! The Node.js version of the
stellar-base(soroban-clientdependency) package uses thesodium-nativepackage as an optional dependency.sodium-nativeis a low level binding to libsodium, (an implementation of Ed25519 signatures). If installation ofsodium-nativefails, or it is unavailable,stellar-base(andsoroban-client) will fallback to using thetweetnaclpackage implementation.If you are using
soroban-client/stellar-basein a browser you can ignore this. However, for production backend deployments you should be usingsodium-native. Ifsodium-nativeis successfully installed and working theSorobanClient.FastSigningvariable will returntrue.
Using npm to include js-soroban-client in your own project:
npm install --save soroban-client
Alternatively, you can use cdnjs in a browser:
<script src="https://cdnjs.cloudflare.com/ajax/libs/soroban-client/{version}/soroban-client.js"></script>
npm install --save soroban-client
var SorobanClient = require('soroban-client');
bower install soroban-client
<script src="./bower_components/soroban-client/soroban-client.js"></script>
<script>
console.log(SorobanClient);
</script>
If you don't want to use or install Bower, you can copy built JS files from the bower-js-soroban-client repo.
<script src="https://cdnjs.cloudflare.com/ajax/libs/soroban-client/{version}/soroban-client.js"></script>
<script>
console.log(SorobanClient);
</script>
Note that this method relies using a third party to host the JS library. This may not be entirely secure.
Make sure that you are using the latest version number. They can be found on the releases page in Github.
git clone https://github.com/stellar/js-soroban-client.git
cd js-soroban-client
yarn install
Because we support the latest maintenance version of Node, please install and develop on Node 16 so you don't get surprised when your code works locally but breaks in CI.
Here's how to install nvm if you haven't: https://github.com/creationix/nvm
nvm install
# if you've never installed 16 before you'll want to re-install yarn
yarn install -g yarn
If you work on several projects that use different Node versions, you might it helpful to install this automatic version manager: https://github.com/wbyoung/avn
While you're making changes, make sure to run the linter-watcher to catch any linting errors (in addition to making sure your text editor supports ESLint)
node_modules/.bin/gulp watch
For information on how to use js-soroban-client, take a look at the documentation, or the examples.
To run all tests:
gulp test
To run a specific set of tests:
gulp test:node
gulp test:browser
To generate and check the documentation site:
# install the `serve` command if you don't have it already
yarn install -g serve
# generate the docs files
yarn docs
# get these files working in a browser
cd jsdoc && serve .
# you'll be able to browse the docs at http://localhost:5000
Documentation for this repo lives in Developers site.
For information on how to contribute, please refer to our contribution guide.
See CONTRIBUTING.md for the detailed release process. Once a new release is published and CI passes, a new package will be published to npm by GitHub actions.
js-soroban-client is licensed under an Apache-2.0 license. See the LICENSE file for details.
FAQs
A library for working with Stellar's Soroban RPC servers.
The npm package soroban-client receives a total of 492 weekly downloads. As such, soroban-client popularity was classified as not popular.
We found that soroban-client demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads

Research
/Security News
A malicious Chrome extension posing as an Ethereum wallet steals seed phrases by encoding them into Sui transactions, enabling full wallet takeover.

Security News
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.