Porque o VueJs e não o ReactJs?
Recentemente após desenvolver um editor de canvas, recebi perguntas sobre o porque eu utilizei o VueJs e não o ReactJs (como é de costume). Caso queira saber sobre o projeto, é esse aqui: https://canvas-editor.com.br
Por que Fazer?
A diferença entre essas duas tecnologias pode parecer sutil para alguns, mas pode fazer toda a diferença.
Nesse projeto, eu estava utilizando o Canva, e ficando irritado sobre como ele utiliza o meu processamento para renderizar exportações e ainda quer me cobrar tornando algumas exportações como Pro. Isso é de doer o fígado.
Então eu decidi abrir um repositório em um editor de canvas, que utilizasse quase que totalmente o frontend, e que fosse totalmente aberto e gratuito.
A ideia era colocar outras funções de renderização avançada, removedor de fundo e redimensionadores de imagem (que algumas plataforma chamam de IA 😂, mas é apenas o algoritmo de Lanczos trabalhando) rodando em frontend sem travar a interface do cliente.
Vue vs React
Ao avaliar as bibliotecas disponíveis para lidar com DOM <canvas> fiquei entre o react e o vue. E eu precisava economizar cada gota de processamento frontend para que ele fosse capaz de rodar funções mais importantes em conjunto (possivelmente um renderizador em WebAssembly).
O React me dá mais controle sobre cada elemento... ao custo de mais processamento na renderização e maior uso de memória ram. Enquanto o VueJS é mais compacto, ele não te dá um controle absoluto sobre cada elemento do DOM, mas ele possui uma renderização mais compacta, e economiza recursos.
Como eu não precisava manter controle absoluto sobre o objeto... optei pelo vuejs.
O ReactJS possui uma compatibilidade muito maior com bibliotecas do que o VueJS, e esse foi o principal ponto que quase me fez desistir do Vue, mas por fim tudo (ou quase tudo) foi possível contornar.
As tecnologias usadas foram o Vue 3, utilizando o FabricJS (que tem uma péssima compatibilidade com vue, mas foi contornada).