1.0.12 • Published 6 months ago
@minsize/core v1.0.12
Модуль Ядра
Добро пожаловать в модуль Ядра нашего проекта. Этот модуль предоставляет основные функциональности и API, которые поддерживают общую архитектуру и интеграцию модулей в нашем приложении.
Содержание
Введение
Модуль Ядра спроектирован для предоставления прочной основы для разработки и интеграции дополнительных модулей в приложение. Он управляет критическими операциями, такими как регистрация модулей, управление их жизненным циклом, обработка событий и многое другое.
Функциональность
- Модульная архитектура: Динамическая загрузка и управление модулями.
- Управление жизненным циклом: Легкая инициализация, активация, деактивация и уничтожение модулей.
- Управление зависимостями: Разрешение и управление зависимостями модулей.
- Система событий: Генерация и прослушивание событий на уровне приложения.
- Безопасность: Защита взаимодействий модулей с помощью системы разрешений.
- Логирование: Интегрированное логирование для отладки и мониторинга.
- Управление конфигурацией: Настройка основных настроек и конфигураций модулей.
- Хеширование: Блокировка изменений модулей пользователями.
Установка
Чтобы включить модуль Ядра в ваш проект, добавьте его в зависимости вашего проекта:
npm install @minsize/core
Использование
Пример использования модуля Ядра в вашем приложении:
import mcore from '@minsize/core';
// Регистрация и запуск нового модуля
mcore.register([Plugin()])
Справочник API
Core
register(plugins: Plugin[]): void
Регистрирует новые модули в ядро.
Структура плагинов
NAME/
├── src/
└── plugin.json
plugin.json
{
"uid": "randomId or custom name",
"name": "Test",
"description": "Testing",
"version": "1.0.0",
"authors": [
"xuserz"
],
"compatibleVersions": {
"min": "1.0.0"
},
"dependencies": {}
}
Инициализация плагина
import plugin from './plugin.json'
import type { Plugin, PluginProps } from '@minsize/core'
function init(props: PluginProps) {
// ваш код инициализации
}
function install(): Plugin {
return {
...plugin,
init,
}
}
export default install
Лицензия
Этот проект лицензирован под лицензией MIT. Подробности можно найти в файле LICENSE
.