Wordgard: editor rich-text no navegador do criador do ProseMirror
React e considerações arquiteturais
- Vários comentários observam que o ProseMirror é complicado no React porque o React quer “possuir” o DOM e usar atualizações puramente baseadas em estado, enquanto o ProseMirror/Wordgard gerenciam o DOM de forma mais direta.
- O modelo de atualização focado em transações do Wordgard (a view recebe transações, e não apenas estado) é visto como uma possível melhoria para atualizações precisas do DOM e integração com frameworks de UI, embora a documentação pudesse abordar melhor a interoperabilidade com React.
Motivação, relação com o ProseMirror e custo de migração
- As pessoas perguntam por que o Wordgard existe em vez de um ProseMirror v2 e se vale a pena migrar configurações existentes (por exemplo, baseadas em TipTap).
- A resposta do autor no fio: o ProseMirror continuará sendo mantido; o Wordgard incorpora novos insights de design que não puderam ser adicionados de forma limpa e compatível com versões anteriores.
- Não há um caminho simples de atualização; a mudança provavelmente envolve trabalho significativo e pode não valer a pena se o ProseMirror já atende às necessidades.
Detalhes de design técnico
- O modelo de edição do Wordgard é comparado a sequências de “retain/keep + action” usadas em alguns editores colaborativos, e elogiado por ser mais fácil de raciocinar do que os steps do ProseMirror.
- Ele usa uma camada de seleção personalizada em vez da seleção do navegador, o que alguns veem como mais sensato para comportamentos de edição complexos.
- Zero dependências externas, além de pequenos pacotes utilitários do próprio autor.
- Menções/compleções no estilo “@” e outras utilidades são candidatas para inclusão, mas ainda não estão claramente definidas.
Comparação com outros editores e com a plataforma web
- Múltiplas comparações com Lexical: alguns elogiam o poder e o sistema de plugins do Lexical, além da manutenção ativa; outros desconfiam da Meta como mantenedora ou preferem o projeto independente.
- Há uma frustração generalizada de que, após décadas, os navegadores ainda não tenham um padrão robusto de elemento rich-text; contenteditable é visto como problemático e inconsistente, o que torna a criação de editores robustos um esforço enorme.
- Editores mais antigos baseados em contenteditable (da era TinyMCE/FCKEditor) são contrastados com editores modernos orientados a modelo como ProseMirror/Wordgard/Lexical.
Comportamento em mobile e estabilidade
- Vários usuários relatam problemas sérios em mobile (Android e iOS): undo não funcionando, bugs de seleção, exclusão de seleção total quebrando o editor, substituições por autocorrect/sugestões apagando palavras, swipe-backspace não funcionando.
- Outros confirmam alguns bugs, e pelo menos um problema específico foi aberto e corrigido.
- O consenso: a arquitetura é promissora, mas o comportamento em mobile ainda é instável e precisa de testes no mundo real.
Ecossistema, hospedagem e preocupações de manutenção
- Alguns se preocupam com o futuro do ProseMirror, já que muitos produtos importantes dependem dele; o fio esclarece que ele continuará sendo mantido e é licenciado sob MIT, então pode ser bifurcado.
- Há uma breve preocupação de que o repositório de código auto-hospedado estivesse fora do ar; outros confirmam que ele funciona e mencionam motivações para sair do GitHub (uptime, risco de sanções, direção do produto).
UX, arte e sentimento geral
- Reações fortemente positivas à arte desenhada à mão do site e às ilustrações não geradas por IA.
- Sentimentos mistos sobre WYSIWYG em geral; alguns preferem markdown e enfatizam que autosaving de rascunhos (por exemplo, via localStorage) é um comportamento crucial do produto, e não uma limitação técnica.