This contains:
- a new implementation of the NetsBlox cloud server (ie, excluding services)
with enhanced performance and security (among other things - for a complete
list, check out
./crates/cloud/README.md
). - a CLI for interacting with the cloud server
- a client for interacting with the cloud server (used by the CLI)
- migration crate for migrating data from the old JS NetsBlox server
To simplify determining compatibility, all crates share the same version number using semantic versioning. This may change in the future to give the CLI and server both a version number and an API version number (similar to docker). This is already somewhat there but hasn't yet been made official. (I would expect an autogenerated compatibility table and/or version numbers reported by the CLI itself for the server, server API, client, and client API.)
This has yet to be completed but we are planning to make this available as a docker image. If you want to build from source, check out the development section.
First, install stable rust (rustup recommended). Next, start a local instance of MongoDB and Minio. (I usually run them using docker but native is also fine.) Minio configuration details can be found here. Then run the server with
cd crates/cloud
RUN_MODE=local cargo run
To customize the deployment, check out the configuration file.
Check out the architecture document for an overview of the codebase.