Develop and publish Sites
This guide is for external developers and agencies. You develop a website, shop, or portal in a local project directory and publish the Site in the Sites catalog. You do not need access to a customer Workspace, Git, or a CI environment.
Prerequisites
You need:
- an invitation to the Publisher area,
- a current
nucliinstallation, - a local directory containing editable Sitegenerator sources.
A Site Package contains the complete sources, not build output. Build directories, node_modules, Git metadata, secrets, and local environment files are excluded.
Create the Publisher and Site
The operator invites you to the Publisher area and gives you its direct address, https://www.schukai.com/en/apps/workspace/sites/publisher. Open registration is disabled during the pilot, so the public catalog does not display a Publisher link. Redeem the invitation, sign in, and create a Publisher organization such as “Nordlicht Digital” on your first visit.
Create the Site next. Its entry contains the public name, category, optional public preview URL, and German and English summaries and descriptions. Both languages must be complete before you can submit a release for review. After saving, the Publisher area shows the Store Site ID used for CLI uploads.
Prepare the local project
Initialize the package metadata in the project directory:
nucli sites package init . \
--publisher nordlicht \
--site commerce \
--license MITnucli stores the stable package ID and coordinates in .nucli/site-package.json with restrictive permissions. This file is not included in the Site Package. Keep it with the project so later versions use the same package ID.
Validate the sources before building a version:
nucli sites package validate .Dependencies require exact entries in the lock file. Version ranges and latest are rejected. Hidden paths, symbolic links, colliding file names, and oversized files also fail validation.
Build the Site Package
Create a semantically versioned ZIP file:
nucli sites package build . \
--version 1.0.0 \
--output nordlicht-commerce-1.0.0.zipThe command creates the manifest, calculates file digests, and validates the resulting archive. You can validate an existing ZIP again:
nucli sites package validate nordlicht-commerce-1.0.0.zipUpload the draft
Create a short-lived nucli upload token for the Site. Site Packages are always uploaded with nucli; Git and CI are not required. Pass the token only through standard input:
nucli --host https://www.schukai.com/apps/workspace/sites \
sites store upload nordlicht-commerce-1.0.0.zip \
--site-id <store-site-id> \
--token-stdinPipe the token into standard input and then close the input stream. Never put the token in the command line, project, ZIP file, or logs. The Store creates a private draft from the upload.
Submit the version
Confirm that the German and English metadata is complete. Then open the draft in the Publisher area and select Submit for review. The version remains private during moderation. After approval, it appears in the public catalog and can be installed into an empty Workspace.
A published version is immutable. Corrections require a new semantic version and a new Site Package.
Use Git and CI optionally
Git can support source history, collaboration, and reviews. A CI pipeline can automate the same build and upload workflow. Both are optional; the local nucli and browser workflow remains fully supported.
A public repository may contain Sitegenerator sources. Publisher tokens, Workspace sessions, local environment files, build output, and exported ZIP files must remain outside the repository.
Export from a Workspace
If you already develop inside a Workspace and have the site:packages:export permission, you can continue to export its Development sources on the server:
nucli --tenant <tenant> sites package export <site-id> \
--publisher nordlicht \
--site commerce \
--version 1.0.0 \
--license MIT \
--output nordlicht-commerce-1.0.0.zipThis convenience path is not required for external Publishers.
Verify the result
The publication is prepared when:
nucli sites package validatefinishes successfully,- the upload appears as a private draft in the Publisher area,
- the draft coordinate and version match the local project.
After moderation, the public catalog displays the Site and its approved version.
First-version limits
The pilot supports free public Sites. Sales, billing, payouts, automatic updates for installed Sites, open Publisher registration, and installation into non-empty Sites are outside this contract.