O VLibras Web é o ecossistema de acessibilidade digital que conecta o conteúdo da web à Língua Brasileira de Sinais (Libras). Este repositório centraliza o desenvolvimento de duas frentes principais:
- VLibras Widget: A ferramenta integrada diretamente por desenvolvedores em portais e sites web.
- VLibras Plugins (Extensões): A versão adaptada para navegadores (Chrome e Firefox), permitindo que o usuário surdo ative a acessibilidade em qualquer página da internet.
Ambas as soluções utilizam avatares 3D regionalizados (como Ícaro, Hosana e Guga) para interpretar e sinalizar conteúdos em português, garantindo que a comunidade surda — que utiliza a Libras como primeira língua — navegue e consuma informações online com total autonomia.
- Vite - Ferramenta moderna e rápida para construção de aplicações frontend e bibliotecas;
- Preact - Biblioteca JavaScript leve e eficiente para criação de interfaces reativas (alternativa ao React);
- TypeScript - Superset tipado do JavaScript para maior segurança no desenvolvimento;
- Tailwind CSS v4 - Framework CSS utilitário moderno para desenvolvimento ágil de interfaces;
- DaisyUI - Biblioteca de componentes baseada em Tailwind CSS;
- Zustand - Biblioteca leve para gerenciamento de estados da aplicação;
- PostHog - Plataforma de analytics para monitoramento de uso;
- Biome - Ferramenta rápida para formatação, linting e análise de código;
- Husky - Ferramenta para configurar hooks do Git e garantir verificações de qualidade antes dos commits;
- Commitlint - Linter para garantir que as mensagens de commit sigam um formato convencional;
- release-it - Automação do processo de versionamento, incluindo geração de tags, commits e changelogs.
Certifique-se de ter instalado em sua máquina:
-
Faça o clone do repositório:
git clone https://github.com/spbgovbr-vlibras/vlibras-web-browsers.git cd vlibras-web-browsers -
Instale as dependências:
pnpm install
-
Configure as variáveis de ambiente (opcional):
cp .env.example .env
Edite o arquivo
.envpara configurar o token do PostHog e outras variáveis conforme necessário.
Para desenvolvimento local:
pnpm devA aplicação estará acessível em: http://localhost:3003.
Outros modos: pnpm dev:homolog (utiliza links de dth - homologação) e pnpm dev:prod (utiliza links de produção).
O processo de build é dividido entre a geração dos ativos do widget e a preparação dos pacotes para publicação nas lojas.
pnpm buildEste comando cria a pasta /app na raiz do projeto contendo:
vlibras-plugin-app.js- Biblioteca principal do widget (ES module, com code splitting)vlibras-plugin.js- Script de carregamento minificadoindex.html- Página de demonstração
Outros modos: pnpm build:dev (utiliza links de ovh) e pnpm build:homolog (utiliza links de dth - homologação).
pnpm build:extension- Gera e integra os pacotes para ambas as lojas (Chrome e Firefox).pnpm build:chrome- Gera e integra o pacote para a Chrome Web Store (extensions/chrome).pnpm build:firefox- Gera e integra o pacote para o Firefox Add-ons (extensions/firefox).
O processo de release deve ser iniciado a partir da branch dev e é automatizado via release-it:
pnpm releaseO comando:
- Atualiza a
devlocal com o remoto e cria a branchrelease/vX.Y.Z; - Incrementa a versão no
package.jsone atualiza oCHANGELOG.md; - Atualiza o badge de versão no README;
- Cria um commit local com essas alterações.
O processo não cria tag nem faz push automaticamente.
Depois, envie a branch de release para o repositório remoto e abra um MR para a master:
git push -u origin release/vX.Y.ZApós o MR ser aceito e mergeado na master, crie a tag vX.Y.Z e a release correspondente manualmente no GitLab (Repository > Tags), usando o CHANGELOG.md como referência para a descrição da release.
- Anderson Coutinho - anderson.coutinho@lavid.ufpb.br
- Diêgo Ferreira - diego.raian@lavid.ufpb.br
- Mateus Pires - mateuspires@lavid.ufpb.br
- Suanny Fabyne - suanny@lavid.ufpb.br
- Thiago Filipe - thiago.filipe@lavid.ufpb.br
Este projeto está licenciado sob a GNU Lesser General Public License v3.0. Consulte o arquivo LICENSE para mais detalhes.