1. Start local Strapi: npm run develop
  2. Make changes in the admin panel (Content-Type Builder) or edit schema.json files directly
  3. Regenerate types: npm run strapi ts:generate-types
  4. Review the diff: git diff backend/src/api/
  5. Stage only schema files: git add backend/src/api/ backend/types/generated/contentTypes.d.ts
  6. Commit: git commit -m "feat: <describe the change>"
  7. Push and merge to main

Schema changes (adding/modifying content types, fields, relations) must be done locally → committed → pushed. Strapi Cloud rebuilds from the repo and applies the schema. You cannot change the schema directly in the Strapi Cloud admin UI.

Content (actual data — projects, experiences, etc.) lives only in the cloud database. It's never in the repo and isn't affected by deployments.

The practical implication for you: your local backend is essentially a schema editor, not a content environment. Since the frontend only talks to Strapi Cloud, any content you add locally is invisible to the frontend — which is fine and expected.

A few things to watch out for given this setup:

Strapi

https://cloud.strapi.io/projects → projects

https://cloud.strapi.io/projects/portfolio-backend-9990691274/production/deployments → portfolio-backend

<aside>

update schema

add new content

update frontend