Github Protocol

Sygnal Component Marketplace ( SCM ) uses Github for the storage and deployment of Code Components to subscribing Webflow Workspaces.

Branch Structures

Integration Branch ( main )

main is the integration branch. You can do integration testing here, and do deployments to your standard test workspace, it will not affect SCM deployments.

Release Branches ( release/* )

Why we use this model.

  • Identifiable tags of the v* convention make it easier for SCM to identify available library versions

    • Sort them newest to oldest, using semver sorting

    • Identify the current release

  • Discrete release branches makes release management, breaking changes, and hotfixes more manageable

Feature Branches ( feature/* )

Use this convention for feature-specific branches if you're doing long-term development

  • Other branches can be used for experiments

Future

We'll look at;

  • Standardizing other tags

Deploying a Release

Prep integration;

  1. Merge any necessary code from feature branches into main, if you're deploying a new feature

  2. Update the library VERSION

Testing;

  1. Run unit tests

  2. Deploy main to your test Webflow workspace and fully test your work

Release;

  1. Create a new Release branch if you have a new major or minor version

    git checkout -b release/0.1
  2. PR your changes from main to the appropriate release branch

  3. Tag this commit

    git tag v0.1.3
  4. Push the Re

Creating a new Release Branch

From main

e.g.

git checkout -b release/0.1)

\

Last updated