Registro: Código Fuente - Calculadora MG 40
Fecha de Generación: 31 de Enero de 2026
Autor y Titular de Derechos: Alfredo Lápiz
Tipo de Obra: Código Fuente de Software / Programa de Ordenador
1. Resumen Técnico del Software
Este registro protege el código fuente original de la "Calculadora MG 40 (Versión Digital)", una Aplicación Web Progresiva (PWA) y multiplataforma (Android/iOS) desarrollada en Flutter (Dart).
Arquitectura:
El software implementa una arquitectura modular que simula la lógica de hardware de la calculadora MG 40 original (versión física).
* Gestor de Estados: Utiliza lógica reactiva para manejar el buffer de entrada Braille/PRD.
* Motor de Audio: Implementa un sistema TTS (Text-to-Speech) polimórfico (`AudioService`) que combina síntesis de voz nativa y efectos de sonido (`SystemSound`) para retroalimentación háptica y auditiva.
* Lógica Matemática: Algoritmos personalizados para interpretar secuencias de combinaciones Braille (estándar) y PRD (Punto Reversible Digital) y transformarlas en operaciones aritméticas.
Componentes Clave (Source Code Highlights):
* `lib/widgets/braille_keyboard.dart`: Interfaz táctil ergonómica que captura gestos multi-touch.
* `lib/core/calculator_logic.dart`: Motor de procesamiento que decodifica las secuencias reversibles (ej. transformar entrada `[1, 2]` en `5`).
* `web/index.html`: Estructura semántica optimizada para accesibilidad web y SEO.
2. Palabras Clave (Keywords) del Código
`Flutter`, `Dart`, `Assistive Technology`, `Braille Logic`, `PRD Algorithm`, `Reversible Code`, `PWA`, `Mobile App Development`, `Text-to-Speech Implementation`, `Haptic Feedback`.
3. Notas
Este documento acompaña al archivo comprimido (`.zip` o `.tar.gz`) que contiene la estructura completa de directorios del proyecto, incluyendo:
* `/lib` (Lógica de negocio y UI)
* `/web` (Configuración web y assets)
* `/pubspec.yaml` (Dependencias y configuración de compilación)
4. Índice de Componentes del Código Fuente
A continuación se detalla la estructura del archivo comprimido y la función de cada componente esencial en la lógica del software:
A. Núcleo Lógico y Dominio (`/lib`)
* **`main.dart`**: Punto de entrada de la aplicación. Configura la inyección de dependencias y el enrutamiento.
* **`/domain`**: Reglas de negocio y algoritmos matemáticos.
* `calculator_logic.dart`: Motor principal que procesa las operaciones aritméticas y gestiona la memoria.
* `braille_alphabet_prd.dart`: Diccionario de datos que mapéa las combinaciones de puntos (Braille y PRD) a caracteres alfanuméricos.
* **`/core`**: Servicios transversales.
* `/audio/audio_service.dart`: Sistema de gestión de efectos de sonido y síntesis de voz (TTS) para accesibilidad.
* `theme_config.dart`: Configuración de estilos visuales de alto contraste.
* **`/widgets`**: Componentes visuales reutilizables.
* `braille_keyboard.dart`: Implementación del teclado táctil personalizado que captura los gestos de entrada (puntos 1-6).
* **`/pages`**: Pantallas de la aplicación.
* `calculator_page.dart`: Vista principal de la calculadora.
* `intro_page.dart`: Pantalla de bienvenida y selección de modo inicial.
* `help_page.dart`: Manual de usuario integrado y referencias.
* `tutorial_page.dart`: Módulo educativo interactivo.
* `keyboard_page.dart`: abstract visual del teclado.
B. Plataforma Web y Configuración (`/web`)
* **`index.html`**: Estructura DOM base con optimizaciones SEO y metadatos de accesibilidad.
* **`manifest.json`**: Configuración para PWA (Progressive Web App), permitiendo instalación en dispositivos móviles.
* **`robots.txt` / `ads.txt`**: Archivos de configuración para indexación y monetización ética.
All rights reserved