Wordgard es una biblioteca JavaScript de código abierto pensada para construir editores de texto enriquecido que se ejecutan en el navegador. A diferencia de un editor HTML libre, ofrece un sistema donde el desarrollador define con precisión la estructura de los documentos y el tipo de contenido que admite, lo que la convierte en una base sólida para editores personalizados, incluso los de mayor complejidad.
Su seña de identidad es una interfaz de programación diseñada con un nivel de detalle poco habitual, orientada a la generalidad y la versatilidad. El modelo de documentos se basa en un esquema explícito: el programador puede definir la estructura permitida, crear elementos personalizados y trabajar con contenido estructurado, como tablas, listas anidadas, figuras con pie o nodos a medida. La mayor parte de las funciones del editor se implementa como extensiones modulares, de modo que cualquier componente que no encaje con un caso de uso puede sustituirse o modificarse sin tocar el núcleo.
La biblioteca es accesible para usuarios de lectores de pantalla, teclado y dispositivos móviles, e incorpora soporte para internacionalización de la interfaz. El sistema es direccionalmente consciente: maneja escritura de derecha a izquierda y contenido bidireccional tanto en el editor como en la interfaz. Buena parte del código está escrito en estilo funcional para favorecer la claridad y la testabilidad, e incluye soporte para edición colaborativa en tiempo real, con fusión de cambios concurrentes entre varios usuarios.
Wordgard se distribuye bajo licencia MIT y su desarrollo se realiza en la plataforma code.haverbeke.berlin. El proyecto no acepta pull requests, aunque los informes de errores son bienvenidos a través de su rastreador de issues, y existe un foro oficial para preguntas y discusión. Para usos comerciales, aunque la licencia no lo exige legalmente, se sugiere socialmente contribuir a la financiación del mantenimiento.
