Herramientas de usuario

Herramientas del sitio


start

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
start [2026/07/31 04:25] – [**BASIS Core Project Overview**] adminmsiccastart [2026/07/31 04:26] (actual) adminmsicca
Línea 1: Línea 1:
-# BASIS core+# BASIS
  
-This project, **BASIS Core**, is a modular, multi-tenant enterprise platform built with PHP. It implements a robust PSR-7/PSR-15 compliant architecture with advanced security features and modern frontend integration via Hotwire Turbo. +This project, **BASIS**, is a modular, multi-tenant enterprise platform built with PHP. It implements a robust PSR-7/PSR-15 compliant architecture with advanced security features and modern frontend integration via Hotwire Turbo. 
  
 Based on the provided UML sequence diagram and codebase, here is a structured introduction to the project: Based on the provided UML sequence diagram and codebase, here is a structured introduction to the project:
  
-### 1. HTTP Request Pipeline & Middleware Stack+## 1. HTTP Request Pipeline & Middleware Stack
 The application uses a layered middleware pipeline to process requests securely before they reach the business logic: The application uses a layered middleware pipeline to process requests securely before they reach the business logic:
 *   **Entry Point & Kernel**: Requests enter via `public/index.php` and are dispatched by the `Http\Kernel` (`core/Http/Kernel.php`). *   **Entry Point & Kernel**: Requests enter via `public/index.php` and are dispatched by the `Http\Kernel` (`core/Http/Kernel.php`).
Línea 13: Línea 13:
 *   **Turbo Detection**: `TurboStreamDetector` (`core/Http/TurboStreamDetector.php`) identifies if the request originates from Hotwire Turbo, allowing the controller to return `TurboStreamResponse` instead of full HTML. *   **Turbo Detection**: `TurboStreamDetector` (`core/Http/TurboStreamDetector.php`) identifies if the request originates from Hotwire Turbo, allowing the controller to return `TurboStreamResponse` instead of full HTML.
  
-### 2. Advanced Authentication & Security Flow+## 2. Advanced Authentication & Security Flow
 The platform implements a sophisticated, multi-layered authentication system: The platform implements a sophisticated, multi-layered authentication system:
 *   **Core Authentication**: `AuthService` (`core/Auth/AuthService.php`) handles credential verification and session creation via `SessionManager`. *   **Core Authentication**: `AuthService` (`core/Auth/AuthService.php`) handles credential verification and session creation via `SessionManager`.
Línea 20: Línea 20:
 *   **User Context**: Upon successful login, `UserProfileAgent` (`core/Agents/UserProfileAgent.php`) initializes the user's profile, permissions, and runtime context. *   **User Context**: Upon successful login, `UserProfileAgent` (`core/Agents/UserProfileAgent.php`) initializes the user's profile, permissions, and runtime context.
  
-### 3. Modern Frontend Integration (Hotwire Turbo)+## 3. Modern Frontend Integration (Hotwire Turbo)
 Instead of building a heavy SPA, the project uses **Hotwire Turbo** for a fast, modern UX: Instead of building a heavy SPA, the project uses **Hotwire Turbo** for a fast, modern UX:
 *   The `TurboStreamDetector` intercepts responses from the `App Controller`. *   The `TurboStreamDetector` intercepts responses from the `App Controller`.
Línea 26: Línea 26:
 *   This allows seamless, SPA-like navigation without writing custom JavaScript, while keeping the server as the source of truth. *   This allows seamless, SPA-like navigation without writing custom JavaScript, while keeping the server as the source of truth.
  
-### 4. Modular & Multi-Tenant Architecture+## 4. Modular & Multi-Tenant Architecture
 The project is structured as a monorepo containing distinct "apps" and "modules": The project is structured as a monorepo containing distinct "apps" and "modules":
 *   **Multi-App Support**: It hosts multiple business applications like **Operand** (ERP), **Nexus** (BI/Strategy), **Axis** (Field Operations), and **Vector** (Engineering). Each app has its own controllers, views, and routing (`apps/operand`, `apps/nexus`, etc.). *   **Multi-App Support**: It hosts multiple business applications like **Operand** (ERP), **Nexus** (BI/Strategy), **Axis** (Field Operations), and **Vector** (Engineering). Each app has its own controllers, views, and routing (`apps/operand`, `apps/nexus`, etc.).
Línea 32: Línea 32:
 *   **Database Isolation**: The `db_auth` schema centralizes user identities, while `TenantResolutionMiddleware` ensures data isolation per company using database-level RLS. *   **Database Isolation**: The `db_auth` schema centralizes user identities, while `TenantResolutionMiddleware` ensures data isolation per company using database-level RLS.
  
-**BASIS Core Overview**+# BASIS Core Overview
  
 BASIS Core is a modular framework and identity kernel for the BASIS ecosystem (which includes applications like Operand, Nexus, Vector, Codex, and Axis). It serves as a central authentication and modular platform for enterprise applications. BASIS Core is a modular framework and identity kernel for the BASIS ecosystem (which includes applications like Operand, Nexus, Vector, Codex, and Axis). It serves as a central authentication and modular platform for enterprise applications.
  
-**Key Modules and Their Functions**+# Key Modules and Their Functions
  
-## **1. Core Modules (in `/core/` directory)**+## 1. Core Modules (in `/core/` directory)
 - **Agents**: Likely handles agent-based operations or services - **Agents**: Likely handles agent-based operations or services
 - **Auth**: Central authentication system implementing JWT, refresh token rotation, and session management - **Auth**: Central authentication system implementing JWT, refresh token rotation, and session management
Línea 49: Línea 49:
 - **View**: View rendering and templating system - **View**: View rendering and templating system
  
-## **2. Application Modules (in `/modules/` directory)**+## 2. Application Modules (in `/modules/` directory)
 - **audit (sys-audit)**: Centralized audit logging and tracking system - **audit (sys-audit)**: Centralized audit logging and tracking system
 - **catalog-master**: Master catalog management - **catalog-master**: Master catalog management
Línea 66: Línea 66:
 - **scheduler (sys-scheduler)**: Scheduled task/job management - **scheduler (sys-scheduler)**: Scheduled task/job management
  
-## **3. Vertical Applications (in `/apps/` directory)**+## 3. Vertical Applications (in `/apps/` directory)
 - **axis**: Specific application (possibly for analytics or BI) - **axis**: Specific application (possibly for analytics or BI)
 - **codex**: Documentation or knowledge management application - **codex**: Documentation or knowledge management application
Línea 74: Línea 74:
 - **vector**: Data or application vector system - **vector**: Data or application vector system
  
-## **4. Shared Components (in `/shared/` directory)**+## 4. Shared Components (in `/shared/` directory)
 - **components**: Reusable UI components - **components**: Reusable UI components
 - **layouts**: Common layout templates - **layouts**: Common layout templates
Línea 81: Línea 81:
 # **Code Organization** # **Code Organization**
  
-## **1. Directory Structure**+## 1. Directory Structure
 The project follows a clear hierarchical structure: The project follows a clear hierarchical structure:
 - **Root Level**: Configuration files, documentation, and deployment scripts - **Root Level**: Configuration files, documentation, and deployment scripts
Línea 92: Línea 92:
 - **tests/**: Unit, integration, and end-to-end tests - **tests/**: Unit, integration, and end-to-end tests
  
-## **2. Configuration System**+## 2. Configuration System
 - Central configuration in `/config/` with files for: - Central configuration in `/config/` with files for:
   - Application settings (`app.php`)   - Application settings (`app.php`)
Línea 100: Línea 100:
   - UI configuration (`theme.php`, `ui.php`)   - UI configuration (`theme.php`, `ui.php`)
  
-## **3. Module System**+## 3. Module System
 - Each module has a `manifest.json` defining metadata, dependencies, permissions, and assets - Each module has a `manifest.json` defining metadata, dependencies, permissions, and assets
 - Modules can be enabled/disabled through configuration - Modules can be enabled/disabled through configuration
 - Modular architecture allows for selective feature implementation - Modular architecture allows for selective feature implementation
  
-## **4. Authentication System**+## 4. Authentication System
 - JWT-based authentication with refresh token rotation - JWT-based authentication with refresh token rotation
 - OIDC (OpenID Connect) support endpoints - OIDC (OpenID Connect) support endpoints
Línea 111: Línea 111:
 - Role-based access control (RBAC) with attribute-based access control (ABAC) elements - Role-based access control (RBAC) with attribute-based access control (ABAC) elements
  
-## **5. Security Features**+## 5. Security Features
 - CSRF protection - CSRF protection
 - Session management - Session management
Línea 117: Línea 117:
 - Modular branding theming system - Modular branding theming system
  
-## **6. API Design**+## 6. API Design
 - RESTful API with versioned endpoints (`/api/core/v1`) - RESTful API with versioned endpoints (`/api/core/v1`)
 - Clear separation between public and private endpoints - Clear separation between public and private endpoints
 - Contract-based API design defined in `CORE_CONTRACT.md` - Contract-based API design defined in `CORE_CONTRACT.md`
  
-## **7. Frontend Components**+## 7. Frontend Components
 - Uses Tailwind CSS for styling - Uses Tailwind CSS for styling
 - Modular UI components with semantic color aliases - Modular UI components with semantic color aliases
 - Turbo integration for enhanced user experience - Turbo integration for enhanced user experience
  
-**Technology Stack**+# Technology Stack
 - **PHP 8.1+** as the main programming language - **PHP 8.1+** as the main programming language
 - **PostgreSQL** for database management - **PostgreSQL** for database management
Línea 136: Línea 136:
 - **WebAuthn** for passwordless authentication - **WebAuthn** for passwordless authentication
  
-**Integration Points**+# Integration Points
 - Event-driven architecture with hooks for user provisioning, updates, and tenant creation - Event-driven architecture with hooks for user provisioning, updates, and tenant creation
 - Modular menu system that can be extended by modules - Modular menu system that can be extended by modules
 - Multi-tenant architecture with tenant-specific data isolation - Multi-tenant architecture with tenant-specific data isolation
  
-**Notable Features**+# Notable Features
 1. **Modular Branding**: CSS variables and semantic aliases for consistent theming 1. **Modular Branding**: CSS variables and semantic aliases for consistent theming
 2. **Dynamic Menu System**: Menu injection through manifests 2. **Dynamic Menu System**: Menu injection through manifests
start.1785471907.txt.gz · Última modificación: por adminmsicca

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki