Este projeto foi desenvolvido como parte do Teste Técnico para Desenvolvedor Full Stack Pleno da Lumi. O desafio teve como objetivo avaliar as habilidades do candidato no desenvolvimento full-stack, utilizando React, Node.js, TypeScript e PostgreSQL.
O desafio consistiu em extrair dados relevantes de um conjunto de faturas de energia elétrica fornecidas, armazenar essas informações em um banco de dados PostgreSQL estruturado e exibi-las em uma aplicação web por meio de uma API.
Nota: O trabalho submetido para este teste não será utilizado para fins comerciais ou integrado aos produtos da Lumi. Seu propósito é exclusivamente avaliativo.
- Front-end: React, TypeScript
- Back-end: Node.js (Express)
- Banco de Dados: PostgreSQL
- API: Construída com Express
- Bibliotecas: Axios, React Icons, Supabase, Recharts
- Extração de Dados: Parseamento das faturas de energia elétrica fornecidas para extrair informações chave.
- Organização de Dados: Armazenamento dos dados extraídos em um banco de dados PostgreSQL.
- Visualização de Dados: Exibição das informações de consumo e compensação de energia em um dashboard web.
- Design Responsivo: A aplicação foi projetada para funcionar em diferentes tamanhos de tela.
git clone https://github.com/Robetjunior/Lumi-sChallenge.git
cd Lumi-sChallenge
npm install
npm install
Crie um arquivo .env na raiz do projeto e insira as seguintes variáveis:
REACT_APP_SUPABASE_URL='https://yhivluwnxpbqwntxnmtn.supabase.co'
REACT_APP_SUPABASE_KEY='eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InloaXZsdXdueHBicXdudHhubXRuIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MjkxNjk2NjksImV4cCI6MjA0NDc0NTY2OX0.D5513Hj3C-8MWLsDQvXsken8xjI-igdHJqmXNPAVT3Q'
Execute o seguinte comando para rodar as migrações e configurar o banco de dados
npm run migrate
npm start
A aplicação estará disponível no navegador em http://localhost:3000.
npm run build
No diretório do backend, execute:
A API rodará na porta 3001.
Você pode visualizar o projeto rodando no Heroku através deste link: Executar o projeto
Você pode visualizar o projeto rodando no Heroku através deste link: Repositório API
Para rodar os testes, utilize o seguinte comando:
npm test
frontend-lumi/
├── public/ # Arquivos públicos
├── src/ # Código-fonte principal
│ ├── components/ # Componentes React
│ ├── config/ # Configurações
│ ├── pages/ # Páginas React
│ ├── services/ # Serviços de API
│ ├── styles/ # Styles
│ index.tsx # Ponto de entrada da aplicação React
├── .env # Variáveis de ambiente
├── package.json # Gerenciamento de dependências e scripts
├── README.md # Documentação do projeto
└── tsconfig.json # Configurações do TypeScript
José Roberto - LinkedIn
Este arquivo `README.md` cobre os principais tópicos necessários para a documentação do seu projeto, como a instalação, configuração, execução, tecnologias utilizadas, e outras informações relevantes. Certifique-se de ajustar as variáveis de ambiente e os links conforme o necessário.