This monorepo uses Changesets for version management.
All packages in the monorepo are versioned with Changesets:
@bigrack/mcp- Main MCP package (publishable to npm, depends on@bigrack/shared)@bigrack/shared- Shared package (private, but versioned because multiple packages depend on it)@bigrack/config- Shared configuration (private, but versioned because other packages depend on it)@bigrack/api- Backend API (private application, depends on@bigrack/shared, versioned for health checks and version display)@bigrack/dashboard- Dashboard app (private application, depends on@bigrack/shared, versioned for version display)@bigrack/website- Marketing website (private application, depends on@bigrack/shared, versioned for version display)
Note:
- Private packages are versioned by Changesets but won't be published to npm (due to
"private": truein their package.json) - Their versions are useful for displaying in health checks, footers, or other UI elements
- Since
@bigrack/mcp,@bigrack/api,@bigrack/dashboard, and@bigrack/websiteall depend on@bigrack/shared, they are automatically versioned to maintain consistency when@bigrack/sharedchanges
When you modify a versioned package, create a changeset:
npm run changeset:addThis will prompt you for:
- Which packages have changed
- The type of change (major, minor, patch)
- A description of the changes
npm run changeset:statusDisplays pending changesets and their impact on versions.
npm run versionThis command:
- Applies changesets and updates versions in
package.jsonfiles - Generates CHANGELOG.md files
# 1. Make your modifications in the packages
# 2. Create a changeset for modified packages
npm run changeset:add
# 3. Commit the changeset file
git add .changeset/
git commit -m "feat: add new feature"
# 4. When ready to publish, version the packages
npm run version
# This updates package.json files and generates CHANGELOG.md
# 5. Commit the version changes
git add .
git commit -m "chore: version packages"-
Modify the
@bigrack/sharedpackage:# Make your modifications in packages/shared/ -
Create a changeset:
npm run changeset:add # Select: @bigrack/shared # Type: patch (or minor/major depending on the change) # Description: "Add new utility function"
-
Commit the changeset:
git add .changeset/ git commit -m "feat(shared): add new utility function" -
When ready to version:
npm run version # Updates package.json and generates CHANGELOG.md -
Commit the version changes:
git add . git commit -m "chore: version packages"
Changesets configuration is located in .changeset/config.json.
For more information about Changesets, see: