Table of Contents
Space Cloud comes with a whole bunch of features to help you build realtime and scalable apps:
The database module is the core of Space Cloud. It allows you to perform CRUD operations on your database directly from the frontend.
Supported databases ❤️ :
Although the database module of Space Cloud is schemaless, it lets you optionally provide a schema via Mission Control for these added benefits:
Space Cloud allows you to perform a wide variety of CRUD operations:
With Space Cloud, you can query your data in 3 ways:
Note: You can make views only on SQL databases (e.g., PostgreSQL and MySQL)
You can also request data from multiple databases within a single request.
Space Cloud also supports slicing and dicing of the requested data with the following operations:
Mutations are used to make changes to your data. Following mutations are supported in Space Cloud:
The following operations are supported in
Subscriptions is used to sync data in realtime. You can subscribe to the data you are interested in, and Space Cloud guarantees to notify you whenever anything changes in that result set.
With the file storage module your frontend can:
Supported storage mechanisms are:
Remote services are a means to extend Space Cloud. You can write your custom business logic in the form of HTTP services that run alongside Space Cloud. These services can be accessed securely via the GraphQL or REST APIs of Space Cloud.
Notable features of Remote services:
Eventing module is used to asynchronously trigger your custom business logic (e.g., AWS Lambda functions) based on any events in your app.
Note: Right now the database and custom event triggers are supported. In a future release, eventing would also work on file storage events.
All event triggers are:
All requests to the database, file storage and remote services go through the authorization layer.
The authorization layer decides whether the request should be allowed or not based on the security rules you have provided in Mission Control and the JWT token present in the request.
Security rules allow you to:
delete) level rules for each
collection / table(eg: delete operation in
delete) level rules for each path prefix.