Space Cloud provides instant Realtime APIs on the database of your choice.
3.0K
This image is now deprecated. Follow the installation guide to get started with Space Cloud.
Space Cloud is a cloud native backend server that provides instant, realtime APIs on any database, with event triggers and space functions for custom business logic.
Space Cloud helps you build modern applications without having to write any backend code in most cases.
It provides GraphQL and REST APIs which can be consumed directly by your frontend in a secure manner.
View complete feature set here.
Supported databases:heart::
Docker compose is the easiest way to get started with Space Cloud. Let's see how to quickly get started with MongoDB and Space Cloud using Docker Compose.
Note: MongoDB is not a dependency of Space Cloud. Space Cloud can run with any of it's supported databases.
Prerequisites:
wget https://raw.githubusercontent.com/spaceuptech/space-cloud/master/install-manifests/quick-start/docker-compose/mongo/docker-compose.yaml
docker-compose up -d
Head over to http://localhost:4122/mission-control to open Mission Control and configure Space Cloud.
Create a project.
Head over to the Database section in Mission Control and copy paste mongodb://mongo:27017 in the connection string.
Head over to the Explorer section and follow this guide to insert and read data via Space Cloud using GraphQL.
To get started with Space Cloud without Docker compose, check out the manual guide. For production settings, checkout the deployments guide.
Space Cloud exposes GraphQL, HTTP, websockets and gRPC endpoints. See setting up project guide to choose a client and set it up.
Space Cloud works with any GraphQL client. We recommend using Apollo Client. See awesome-graphql for a list of clients.
If you don't want to use graphql, we have made following client SDKs for you:
Space Cloud is meant to replace any backend php, nodejs, java code you may write to create your endpoints. Instead, it exposes your database over an external API that can be consumed directly from the frontend. In other words, it allows clients to fire database queries directly.
However, it's important to note that the client does not send database (SQL) queries to Space Cloud. Instead, it sends an object describing the query to be executed. This object is first validated by Space Cloud (using security rules). Once the client is authorized to make the request, a database query is dynamically generated and executed. The results are sent directly to the concerned client.
We understand that not every app can be built using only CRUD operations. Sometimes it's necessary to write business logic. For such cases, Space Cloud offers you APIs to write functions (which runs as microservices alongside Space Cloud). These functions can be invoked from the frontend or by other functions. In this scenario, Space Cloud acts merely as an api gateway between your functions and the client.
Apart from these, Space Cloud also integrates with tons of cloud technologies to give you several other features like realtime database (changes in the database are synced with all concerned clients in realtime), file storage, etc.
The documentation and community will help you troubleshoot most issues. If you have encountered a bug or need to get in touch with us, you can contact us using one of the following channels:
Space Cloud is a young project. We'd love to have you on board if you wish to contribute. To help you get started, here are a few areas you can help us with:
Space Cloud is Apache 2.0 licensed.
Content type
Image
Digest
Size
27.1 MB
Last updated
over 6 years ago
docker pull spaceuptech/space-cloud