Telar
Lenguaje de programación declarativo para la web con sintaxis en español. Compila a HTML + CSS desde código legible, sin configuración.
🧠 La idea
Telar nació de una frustración con el desarrollo web moderno.
Para construir una app simple hoy necesitas elegir entre decenas de frameworks, configurar webpack, escribir JSX, gestionar dependencias… todo eso antes de haber resuelto el problema real.
La hipótesis: ¿y si pudieras describir lo que quieres en español, y el compilador tomara todas las decisiones técnicas por ti?
🚀 Qué hace
aplicación MiTienda
página inicio en "/"
usar navbar
título "Bienvenido"
mostrar productos recientes
máximo 8
ordenados por precio
si falla
mostrar "Sin conexión"
reintentar en 5 segundos
si el usuario está conectado
botón "Mi cuenta" ir a cuenta
si no
botón "Entrar" ir a login
optimizar para móvil
caché 10 minutos
Eso compila automáticamente a HTML semántico, CSS responsivo y JavaScript optimizado. Sin tocar ninguno de esos archivos.
- Sintaxis declarativa en español estructurado
- Compilación a HTML + CSS + JS lista para producción
- Optimización móvil, caché y accesibilidad ARIA por defecto
- Mensajes de error en español con contexto visual
- CLI completa:
compilar,servir,verificar,nuevo - Gestor de paquetes con paquetes oficiales
- Live reload en el servidor de desarrollo
- Extensión oficial para VS Code
🏗️ Arquitectura del compilador
Telar implementa un compilador completo en tres fases:
- Lexer — tokeniza el archivo
.telarreconociendo el español con tildes y ñ - Parser — construye el árbol de sintaxis abstracta (AST) desde los tokens
- Generador — recorre el AST y produce HTML semántico + CSS responsivo + JS
Cada fase tiene su propio sistema de errores con mensajes en español y sugerencias concretas de cómo arreglarlos, incluyendo contexto visual de las líneas del archivo.
📦 Ecosistema
Telar tiene su propio gestor de paquetes basado en GitHub:
telar nuevo mi-proyecto
telar añadir navbar
telar añadir formulario
telar añadir lista
telar servir app.telar
Los paquetes son repositorios de GitHub con el prefijo telar-.
Cualquiera puede crear y publicar paquetes para la comunidad.
📊 Lo interesante del proyecto
Lo más complejo no fue generar HTML, sino:
- Diseñar una gramática que se lea como español natural pero sea determinista
- Manejar la ambigüedad del lenguaje humano sin perder precisión
- Construir mensajes de error útiles con contexto visual de línea y columna
- Implementar un sistema de indentación significativa compatible con el parser
- Crear un gestor de paquetes sin infraestructura propia usando GitHub como registro
El reto principal fue encontrar el equilibrio entre legibilidad humana y precisión de compilador — demasiado libre y el compilador es ambiguo, demasiado estricto y pierde la naturalidad del español.
🎯 Estado actual
Telar está en v0.5 con compilador completo, CLI, gestor de paquetes, extensión VS Code y tres paquetes oficiales. La v0.6 añadirá tests completos y CI/CD. La v1.0 incluirá documentación web y comunidad.
📦 Instalación
npm install -g @davidbc01/telar
telar nuevo mi-proyecto
cd mi-proyecto
telar servir app.telar