Skip to content

feat(calm-studio): add standalone Dockerfile for dev server - #3053

Open
MLKiiwy wants to merge 1 commit into
finos:mainfrom
MLKiiwy:feat/calm-studio-dockerfile
Open

MLKiiwy wants to merge 1 commit into
finos:mainfrom
MLKiiwy:feat/calm-studio-dockerfile

Conversation

@MLKiiwy

@MLKiiwy MLKiiwy commented Sep 5, 2026

Copy link
Copy Markdown

Description

Adds Dockerfile.calm-studio — a self-contained image that installs all prerequisites, clones the repo, and starts the CALM Studio Vite dev server on port 5173.

This removes the need to install Node 26, clone the repo manually, or manage workspace build order to try CALM Studio locally.

docker build -f Dockerfile.calm-studio -t calm-studio .
docker run -p 5173:5173 calm-studio
# open http://localhost:5173

The image builds the workspace dependencies that Vite requires at runtime (@finos/calm-models@calmstudio/calm-core@calmstudio/extensions) before starting the dev server, since their package.json exports point to compiled dist/ output.

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • 🎨 Code style/formatting changes
  • ♻️ Refactoring (no functional changes)
  • ⚡ Performance improvements
  • ✅ Test additions or updates
  • 🔧 Chore (maintenance, dependencies, CI, etc.)

Affected Components

  • CLI (cli/)
  • Schema (calm/)
  • CALM AI (calm-ai/)
  • CALM Hub (calm-hub/)
  • CALM Hub UI (calm-hub-ui/)
  • CALM Server (calm-server/)
  • CALM Widgets (calm-widgets/)
  • Documentation (docs/)
  • Shared (shared/)
  • VS Code Extension (calm-plugins/vscode/)
  • Dependencies
  • CI/CD

Commit Message Format ✅

feat(calm-studio): add standalone Dockerfile for dev server

Testing

  • I have tested my changes locally
  • I have added/updated unit tests
  • All existing tests pass

Built and ran the image; Vite started cleanly on port 5173 with no errors, serving the SvelteKit app shell.

Checklist

  • My commits follow the conventional commit format
  • I have updated documentation if necessary
  • I have added tests for my changes (if applicable)
  • My changes follow the project's coding standards

Clones the repo at image-build time using node:26, builds the workspace
dependencies (@finos/calm-models, @calmstudio/calm-core,
@calmstudio/extensions) that Vite needs at runtime, then starts the
Vite dev server on port 5173 with --host.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@MLKiiwy
MLKiiwy requested a review from a team as a code owner September 5, 2026 10:00
@linux-foundation-easycla

Copy link
Copy Markdown

CLA Not Signed

One or more co-authors of this pull request were not found. You must specify co-authors in commit message trailer via:

Co-authored-by: name <email>

Supported Co-authored-by: formats include:

  1. Anything <id+login@users.noreply.github.com> - it will locate your GitHub user by id part.
  2. Anything <login@users.noreply.github.com> - it will locate your GitHub user by login part.
  3. Anything <public-email> - it will locate your GitHub user by public-email part. Note that this email must be made public on Github.
  4. Anything <other-email> - it will locate your GitHub user by other-email part but only if that email was used before for any other CLA as a main commit author.
  5. login <any-valid-email> - it will locate your GitHub user by login part, note that login part must be at least 3 characters long.

Alternatively, if the co-author should not be included, remove the Co-authored-by: line from the commit message.

Please update your commit message(s) by doing git commit --amend and then git push [--force] and then request re-running CLA check via commenting on this pull request:

/easycla

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant