Construyendo juntos el motor de composición editorial que la web nunca ha tenido.
Postext es un proyecto de código abierto impulsado por su comunidad. Su objetivo es resolver un problema que lleva décadas ignorado: llevar la composición editorial profesional a la web. Es una ambición grande, y requiere más que una sola persona.
El proyecto es joven, pero ya no es una página en blanco: el pipeline de composición, el formato de documento y el sistema de configuración ya están publicados. Aun así, quedan muchas decisiones de diseño abiertas, y quienes se incorporan ahora tienen influencia real sobre la dirección del proyecto. Si estabas esperando un buen momento para unirte — es este.
No hace falta ser programador para contribuir. Ya escribas código, diseñes maquetaciones editoriales, entiendas de tipografía, pruebes en distintos navegadores, redactes documentación, traduzcas contenido o simplemente tengas ideas sobre cómo debería funcionar el contenido editorial en la web — aquí hay un sitio para ti.
#Por qué contribuir
Todas las empresas de desarrollo editorial del mundo se enfrentan al mismo problema: CSS no fue diseñado para maquetación editorial. No hay soporte nativo para equilibrado de columnas, prevención de huérfanas y viudas, flujo de texto alrededor de obstáculos ni colocación de notas al pie. Cada equipo resuelve estos problemas desde cero, construyendo soluciones frágiles y a medida que son caras de mantener e imposibles de compartir.
Postext pretende cambiar eso. No como una herramienta propietaria, sino como un estándar abierto compartido — un motor de composición único y de alta calidad que editoriales, revistas, periódicos, plataformas de libros y equipos de desarrollo de todo el mundo puedan adoptar y sobre el que construir.
Ese tipo de estándar no puede construirlo una sola persona ni una sola empresa. Necesita la perspectiva de tipógrafos de distintas tradiciones, especialistas en PDF, expertos en accesibilidad, desarrolladores que trabajen con escrituras de derecha a izquierda, diseñadores que maqueten revistas e ingenieros que optimicen el rendimiento del renderizado. La diversidad del mundo editorial exige una comunidad diversa detrás de la herramienta que lo sirve.
#Cómo trabajamos
Toda la coordinación ocurre en GitHub. No hay canales privados, ni listas de correo cerradas, ni decisiones tomadas a puerta cerrada. Todo es público, indexable y abierto a la participación.
- Issues — para reportes de errores, solicitudes de funcionalidad y tareas concretas. Si quieres trabajar en algo, empieza aquí.
- Pull Requests — para contribuciones de código. Abre un issue primero para discutir el enfoque antes de escribir código.
- Discussions — para ideas, conversaciones de diseño, preguntas y cualquier cosa que no sea un error concreto o una tarea específica. Este es el lugar para pensar en voz alta.
Esto es deliberado: cuando todo vive en un solo lugar, cualquiera puede encontrar el contexto detrás de cada decisión, y los nuevos colaboradores pueden leer el historial.
#Áreas donde puedes ayudar
El proyecto necesita muchos tipos distintos de experiencia. Estas son algunas áreas donde las contribuciones son especialmente valiosas:
#Código y algoritmos
- Algoritmos de composición tipográfica — el motor de justificación Knuth-Plass, equilibrado de columnas, ruptura óptima de párrafos, numeración tipada de recursos y colocación de flotantes.
- Generación de PDF — construcción de PDF a bajo nivel, incrustación de fuentes, gestión del color y manejo de los bytes de recursos para figuras a una tinta.
- Renderizado de texto — renderizado basado en canvas, salida SVG, recoloreado de SVG a una
tinta (
diagramStyle.singleInk), métricas de fuente. - Optimización de rendimiento — la capa de caché de medición, y mantener el motor lo bastante rápido para uso en tiempo real en cada redimensionado.
#Sandbox e interfaz
El sandbox se ha convertido en una superficie React considerable por derecho propio: un panel de recursos con un editor interactivo de tablas y subida de imágenes y SVG, un panel de fuentes y secciones de configuración que cubren cada rincón del motor. Cada cadena de la interfaz sigue una convención estricta de i18n, conectada mediante etiquetas en cinco archivos repartidos entre el paquete del sandbox y los catálogos de idiomas de la aplicación web. Si contribuyes desde el frontend o la UX, este es tu terreno.
#Diseño y tipografía
- Experiencia en diseño editorial — si tienes experiencia maquetando revistas, periódicos o libros, tu conocimiento sobre qué hace que una maquetación funcione (o falle) es inestimable — sin necesidad de escribir código.
- Tradiciones tipográficas — el proyecto debe respetar las convenciones tipográficas de distintos idiomas y sistemas de escritura, no solo de escrituras latinas.
#Documentación y comunidad
- Documentación — mejorar, ampliar y mantener la documentación. Una documentación clara marca la diferencia entre un proyecto que la gente puede adoptar y uno que abandona.
- Traducciones — la documentación es actualmente bilingüe (inglés y español). Más idiomas son bienvenidos.
- Testing — probar en distintos navegadores, sistemas operativos y casos límite. Encontrar las maquetaciones que se rompen es tan valioso como construir las que funcionan.
#Diseño de formato y esquema
El formato ya no es un lienzo en blanco: los bloques ::resource, las referencias en línea :ref
y las secciones de configuración tableStyle, captionStyle y diagramStyle ya están publicados.
El trabajo ahora consiste en hacer evolucionar un formato establecido sin romperlo:
- Gramática del documento — las notas al pie, las notas al margen y las referencias cruzadas más allá de los recursos siguen siendo preguntas abiertas, cada una tan problema de diseño como técnico.
- Esquema de configuración — mantener el sistema lo bastante potente para profesionales y lo bastante sencillo para recién llegados a medida que crece.
#Primeros pasos
La configuración práctica — clonar el repositorio, instalar dependencias, ejecutar tests — está documentada en CONTRIBUTING.md. Empieza por ahí para los pasos mecánicos.
Una vez tengas todo listo, tres acciones concretas, de menos a más compromiso:
- Preséntate en Discussions — cuenta en qué trabajas y qué te ha traído aquí. Ninguna pregunta es demasiado básica, y es la forma más rápida de que la comunidad sepa que has llegado.
- Busca un issue etiquetado good first issue — curado para ser un punto de entrada realista, sin dependencias de contexto histórico.
- Traduce la documentación a un nuevo idioma — hoy la documentación está en inglés y español. Cualquier tercer idioma es un regalo para lectores que hoy se quedan fuera.
Si piensas escribir código, abre un issue primero para discutir el enfoque — evita trabajo duplicado, y una conversación rápida al principio ahorra tiempo a todos.
#Qué leer después
Para orientarte antes de sumergirte:
- Arquitectura — cómo está estructurado el pipeline de composición y dónde vive cada subsistema.
- Formato del documento — la gramática de markdown enriquecido que los colaboradores amplían.
- Sandbox — el laboratorio donde resulta más fácil ver y probar la mayoría de los cambios.
#La comunidad
Postext todavía está en sus comienzos — y eso es precisamente lo que hace este momento especial. Quienes se incorporan ahora no solo escriben código; están dando forma a las convenciones, las prioridades y la cultura.
El proyecto valora:
- Diseño reflexivo antes que velocidad. Acertar con las abstracciones importa más que entregar rápido. La tipografía se ha refinado durante siglos; podemos tomarnos el tiempo de hacerlo bien.
- Claridad antes que ingenio. Código que es fácil de leer y razonar vale más que código impresionante pero opaco.
- Colaboración antes que territorio. Nadie es dueño de una parte del código. Las ideas se evalúan por su mérito, no por quién las propuso.
Todos los colaboradores son reconocidos. Este proyecto existe porque hay personas que eligen dedicar su tiempo a mejorarlo.
#Visión
Postext aspira a convertirse en el motor de composición estándar para contenido editorial en la web — la herramienta a la que recurran editoriales, revistas, periódicos y plataformas de libros cuando necesiten tipografía profesional.
Si trabajas en desarrollo editorial y llevas años resolviendo estos problemas de maquetación en solitario, esta es tu invitación a resolverlos una vez, bien, junto a otros.