Pular para o conteúdo
Mauricio Pereira BragaDesenvolvedor full stack
Trabalhos

LaPInf

Site do Laboratório de Práticas de Computação da Universidade Franciscana, que substituiu a página feita em 2019 a partir de um template Bootstrap. Reúne o acervo de projetos dos cursos de computação, a autoria de cada um e os registros no INPI.

Visitar site

Papel
Desenvolvimento
Período
2026
Tipo
Site institucional
Home do LaPInf com a chamada 'Alunos aplicam o que aprendem em sala a desafios apresentados pela comunidade.'

O problema

O site antigo era uma única página HTML montada em 2019 sobre o template Bolt, com Bootstrap e jQuery, e mantida por sete anos com edições direto no código. Os projetos não tinham endereço próprio, os créditos ficavam em texto livre espalhados por cards, modais e até caixas de confirmação do navegador, e os registros do INPI eram uma montagem de imagens dos certificados, sem número que se pudesse copiar ou ligar ao projeto. Quem avalia o laboratório de fora, como gestores, parceiros e instituições, não conseguia entender rapidamente o que foi produzido, por quem e como conferir.

Minha contribuição

Extraí o conteúdo do site antigo para arquivos Markdown e YAML e reconstruí o site em Vue 3 com Vite SSG, que gera o HTML de cada rota e funciona sem JavaScript. Cada projeto ganhou página própria, com professores, alunos, parceiros, cursos e registros do INPI, e o acervo pode ser filtrado por curso, com o filtro guardado na URL. Projetos, avisos, parceiros e perguntas frequentes são editados pelo Pages CMS, sem mexer no código, e um plugin do Vite valida cada coleção com Zod durante o build, apontando o arquivo de origem quando um campo é inválido. Os avisos têm data de publicação, início e expiração no horário de Brasília. O HTML sai com os avisos vigentes no momento do build e o navegador reavalia a lista a cada 30 segundos, então um aviso entra e sai do ar sem novo deploy. Os testes unitários cobrem conteúdo, filtros, paginação, créditos e horários dos avisos, e os de ponta a ponta rodam no Chromium com verificação de acessibilidade pelo axe.

Destaques do projeto

  • 34projetos no acervo
  • 8registros do INPI verificáveis
  • Sem JavaScriptHTML gerado para cada rota

Tecnologias

Vue 3, TypeScript, Vite SSG, Tailwind CSS v4, Zod, Pages CMS, Playwright

Telas do sistema

O acervo reúne os projetos dos cursos, com filtro por curso, a autoria de cada um e a indicação dos sistemas que estão no ar.
O acervo reúne os projetos dos cursos, com filtro por curso, a autoria de cada um e a indicação dos sistemas que estão no ar.
Cada projeto tem página própria, com descrição, acesso ao sistema e créditos de professores, alunos e parceiros.
Cada projeto tem página própria, com descrição, acesso ao sistema e créditos de professores, alunos e parceiros.
Antes, a página de 2019 montada sobre o template Bolt, com Bootstrap e jQuery.
Antes, a página de 2019 montada sobre o template Bolt, com Bootstrap e jQuery.
Antes, os créditos de cada projeto abriam em um modal, sem página nem endereço próprio.
Antes, os créditos de cada projeto abriam em um modal, sem página nem endereço próprio.
Antes, os registros do INPI eram uma montagem de imagens dos certificados.
Antes, os registros do INPI eram uma montagem de imagens dos certificados.