Áleran Vocals
Piano, entrenamiento con micrófono y juegos de oído para alumnos de canto: notas, escalas, afinación, rango vocal, resistencia e intervalos.
Translation pending
Simulador visual e interactivo de Autómatas Finitos (AFD) y de Pila (APD). Diseña, prueba y visualiza la ejecución paso a paso con soporte para transiciones ε y visualización de pila en tiempo real.
Translation pending
EducationGitHub @Santiago-debOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Automater Pro es un verificador y simulador visual interactivo de Autómatas Finitos Deterministas (AFD), Autómatas de Pila Deterministas (APD) y Máquinas de Turing determinísticas de k cintas (MT). Diseñado con una interfaz moderna, intuitiva y completamente responsive, permite construir autómatas desde cero o cargar ejemplos predefinidos para ver su ejecución paso a paso.
B).I / D / N.a,B/<a,D><X,D>.+/- adelante se compara contra lo esperado.+ . * λ ∅..json. Abrir archivo también importa los .MT de MTSolution, incluidas las MT compuestas con sub-máquinas @alias (se eligen la MT y sus módulos juntos)..json por cualquier app (en Chrome de Android va como .txt; Abrir archivo acepta los dos). Si el navegador no puede compartir archivos, lo descarga.drive.file (la app solo ve los archivos que creó). El Client ID está en js/ui/drive.js; sus orígenes autorizados se configuran en Google Cloud (proyecto "Automater-Pro"). Si el navegador no deja abrir la ventana de Google, el inicio de sesión sigue por redirección (la página va a Google y vuelve con el token); para eso la dirección de la app (https://automater-pro.vercel.app/) tiene que estar también en URIs de redireccionamiento autorizados del mismo Client ID.Está online en Vercel (se deploya solo con cada push a main). Para correrlo local no hace falta instalar nada, pero como usa ES modules hay que servirlo por HTTP (abrir index.html con doble clic no carga los módulos):
python3 -m http.server 8000 # y abrir http://localhost:8000
Tests (sin dependencias): node tests/engine.test.mjs && node tests/tools.test.mjs && node tests/e2e.mjs. El último prueba la app en un Chromium real (con mouse y teclado), levantando su propio servidor; si el navegador no se llama chromium, pasalo con CHROME=/ruta.
Supr lo borra. Un clic en el fondo deselecciona todo.Ctrl + Z y Ctrl + Shift + Z (o Ctrl + Y), o las flechas de la barra izquierda.index.html Solo el markup (HTML + SVG del lienzo y modales)
css/
base.css Variables de color, reset y body
layout.css Grilla de la app, header y botones
canvas.css Lienzo, toolbar, estados y aristas SVG
panel.css Panel lateral: listas, prueba, traza y pila
modals.css Modales y toast
help.css Modal de ayuda, contacto y recorrido guiado
tools.css Herramientas e indicador AFD/AFND
files.css Menú Archivo y toast con Deshacer
responsive.css Breakpoints mobile
js/
main.js Punto de entrada: arma `App` y conecta los eventos
state.js Forma del estado global
actions.js Editar el autómata, verificar cadenas, cargar ejemplos
engine/ Lógica pura, sin DOM (testeable con node)
afd.js simulateAFD()
af.js AFND, subconjuntos, minimización, layout automático
regular.js AF ↔ gramática regular, derivaciones, expresiones regulares
table.js Definición formal, tabla δ y carga desde tabla (AF/APD/MT)
apd.js simulateAPD(), findConflict(), apdLabel()
mt.js simulateMT(), findConflictMT(), mtLabel(), configuration()
examples.js Autómatas de ejemplo
automata.js Registro de tipos: simulate + label + example por tipo
ui/
interaction.js Pan, zoom, arrastre, clics y selección múltiple en el lienzo
history.js Deshacer / rehacer (historial por tipo)
stateMenu.js Menú de un estado (doble clic)
canvas.js Dibujo SVG de estados y aristas
panel.js Listas, traza, pila visual, toasts
modals.js Modales para crear transiciones
tape.js Cintas animadas de la MT
help.js Modal de Ayuda y formulario de contacto
tour.js Recorrido guiado (pasos y posicionamiento)
tools.js Modal de herramientas (una vista por herramienta)
files.js Menú Archivo: autoguardado, abrir/guardar/compartir .json, abrir .MT, exportar PNG
drive.js Login con Google y autómatas en Google Drive (Mis autómatas)
tests/ Chequeos del motor, de las herramientas y de punta a punta (e2e.mjs)
Para agregar un nuevo tipo de autómata (p. ej. AFND o ALA): un simulateX() en js/engine/, un ejemplo en examples.js, su entrada en automata.js, el color en base.css (.tipo { --type: … }) y su modal de transición en ui/modals.js.
Este proyecto implementa las definiciones formales de la teoría de autómatas:
Este proyecto es de uso libre. Si te resulta útil para tus estudios o clases, ¡úsalo sin restricciones!
Hecho con 💚 para estudiantes de Sistemas.