Skip to content

NetsBlox/cloud

Repository files navigation

NetsBlox Cloud

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

Versioning

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.)

Quick Start

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.

Development

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.