Old Corea-milestone centralized backend now obsolete as everything is decentralized.
RESTful API containing the backend for Streamr Core. With the Streamr Network now fully decentralized, the only remaining features in this centralized API are related to the Marketplace:
The Marketplace will become fully decentralized, so this API is being phased out in the near future.
The application uses the Grails web framework and runs on Java VM.
A convenient way of installing and managing multiple versions of Grails is SDKMAN!.
Additional services are required to run this web application. The easiest way to get them all up and running (for development purposes) is to use the streamr-docker-dev tool we provide.
You might also want to run the Core frontend.
Ensure you have the dependencies listed under Dependencies > Tools installed.
Clone this repo
Run make start
if you are using the recommended tool streamr-docker-dev.
Otherwise make sure all services dependencies are running and the the web applications is properly configured to
connect to them.
Start the backend application
make run
The project uses GitHub Actions to automatically run tests for each
commit to main
and pull requests.
A Docker image is automatically built and pushed to DockerHub
when commits are pushed to branch main
.
We provide sensible default configurations for IntelliJ IDEA but project can be developed with other IDEs as well.
make test-unit
make test-integration
make test-e2e
make test
These are also available as pre-shared run configurations if you use IntelliJ IDEA.
This codebase comprises two logical parts:
When you run the app with grails run-app
, most changes to source code files are automatically hot reloaded into the
running JVM process.
This software is open source, and dual licensed under AGPLv3 and an enterprise-friendly commercial license.