Git Product home page Git Product logo

garfish's Introduction

garfish

NPM version build status

Garfish is a micro front-end framework, mainly used to solve the problems of cross-team collaboration, diversification of technology system, and increasing complexity of applications brought by modern web applications in the context of front-end ecological boom and increasing complexity of web applications, and Garfish has been polished and tested by a large number of online applications, with strong functional stability and reliability.

Garfish Goals

To compose multiple independently delivered front-end applications into a whole, and to decompose front-end applications into some smaller and simpler applications that can be "independently developed", "independently tested" and "independently deployed", while still appearing to users as cohesive individual products.

Installation

# npm
npm install garfish

# yarn
yarn add garfish

Documentation

The doc site (Garfish) is only available in Chinese for now, we are planning to add English versions soon.

Functionality

๐ŸŒˆ Rich and efficient product features

  • Garfish micro front-end sub-application supports any kind of framework and technology system access
  • Garfish micro front-end sub-application supports "independent development", "independent testing" and "independent deployment
  • Powerful pre-loading capability, automatically record user application loading habits to increase loading weight, and greatly reduce application switching time
  • Support for dependency sharing, which greatly reduces the overall package size and the repeated loading of dependencies.
  • Support data collection, effectively perceive the state of the application during operation
  • Support for multiple instance capability to run multiple sub-applications in the page at the same time enhances the business splitting efforts
  • Provides efficient and usable debugging tools to assist users in the micro front-end model brings different development experience problems from the traditional R&D model

๐Ÿ“ฆ Highly scalable core modules

  • Supports HTML entry and JS entry through the Loader core module, making it easy to access micro front-end applications
  • Router module provides route-driven, master-child route isolation, users only need to configure the routing table application can complete the independent rendering and destruction, the user does not need to care about the internal logic
  • Sandbox module provides runtime isolation for the application's Runtime, which can effectively isolate the side effects of JS and Style on the application
  • Store provides a simple mechanism for exchanging communication data

๐ŸŽฏ Highly scalable plugin mechanism

  • Provide business plugins to meet various customization needs of business parties

Contributing

Credit

  • Qiankun is a very good micro front-end framework, Garfish sandbox design learned a lot of good ideas
  • single-spa for community raised a hot wave of micro front-end solutions, learned a lot of amazing Garfish routing system design ideas

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.