Documentation

Keeping a System Up to Date

Module updates: pulled in Studio, synced to GitHub on demand

Keeping a System Up to Date

A Stellify-built system is assembled from Constellation modules we build, test and improve centrally. When a module improves, the update is pulled into your project in the Studio and synced to your GitHub repository on demand — ready to deploy. Keeping a system current is included in Studio plans; there is no separate fee.

Updates reach a live system the same way however it runs:

  • On your own Laravel Cloud account: when the update is synced to your repository, Laravel Cloud deploys it. See Setting up Laravel Cloud.
  • With your own developer or a development partner: they review the changelog in Studio, run the tests, and sync when ready — then deploy like any code change.

How updates reach you

  1. The Studio shows what's available. Your project lists every module it's built from. When a module has a newer version, the project shows an "Updates available" panel: the module, the version you're on, the new version, whether it's a fix or a behaviour change, and the changelog entry describing what changed.
  2. You pull the update. Fixes can be applied individually or all at once. Behaviour changes are always applied one at a time, with the changelog shown first, so nothing about how your system behaves changes without you seeing it.
  3. Tests run. Applying an update runs the module's own test suite against your project (and your project's tests, if it has any). If anything fails, the Studio offers to roll the update back — your project returns to the exact versions it was on before.
  4. You sync to GitHub. Once you're happy, the Studio prompts you to sync the project to your connected repository. The sync is always on demand — never automatic. It lands as a normal commit on your connected branch, where your developer reviews the diff like any code change.

If you've changed a module

Editing a module's code in the Studio forks your copy of the units you touched. Those units are yours — an update never overwrites them. Instead, the update panel flags the module as needs review: you've changed this module, and lists exactly which units differ from the new version, so you (or your developer) can decide whether to keep your change, take the update, or merge the two.

Working on a live system

For developers and development partners extending a Stellify-built system:

  • Changes made in Studio stay compatible with module updates and the change flow. Stellify remains the source of truth, so updates, change requests and your custom work keep flowing through the same pipeline.
  • The customer owns the code and may edit it outside Studio. Doing so is a one-way exit: later Stellify syncs could conflict with those edits, so automatic updates and the change flow no longer apply to that system. The sync surfaces any conflict rather than overwriting anything silently — but reconciling it, and everything after it, is manual work.
  • Bugs in Stellify modules are fixed by Stellify centrally and flow to every system as updates. Bugs in custom code a partner or developer wrote are theirs to fix.

Deploying the update

After the sync, deployment is whatever your hosting already does with a new commit:

  • Your own Laravel Cloud account: Laravel Cloud deploys when the connected branch updates — see Setting up Laravel Cloud. [Laravel Cloud specifics: placeholder — to be filled in once the Cloud deploy flow is documented end to end.]
  • Your own server: pull and rebuild as covered in Deploy: Your Own Server:
git pull
composer install --no-dev --optimize-autoloader
npm ci && npm run build
php artisan migrate --force
php artisan config:cache && php artisan route:cache && php artisan view:cache

Staying informed

Project owners and collaborators can opt in to an email digest of available updates, per user, from their account settings. The digest is informational only — nothing is applied or synced on your behalf.