ugdu is an intuitive micro frontends solution.
ugdu is a collection of tools for developing micro frontends projects.
It includes a task processor which could be hooked in,
a packer powered by the task processor to help develop and build micro frontends projects,
and a runtime lib.
Check here for a quick start.
For more detail, check our API docs.
- When building
- Minimal build time.
- For your source code, only files changed will be rebuilt.
- For
vendor package, only packages whose version changes will be rebuilt.
- Minimal generated files.
- For
vendor package, Only packages imported by multiplemodules orlocal modulewill be built separately.
- For
- Minimal generated size.
- For
vendor package, only code used in your source code will be built into the generated files.
- For
- Security.
- The package will be rebuilt when you import
bindings that the corresponding generated module haven't export. - We will throw a meaningful error in build time other than runtime when you accidentally make a mistake.
- The package will be rebuilt when you import
- Extensible
- You can hook into the stage you are interested in when you develop an application.
- You can enhance our built-in
task options, or create your own. And then share to others.
- Minimal build time.
- At runtime
- Independent deployment.
- All
modules can be deployed independently.
- All
- Multiple frameworks in one project.
- Different
apps can be based on different frameworks. This means that you can upgrade or refactor your project incrementally. For example, develop new feature with vue3 and the other code remain vue2.
- Different
- Style security.
- To avoid FOUC, the
modulewill only be evaluated after the css it required is loaded. - The css of the
apps which should be unload will be removed from the document.
- To avoid FOUC, the
- Lazy load.
- Only the
modules which are used by the activeapps will be loaded.
- Only the
- Preload assets
- When load a
module, allmodules thismoduleimports will be preload.
- When load a
- Independent deployment.
In addition, all packages are well typed. So you will be prompted when using the API.