linid-im-front-corelib is a TypeScript library designed as a core front-end module for the LinID Identity Management ecosystem.
It provides shared interfaces, types, default services, and plugin-zone components used across the LinID front-end applications, including:
- The Vue.js/Quasar module federation host
- The remote plugin repositories
This library ensures consistency across all front-end modules by centralizing common logic, validation tools, and data structures for identity management features such as CRUD operations on persons, users, and related entities.
This library is part of a larger ecosystem including Java back-end services, workflow APIs, multiple plugins, and front-end modules.
- Shared TypeScript interfaces and types
- Core services used across LinID front-end apps
- Plugin zone components for dynamic front-end plugin integration
- Common validation utilities for identity management workflows
- Designed to integrate seamlessly with Vue.js, Quasar, and module federation architecture
| Area | Technology |
|---|---|
| Language | TypeScript |
| Framework | Vue.js (Composition API) |
| UI Toolkit | Quasar Framework |
| Module System | Module Federation |
| Package Manager | npm / pnpm |
Ensure the following requirements to use or develop the library:
- Node.js ≥ 22.19
- Package manager: npm, pnpm (>= 10)
- Vue.js 3 project
- Quasar Framework if using UI components
- A bundler supporting Module Federation (Webpack 5, Vite, Rsbuild and Rspack)
Install the library from npm:
npm install @linagora/linid-im-front-corelibpnpm add @linagora/linid-im-front-corelibThis project is licensed under: GNU Affero General Public License version 3
A full technical documentation is available in the docs/ directory:
-
🔄 Module Lifecycle System
Learn how business modules initialize themselves with the standardized lifecycle system.
→docs/module-lifecycle.md -
🔌 Plugin Zone Component
Learn how to use the component that dynamically renders remote Vue plugins.
→docs/components-plugin-zones.md -
🧰 Helper Functions
Detailed description of all functions used in the plugin system.
→docs/helpers.md -
🧩 TypeScript Types & Interfaces
Detailed description of all types and interfaces used in the plugin system.
→docs/types-and-interfaces.md
More documents will be added as the library evolves.
We welcome contributions to improve and extend this core library. Please refer to the CONTRIBUTING.md file for:
- Development workflow
- Code guidelines
- Commit conventions
- Pull request rules