Desafio Técnico – Estágio Full Stack (Versão Enxuta)
Objetivo
Desenvolver uma aplicação web simples para visualização de relatórios, simulando um cenário real de negócio,
com foco em:
• Consumo de API
• Organização de código
• Conceitos básicos de frontend e backend
Escopo do Projeto
Relatório de Vendas: Desenvolver uma tela que exiba, em formato de lista ou tabela, as vendas realizadas.
Cada registro deve apresentar as seguintes informações: nome do produto, categoria, quantidade vendida,
valor total e data da venda.
A aplicação deve permitir a visualização das vendas no período completo ou em um intervalo de datas
específico, além de oferecer filtros simples por nome do produto e categoria.
Tecnologias
Backend
• Node.js
• Express
• Banco de dados Mysql ou SQLite
o Prisma é opcional (bônus)
Frontend
• React
• TypeScript
• Estilização simples:
• Tailwind
o TanStack Table é opcional (bônus)
Funcionalidades Obrigatórias
1. Backend
• Criar uma API simples:
o GET /relatorio
• Retornar dados (mín. 10 registros)
2. Frontend
• Tela única com:
o Título do relatório
o Tabela simples exibindo os dados
o Botão “Exportar PDF”
3. Exportação em PDF
• PDF simples contendo:
o Título do relatório
o Data de geração
o Tabela com os dados
Sugestões de bibliotecas:
• react-to-print
• jspdf
o Pode usar qualquer outra biblioteca de sua preferência
Critérios de Avaliação
Critério
O que será avaliado
Fundamentos
Entendimento básico de frontend e backend
Organização
Estrutura do projeto
Código
Legibilidade e clareza
Funcionalidade
Dados aparecem corretamente
Git
Commits claros
README
Instruções simples de execução
Bônus (não obrigatório)
• Prisma
• TanStack Table
• Deploy simples
Entrega
• Repositório no GitHub
• README com:
o Como rodar o backend
o Como rodar o frontend
• Prints do PDF gerado (opcional)