micro-lc is an open source micro-frontend orchestrator for building flexible, multi-tenant frontend applications. And much more!
Tip: use the official playground to try micro-lc immediately.
An introduction about micro frontend and how micro-lc works:
micro-lc is shipped as an ES module CDN bundle and can be imported in any HTML page. Moreover, a dockerized webserver is available on Docker Hub.
Read the docs to learn how you can use micro-lc in your next project!
This repository is made of 5 subpackages. The dependencies can be sketched as follows:
`interfaces`
|
`composer`
|
`orchestrator` `iconic`
| |
`layout`
to build the packages there's a script which can be invoked after install as
yarn initialize [OPTIONS]where OPTIONS are
-cor--cleanup- one of the subpackages:
interfaces,iconic,composer,orchestrator, andlayout(default)
By using cleanup you require initialize to trash anything in the dist, node_modules, and coverage directories.
By choosing one subpackage, initialize will build up to that one.
To build the repository disregarding previous actions run:
yarn initialize --cleanupYarn allows to invoke scripts onto subpackages in a workspaces environment. Such commands might
become soon verbose since to build a subpackage the command would be like:
yarn workspace @micro-lc/orchestrator buildhence we enforced some shortcuts:
workspace @micro-lc/interfaces->iworkspace @micro-lc/iconic->cworkspace @micro-lc/composer->mworkspace @micro-lc/orchestrator->oworkspace @micro-lc/layout->l
hence the command above would become:
yarn o buildTo run tests ensure some CommonJS to ESM conversion on dependencies by running
yarn prepare-testthen simply run
yarn testor
yarn coveragelayout is a webcomponents repository and provides a storybook environment.
Remind to build dependencies as prompted before and then run:
yarn l storybookA local playground is also available. Run:
yarn playgroundto start the playground, and:
yarn playground-stopto stop it.
To create a tag, a custom script is provided. Given the library/package you'd like to tag:
orchestratorcomposerlayouticonicinterfaces
just run
yarn bump <PACKAGE> [major|minor|patch|<VERSION>]which will:
- update the changelog moving the unreleased entries to the tagged version
- create the appropriate tags for npm libraries and docker containers
Notice that orchestrator release, on tag, both the npm library and a docker container,
hence carries 2 tags simultaneously.
We are thankful for any contributions from the community, read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to micro-lc.
micro-lc is Apache 2.0 licensed.

