All Projects → umijs → Qiankun

umijs / Qiankun

Licence: mit
📦 🚀 Blazing fast, simple and complete solution for micro frontends.

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Qiankun

Microfrontends
Micro-frontend Architecture in Action-微前端的那些事儿
Stars: ✭ 2,696 (-76.55%)
Mutual labels:  micro-frontends, microfrontends, micro-frontend, microfrontend
angular-react-microfrontend
🚧 React vs Angular ? Why not both ! Micro frontend demo using Angular and React alongs with a NodeJS API
Stars: ✭ 17 (-99.85%)
Mutual labels:  micro-frontends, micro-frontend, microfrontend
Ice
🚀 The Progressive App Framework Based On React(基于 React 的渐进式应用框架)
Stars: ✭ 16,961 (+47.53%)
Mutual labels:  framework, microfrontends
Restana
Super fast and minimalist framework for building REST micro-services.
Stars: ✭ 341 (-97.03%)
Mutual labels:  microservices, framework
Nameko
Python framework for building microservices
Stars: ✭ 4,182 (-63.63%)
Mutual labels:  microservices, framework
react-micro-frontend-example
One approach for a micro frontend in React.
Stars: ✭ 51 (-99.56%)
Mutual labels:  micro-frontends, micro-frontend
micro-fun
Micro frontends as Fun with Next.js & module federation
Stars: ✭ 55 (-99.52%)
Mutual labels:  microfrontends, microfrontend
Eventhus
Go - CQRS / Event Sourcing made easy - Go
Stars: ✭ 350 (-96.96%)
Mutual labels:  microservices, framework
fronts
A progressive micro frontends framework for building Web applications
Stars: ✭ 493 (-95.71%)
Mutual labels:  micro-frontends, microfrontends
Phpboot
☕️ 🚀 tiny & fast PHP framework for building Microservices/RESTful APIs, with useful features: IOC, Hook, ORM, RPC, Swagger, Annotation, Parameters binding, Validation, etc.
Stars: ✭ 638 (-94.45%)
Mutual labels:  microservices, framework
Microservices Framework Benchmark
Raw benchmarks on throughput, latency and transfer of Hello World on popular microservices frameworks
Stars: ✭ 615 (-94.65%)
Mutual labels:  microservices, framework
Servicetalk
A networking framework that evolves with your application
Stars: ✭ 656 (-94.29%)
Mutual labels:  microservices, framework
scalecube-js
Toolkit for working in microservices/micro-frontends architecture.
Stars: ✭ 63 (-99.45%)
Mutual labels:  micro-frontends, microfrontends
vue-mfe
✨ The easiest way to build a Vue.js micro front-end App.
Stars: ✭ 38 (-99.67%)
Mutual labels:  micro-frontends, micro-frontend
piral-microfrontend-demo
A demo for microfrontend webshop product page using Piral. 🚀
Stars: ✭ 20 (-99.83%)
Mutual labels:  microfrontends, microfrontend
micro-frontend-gateway
🌐 Micro Frontends PoC in Angular - GATEWAY
Stars: ✭ 26 (-99.77%)
Mutual labels:  micro-frontends, microfrontends
Micro Frontends
extending the microservice paradigms to web development
Stars: ✭ 3,862 (-66.41%)
Mutual labels:  microservices, micro-frontends
Pysoa
A Python library for writing (micro)services and their clients
Stars: ✭ 74 (-99.36%)
Mutual labels:  microservices, framework
rallie
a library that helps users implement decentralized front-end micro service architecture
Stars: ✭ 285 (-97.52%)
Mutual labels:  microfrontends, micro-frontend
ragu
🔪 A micro-frontend framework with Server Side Rendering.
Stars: ✭ 85 (-99.26%)
Mutual labels:  micro-frontends, micro-frontend

qiankun

npm version coverage npm downloads build status

qiankun(乾坤)

In Chinese, qian(乾) means heaven and kun(坤) earth. qiankun is the universe.

Qiankun enables you and your teams to build next-generation and enterprise-ready web applications leveraging Micro Frontends. It is inspired by and based on single-spa.

🤔 Motivation

A quick recap about the concept of Micro Frontends:

Techniques, strategies and recipes for building a modern web app with multiple teams using different JavaScript frameworks. — Micro Frontends

Qiankun was birthed internally in our group during the time web app development by distributed teams had turned to complete chaos. We faced every problem micro frontend was conceived to solve, so naturally, it became part of our solution.

The path was never easy, we stepped on every challenge there could possibly be. Just to name a few:

  • In what form do micro-apps publish static resources?
  • How does the framework integrate individual micro-apps?
  • How to ensure that sub-applications are isolated from one another (development independence and deployment independence) and runtime sandboxed?
  • Performance issues? What about public dependencies?
  • The list goes on long ...

After solving these common problems of micro frontends and lots of polishing and testing, we extracted the minimal viable framework of our solution, and named it qiankun, as it can contain and serve anything. Not long after, it became the cornerstone of hundreds of our web applications in production, and we decided to open-source it to save you the suffering.

TLDR: Qiankun is probably the most complete micro-frontend solution you ever met🧐.

Features

Qiankun inherits many benefits from single-spa:

  • 📦 Micro-apps Independent Deployment
  • 🛴 Lazy Load
  • 📱 Technology Agnostic

And on top of these, it offers:

  • 💃 Elegant API
  • 💪 HTML Entry Access Mode
  • 🛡 Style Isolation
  • 🧳 JS Sandbox
  • Prefetch Assets
  • 🔌 Umi Plugin Integration

📦 Installation

$ yarn add qiankun  # or npm i qiankun -S

📖 Documentation

You can find the Qiankun documentation on the website

Check out the Getting Started page for a quick overview.

The documentation is divided into several sections:

💿 Examples

Inside the examples folder, there is a sample Shell app and multiple mounted Micro FE apps. To get it running, first clone qiankun:

$ git clone https://github.com/umijs/qiankun.git
$ cd qiankun

Now install and run the example:

$ yarn install
$ yarn examples:install
$ yarn examples:start

Visit http://localhost:7099.

🎯 Roadmap

See Qiankun 3.0 Roadmap

👥 Contributors

Thanks to all the contributors!

contributors

🎁 Acknowledgements

📄 License

Qiankun is MIT licensed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].