Update README.md

This commit is contained in:
2025-11-11 09:52:15 +03:00
parent 29b5c8fcae
commit 0d861908bf

View File

@@ -1,29 +1,37 @@
# PKI Management (JavaFX) # PKI Management (JavaFX)
Современное настольное приложение на JavaFX для управления PKI-ресурсами с модульной архитектурой, настраиваемой навигацией и системой прав доступа. <p align="center">
<img src="https://img.shields.io/badge/Java-ED8B00?style=for-the-badge&logo=openjdk&logoColor=white" alt="Java badge"/>
<img src="https://img.shields.io/badge/JavaFX-1B6AC6?style=for-the-badge&logo=java&logoColor=white" alt="JavaFX badge"/>
<img src="https://img.shields.io/badge/Maven-C71A36?style=for-the-badge&logo=apache-maven&logoColor=white" alt="Maven badge"/>
<img src="https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white" alt="Windows badge"/>
<img src="https://img.shields.io/badge/Architecture-Modular-4CAF50?style=for-the-badge" alt="Modular architecture badge"/>
</p>
## Особенности > Современное настольное приложение на JavaFX для управления PKI-ресурсами с модульной архитектурой, настраиваемой навигацией и системой прав доступа.
- Компонентная навигация: ## ✨ Особенности
- **Компонентная навигация**
- `MenuItem` — визуальные блоки-оглавления - `MenuItem` — визуальные блоки-оглавления
- `SubMenuItem` — кликабельные пункты подменю - `SubMenuItem` — кликабельные пункты подменю
- Управление видимостью пунктов (вкл/выкл), автоматическое скрытие пустых блоков - Управление видимостью пунктов (вкл/выкл), автоматическое скрытие пустых блоков
- Модульная архитектура: - **Модульная архитектура**
- Пример модуля: `Test 1` - Пример модуля: `Test 1`
- Настройки с пользовательским и админским режимами - Настройки с пользовательским и админским режимами
- Админский доступ: - **Админский доступ**
- Диалог ввода пароля с автофокусом - Диалог ввода пароля с автофокусом
- Переключение интерфейса настроек (User/Admin) - Переключение интерфейса настроек (User/Admin)
- Конфигурация: - **Конфигурация**
- Хранится в скрытой папке пользователя `pki_management` (Windows: `C:\\Users\\{user}\\pki_management\\config.properties`) - Хранится в скрытой папке пользователя `pki_management` (Windows: `C:\Users\{user}\pki_management\config.properties`)
- Доступ через `ConfigManager` (singleton) - Доступ через `ConfigManager` (singleton)
## Стек ## 🧰 Стек
- Java 21, JavaFX 21 (Controls + FXML) - Java 21, JavaFX 21 (Controls + FXML)
- Maven - Maven
## Структура проекта ## 🗂️ Структура проекта
``` ```
src/main/java/com/dsol/pki_management/ src/main/java/com/dsol/pki_management/
@@ -56,11 +64,10 @@ src/main/resources/com/dsol/pki_management/
└─ test1-view.fxml └─ test1-view.fxml
``` ```
## Быстрый старт ## 🚀 Быстрый старт
1) Установите JDK 21 и Maven 1. Установите JDK 21 и Maven
2. Сборка и запуск
2) Сборка и запуск
```bash ```bash
# Windows / Linux / macOS # Windows / Linux / macOS
@@ -73,9 +80,9 @@ mvn clean javafx:run
mvn -q -Dexec.mainClass="com.dsol.pki_management.app.Launcher" exec:java mvn -q -Dexec.mainClass="com.dsol.pki_management.app.Launcher" exec:java
``` ```
## Конфигурация ## ⚙️ Конфигурация
- Путь: `C:\\Users\\{user}\\pki_management\\config.properties` (Windows) - Путь: `C:\Users\{user}\pki_management\config.properties` (Windows)
- Создается автоматически при первом запуске - Создается автоматически при первом запуске
- Пример ключей: - Пример ключей:
- `admin.password` — пароль администратора (по умолчанию `admin123`) - `admin.password` — пароль администратора (по умолчанию `admin123`)
@@ -90,21 +97,21 @@ config.setProperty(AppConfig.KEY_THEME, "light");
config.saveConfig(); config.saveConfig();
``` ```
## UX-функции ## 💡 UX-функции
- Гамбургер-меню слева - Гамбургер-меню слева
- Отображение навигации как дерева - Отображение навигации как дерева
- Зачеркивание скрытых SubMenu пунктов - Зачеркивание скрытых SubMenu пунктов
- Скрытие `MenuItem`, если все дочерние скрыты - Скрытие `MenuItem`, если все дочерние скрыты
## Дорожная карта ## 🛣️ Дорожная карта
- Локализация интерфейса (i18n) - Локализация интерфейса (i18n)
- Темы (light/dark) - Темы (light/dark)
- Новые модули (например, управление сертификатами, аудит) - Новые модули: управление сертификатами, аудит
- Экспорт/импорт настроек - Экспорт/импорт настроек
## Разработка ## 👩‍💻 Разработка
```bash ```bash
# Сборка # Сборка
@@ -114,6 +121,10 @@ mvn clean package
mvn -Dprism.verbose=true javafx:run mvn -Dprism.verbose=true javafx:run
``` ```
## Лицензия ## 📄 Лицензия
Проект распространяется на условиях лицензии Apache-2.0. Проект распространяется на условиях лицензии Apache-2.0.
---
> Бейджи оформлены с помощью коллекции [markdown-badges](https://github.com/Ileriayo/markdown-badges).