Skip to main content

iris_hub/
lib.rs

1//! # Iris - Mensageira dos Devs
2//! 
3//! Iris é um hub de aplicações para desenvolvedores que trabalham com
4//! múltiplas tecnologias. Permite configurar, executar e gerenciar
5//! aplicações de forma centralizada.
6//! 
7//! ## Arquitetura em Microserviços
8//! 
9//! A aplicação está organizada em módulos com responsabilidades bem definidas:
10//! 
11//! ### Core (`core/`)
12//! Contém as estruturas de dados fundamentais:
13//! - `models`: Definições de `AppConfig`, `AppState`, `RunningProcess`, etc.
14//! - `config`: Gerenciamento de configurações e persistência em JSON
15//! 
16//! ### Services (`services/`)
17//! Serviços de negócio independentes:
18//! - `process_manager`: Gerenciamento do ciclo de vida de processos
19//! - `icon_service`: Carregamento e cache de ícones SVG
20//! 
21//! ### UI (`ui/`)
22//! Componentes de interface gráfica:
23//! - `app_hub`: Aplicação principal e coordenação
24//! - `components`: Componentes reutilizáveis (cards, header, footer)
25//! - `dialogs`: Modais e diálogos (add/edit app, confirmação)
26//! - `theme`: Configurações de tema e estilo
27//! 
28//! ### Utils (`utils.rs`)
29//! Funções utilitárias compartilhadas
30//! 
31//! ## Exemplo de Uso
32//! 
33//! ```rust,no_run
34//! use iris::ui::AppHub;
35//! 
36//! fn main() -> eframe::Result<()> {
37//!     let options = eframe::NativeOptions::default();
38//!     eframe::run_native(
39//!         "Iris",
40//!         options,
41//!         Box::new(|cc| Ok(Box::new(AppHub::new(cc)))),
42//!     )
43//! }
44//! ```
45
46// Módulos públicos
47pub mod core;
48pub mod services;
49pub mod ui;
50pub mod utils;
51
52/// Versão atual da aplicação
53pub const VERSION: &str = "1.0.0";
54
55// Re-exports para conveniência
56pub use core::{AppConfig, AppState, ConfigManager};
57pub use services::{ProcessManager, IconCache};
58pub use ui::AppHub;