Store
The nanos world Store is the platform on which you are invited to share your Game-Modes, Packages and Assets with the nanos world community!

The Store is still under development. We are launching small usable pieces of it to build and improve it with you!
About the Storeโ
In the Store, you can upload your Assets, Packages, release new versions, create Teams and much more! It is 100% integrated with Vault and the CLI!
Server Authorization Tokenโ
In order to be able to use the CLI, you must provide an Authorization Token in the Server's Config.toml or passing with --token command line.
This token is used to authenticate your account and the rights to download/upload the Assets/Packages that belong to your teams.
Generating a new Tokenโ
To generate a new token, go to your Profile โ PAT page and press + Create Token button. You will be prompted to set a Name and Expiration Date for your Token.

After created, copy the token and save it, you won't be able to restore it if you lose it.
Now just paste your token into your Config.toml token field or pass it as --token to your server and you are authenticated to run CLI commands!
Teams are group of users and are the "holders" of the Resources (Assets/Packages) in the Store.
Currently they can only be created during the Upload of a new Resource.

Once created, they can be modified under your Profile/Teams tab or at this link. You can add more members, check all uploaded resources and edit it's information.

Releases & Versionsโ
nanos world Store counts on a Release/Version system, which you can upload new versions of your Resource. You can upload versions as Private, Beta, Alpha and Stable and also add a Changelog to it.

Uploading new Resourcesโ
Uploading a Package or an Asset Pack through the UI is very straight. In the upload page, you can define the Package Name (must be unique, following the correct pattern - this is the folder name), the Team, Title, and customize the Descriptions!
You must upload a .zip file with all content your or Package or Asset Pack, as it follows:
Guidelinesโ
- Remember to delete the hidden
.cachefiles if you have them in your Package and Assets folders! - Set the correct version in the
Package.tomlorAssets.toml! - Your
.zipmust contain the filePackage.tomlorAssets.tomlin the root of it.
Categories & Tagsโ
During the creation of your Resource, you can set the Categories and Tags to customize it.
The Tags are used mainly for categorization and (soon) searches. And the Categories are used differently depending if it's a Package or an Asset Pack:
- Package: Categories are used as the type of the Package (game-mode, script, loading-screen).
- Asset Pack: Categories are used just like a more specific Tag.
Store APIโ
You can download, upload and edit your resources through HTTPS requests, check it the Swagger documentation at https://api.nanos.world/store/docs. More tutorials coming soonโข. */}
Automate GitHub Releasesโ
This workflow is maintained by the community. For more details, visit the open source GitHub Repository.
If your Package or Asset Pack is uploaded to GitHub, you can use the community created nanos world Store Publisher Action to automate the upload of new releases!
This action automatically handles version validation, package zipping, and uploading to the Store.
Setting up the Github Actionโ
1. Add Your Token as a Secretโ
- Create a token as described in the Generating a new Token section
- Go to your repository Settings โ Secrets and variables โ Actions
- Click New repository secret
- Name:
NANOS_STORE_TOKEN - Secret: Your token generated in step 1
- Click Add secret
2) Create Workflow Fileโ
Create a .yml file inside your repository as .github/workflows/publish.yml with the content:
name: Publish to nanos world Store
on:
release:
types: [published]
jobs:
build:
runs-on: ubuntu-latest
name: Publish package
steps:
- uses: actions/checkout@v4
- uses: nanos-world/store-action@v1
with:
NANOS_PERSONAL_ACCESS_TOKEN: ${{ secrets.NANOS_STORE_TOKEN }}
NANOS_PACKAGE_NAME: 'your-package-name' # Replace with your package name
Publishing a New Versionโ
To publish a new version:
Update version in Package.toml:โ
[meta]
version = "1.0.1" # Increment from previous
Commit, tag and push:โ
git add Package.toml
git commit -m "Bump version to 1.0.1"
git tag v1.0.1
git push origin main --tags
The action will automatically publish your package when you push the tag!
You can also manually trigger the workflow from the Actions tab in your repository using the workflow_dispatch event.
The action automatically reads the version from your Package.toml file and compares it with the store version. Your local version must be greater than the store version for the upload to succeed.
Multiple Packages in the Repoโ
If you have multiple packages in your repository, you can publish them all at once using the EXTRA_PACKAGE_PATHS input with a JSON array format:
with:
...
EXTRA_PACKAGE_PATHS: '["path/to/package1", "path/to/package2"]'
For more advanced configuration options and troubleshooting, visit the action repository.