Sobre o projeto

Omi é um framework de Web Components desenvolvido pela Tencent. Ele enfatiza o tamanho reduzido do bundle e alto desempenho, ao mesmo tempo que oferece um conjunto abrangente de recursos para construir aplicações web modernas e componentes reutilizáveis. Os principais recursos incluem: - **Programação reativa baseada em Signal** por meio do pacote `reactive-signal`, permitindo reatividade refinada e atualizações automáticas da UI. - **Suporte a JSX** com sintaxe familiar, incluindo injeção automática do import `h` via configuração do Vite. - **Conformidade com o padrão Web Components**, permitindo que componentes sejam usados em diferentes frameworks (por exemplo, Vue, React) com esforço mínimo. - **Router, Suspense e Directives** para construir SPAs e lidar com dependências assíncronas. - **Constructable Stylesheets** para gerenciamento e compartilhamento eficiente de estilos. - **Integração com Tailwindcss** e uma coleção de kits iniciais e componentes de UI. O repositório inclui vários pacotes: - Core: `omi`, `omi-form`, `lucide-omi`, `omiu`, `omi-router`, `omi-cli`. - Kits iniciais: `omi-elements`, `omi-starter-spa`, `omi-starter-ts`, `omi-starter-tailwind`, `omi-starter-js`, `omi-vue`. - Componentes: `omi-weui`, `omi-auto-animate`, `omi-suspense`. - Directives: `omi-transition`, `omi-ripple`. - Exemplos: `snake-game-2tier`, `snake-game-3tier`, `omi-tutorial`. Exemplos de uso demonstram tanto estilos de programação orientada a objetos (OOP) quanto orientada a dados (DOP), com um exemplo de TodoApp usando signals e valores computados. O uso entre frameworks é ilustrado com exemplos em Vue e React, mostrando como componentes Omi podem ser integrados e se comunicar por meio de eventos customizados. O projeto é open-source sob a licença MIT e incentiva contribuições e compartilhamento da comunidade.