Workflow
Deployment
Messagevisor deployment is usually a Git workflow plus a generated-artifact publishing step. The exact shape depends on whether you publish only datafiles, the catalog too, or a sets-based release flow.
Common deployment shape#
- author locales, messages, segments, targets, and tests
- run
lintandtest - run
build - publish generated
datafiles/
This is the minimal reliable deployment loop, when expressed as a sequence of commands:
$ npx messagevisor lint$ npx messagevisor test$ npx messagevisor build$ npx messagevisor catalog exportDatafile-only deployment#
This is the most common setup.
You build the datafiles and publish them somewhere your applications can load them from, preferably a CDN.
The content under datafiles/ is what you will be uploading to your CDN, and then made available to your applications at runtime.
Deploying the catalog too#
You can also generate and publish the catalog:
$ npx messagevisor catalog exportThe exported catalog (static files only) is found under catalog/ directory, that you can host anywhere you want.
Sets-based deployment#
Datafiles for sets are found under datafiles/<set>/ directory:
datafiles/├── dev/│ └── messagevisor-web-en.json├── staging/│ └── messagevisor-web-en.json└── production/ └── messagevisor-web-en.jsonIt is up to you to decide if you wish to serve all those datafiles from a single CDN, or have them served from different CDNs (one per set). Messagevisor does not have any strong opinions on this.
The generated catalog, even for a multi-set project, would still be found under the same catalog/ directory, and it will be multi-set aware by default.
Edge cases and behavior notes#
Targets shape what you deploy#
If you have multiple targets, you are deploying multiple runtime artifacts, not one universal bundle.
Catalog hosting needs routing awareness#
Browser-router catalogs need SPA fallback hosting. Hash-router catalogs trade cleaner URLs for simpler hosting.
Hosting guides#
Step-by-step guides for specific CI/CD and hosting configurations.
- GitHub Actions
- Cloudflare Workers Static Assets
- Cloudflare Workers KV
- Cloudflare Workers with Hono
- AWS CloudFront with S3

