The Merkur is tiny extensible javascript library for front-end microservices(micro frontends). It allows by default server side rendering for loading performance boost. You can connect it with other frameworks or languages because merkur defines easy API. You can use one of six predefined template's library Preact, µhtml, Svelte and vanilla but you can easily extend for others.
npx @merkur/create-widget <name>
cd name
npm run dev // Point your browser at http://localhost:4444/
To check out live demo and docs, visit https://merkur.js.org.
Contribute to this project via Pull-Requests.
We are following Conventional Commits Specification. To simplify the commit process, you can use npm run commit command. It opens an interactive interface, which should help you with commit message composition.
To release a version you must have the right permissions, please contact one of the repo maintainers.
To do a regular release, in the root of the monorepo run:
npm run release
lerna version command to bump package versions:npx lerna version <preminor | prepatch | prerelease> --no-git-tag-version --no-push
// prerelease increments the pre* version's last number, e.g. v0.44.0-rc.0 => v0.44.0-rc.1
package.json and in lerna.json, and run npm install from the root of the monorepo.package.jsonlerna.json (otherwise lerna will stop incrementing the pre-version's number, for some reason)package-lock.jsonchore(release): publish). v0.44.0-rc.0). git push origin tag <tagname> (e.g. git push origin tag v0.44.0-rc.0).The packages are released from a GitHub Action that is triggered when a new version tag is pushed to the repository.
Before the actual release, it's safer to return all version numbers to the last stable version. Another option is to release from a separate branch, so your feature branch stays clean.
Thank you to all the people who already contributed to Merkur!