This quickstart will take you through the steps to create a simple geo-based AR game powered by the Spheroid Universe Platform.
Before you create your app, you need to create an account in the Spheroid Universe Platform.
If you already have an account in the Spheroid Universe Platform, you can skip this step.
Now you have the access to all Platform services, including the Spheroid Demiurge IDE.
Log in to the Spheroid Demiurge IDE, using the same email and password you used to register in the Platform.
Open the "Apps" tab and click the "Create" button.
Enter the app name, leave the check on the "Create a layer corresponding to this app" box and click the "Create App" button. The app will be created along with the layer you will later use to publish the app into.
If the app doesn't get immediately created, and you get the error "Can't create an app because the app with the name 'xxx' already exists", it means the name you've chosen is already taken, so try another one.
We have already prepared for you the source code you'll need to create a demo app. Download a zip archive from our repo.
Then extract contents of the 'SpheroidScript-master\examples\CoinQuest\src' folder from the zip archive. You're now all set to upload the source code to your app!
Now, what you need to do is to upload the extracted files with source code to the IDE keeping the tree structure unchanged. So in the root of your app you need to have three folders named "assets", "client" and "server", as well as the "app.json" file.
(Your app name)
|--- assets
| |--- coin_gold.glb
| |--- coin_silver.glb
| |--- jump.ogg
| |--- map_icon_gold.png
| |--- map_icon_silver.png
| |--- notification_icon_gold.png
| |--- notification_icon_silver.png
|--- client
| |--- Client.spheroid
|--- server
| |--- Bounds.spheroid
| |--- Coin.spheroid
| |--- CoinGenerator.spheroid
| |--- Constants.spheroid
| |--- GetCoinsAction.spheroid
| |--- Ruler.spheroid
| |--- SpatialGrid.spheroid
| |--- StartupAction.spheroid
| \--- TakeAction.spheroid
\--- app.json
Currently, you can't upload a whole zip or a folder to the IDE but you can upload multiple files at once by a single drag-n-drop.
Open the "IDE" tab and select your app in the dropdown list.
Create the "assets" folder: right-click the app name and select the "Create a folder" option, then, when the dialog comes up, enter "assets" and click "OK".
Repeat these steps for the "client" and "server" folders. This is what you'll see after you're done:
For each folder, left-click the folder to expand it. The text "Drag-n-drop files here to upload" will appear on the right. Drag-n-drop the files with the source code from the corresponding folder on your local PC.
Then, left-click the root folder (with the same name as your app) to expand it and drag-n-drop the "app.json" file.
You're done! Now you can proceed to publishing the app.
Publish your app. Click the "Publish" button in the top menu and, when the dialog comes up, keep the default settings, and click the "Publish" button at the right bottom of the dialog.
If the publication has been successful, you will see four info messages in the "Build" tab in the bottom pane. Congratulations, you have published your app!
If you don't see the four info messages, or you see error messages instead, check you've followed the previous steps accurately and, if so, write us an issue, and we will help you solve the problem.
Now as you have your app built and published, it's time to run it on your mobile phone.
Download the XR Hub Android mobile app either by following the Google Play link or by scanning the QR code:
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|
Currently, XR Hub works on the Android devices that support ARCore only. iOS version of the app will be released soon.
Launch the XR Hub app on your phone.
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|
Tap the menu button in the bottom center, then tap the account icon and log in to the app using the same email and password you used to register in the Platform.
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|
When you're authorized, swipe right through the list of worlds to find the world your app has been published into (world is called "layer" in IDE). Note that if you're not logged in, you won't see the world, because the worlds created by developers are private. In the later tutorials you will learn how to add testers to your layer aka world.
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|
When you've found your world, tap the "Launch" button, and you will see the coins on the screen. Congratulations, you have successfully run your app in the XR Hub! Collect some coins and see how the value on the counter changes after you tap on each coin. See the logs from the app in real time in the IDE in the "Client" and "Server" tabs in the bottom pane.
If you have encountered any problems, please let us know by submitting an issue, we will make sure to help you find the solution. Please don't hesitate to contact us, as your issues and our replies will help to make our platform better and will be valuable to other developers.
This quickstart has covered the bare minimum base to start developing AR applications powered by the Spheroid Universe platform.
In the next tutorials, we will take a closer look at what we've done by exploring the source code of the app. We'll get familiar with the Spheroid Script – the Platform language. We'll talk about the project structure and discuss some key concepts e.g. dividing code into a client-side part, and a server-side part. Finally, we'll learn the basics of persisting data in a cloud database using the Spheroid SQL.

























