Chronos é uma aplicação web que simplifica o gerenciamento de ponto online, oferecendo funcionalidades completas para controle de jornada de trabalho. Permite o registro de ponto online, cálculo automático de horas, gestão de ausências e geração de relatórios detalhados. A interface intuitiva do Chronos facilita o acompanhamento da jornada de trabalho.
- Controle manual de ponto, sujeito a erros e fraudes.
- Dificuldade no cálculo preciso de horas trabalhadas e extras.
- Falta de visibilidade sobre a jornada de trabalho dos funcionários.
- Processos burocráticos para gestão de ausências.
- Dificuldade na geração de relatórios para análise de dados.
- Não conformidade com a legislação trabalhista.
Automatizar o controle de ponto para aumentar a precisão e reduzir erros. Obter cálculos precisos e automáticos de horas trabalhadas. Melhorar a visibilidade da jornada de trabalho dos funcionários. Simplificar a gestão de ausências com fluxos de aprovação. Gerar relatórios personalizados para análise de dados. Garantir a conformidade com a legislação trabalhista.
- Desenvolver uma aplicação web intuitiva e eficiente para o gerenciamento de ponto online.
- Permitir o registro preciso de ponto com diferentes opções.
- Oferecer cálculos automáticos de horas trabalhadas e extras.
- Simplificar a gestão de ausências com fluxos de aprovação.
- Fornecer relatórios detalhados.
- Garantir a segurança dos dados e a conformidade com a legislação.
- permitir o acesso remoto para funcionários e gestores.
Para a confecção do produto foi empregado o framework de metodologia ágil Scrum, que consiste sumariamente dividir o desenvolvimento do projeto em Sprints, um conjunto de tarefas que devem ser executadas e desenvolvidas em um período pré-definido de tempo. Além disso, foi definido o Backlog do Produto, que são todas as funcionalidades que o software deverá ter com base nos requisitos levantados com o cliente. Uma vez aprovado por ele, para selecionar quais seriam as entregas das Sprints do projeto, primeiro foi definido o MVP de cada Sprint, que é uma versão do produto que prioriza as tarefas que trazem maior entrega de valor para o cliente. Então, a partir disso o Backlog do Produto foi dividido em 4 Backlog de Sprint.
sprint-1: https://drive.google.com/file/d/1ff7LNQ2wsaeLG8Vm8wrv7Jd8iUDG0kdC/view
- Sprint 1: Acessar
Cada tipo de commit é referente a como a alteração impacta no projeto, seja por nível de camada, estruturação de arquivos ou ainda histórico dos commits, seguindo o padrão:
|Emoji| |Prefixo|: |Descrição do commit em inglês|
Tipo de commit | Prefixo | Emoji |
---|---|---|
Camada de domínio | domain | 🌐 |
Camada de API REST | api | 🛜 |
Camada de UI | ui | 🖥️ |
Camada de banco de dados | database | 💾 |
Camada de fila/mensageria | queue | 🎞️ |
Camada de provedores | provider | ➕ |
Camada de BFF | server | 📟 |
Use cases | use case | ✨ |
Interfaces | interface | 📑 |
Documentação | docs | 📚 |
Correção de bug | fix | 🐛 |
Refatoração de código | refactor | ♻️ |
Configuração/infraestrutura | config | ⚙️ |
Dependências | deps | 📦 |
Arquivos estáticos | assets | 🎴 |
Merge de branches | merge | 🔀 |
Reset de histórico de commits | revert | ⏪ |
Estruturação de pastas/arquivos | ftree | 🗃️ |
Certificados e licenças | cert | 📜 |
Trabalho não finalizado | wip | 🚧 |
Antes de começar, certifique-se de que você tem o seguinte instalado em sua máquina Windows:
- Node.js: Baixe e instale o Node.js a partir de nodejs.org. Isso também instalará o npm (Node Package Manager).
- Git: Baixe e instale o Git a partir de git-scm.com.
- Um editor de código: Você pode usar qualquer editor de código, mas o Visual Studio Code é recomendado. Baixe-o em code.visualstudio.com.
- Maven: Caso você não tenha extensões no Visual Studio Code, você pode usar um compilador para conseguir rodar o projeto, como o Maven.
Abra o seu prompt de comando (cmd) ou PowerShell e execute o seguinte comando para clonar os repositórios:
git clone https://github.com/CtrI-Alt-Del/chronos-frontend.git
git clone https://github.com/CtrI-Alt-Del/chronos-backend.git
Mude para o diretório do projeto:
cd chronos-frontend
cd chronos-backend
Obs: É necessário rodar os 2 repositórios juntos.
Execute o seguinte comando para instalar as dependências necessárias no repositório do frontend:
npm install
- Localize o arquivo
.env.example
na raiz do seu diretório do projeto. Este arquivo contém exemplos de variáveis de ambiente que você precisa configurar. - Crie um novo arquivo chamado
.env
no mesmo diretório que o.env.example
. - Copie o conteúdo do
.env.example
para o novo arquivo.env
. - Atualize os valores no arquivo
.env
de acordo com sua configuração local. Aqui está um exemplo de como o arquivo.env
pode parecer:
DATABASE_SOURCE_URL=
DATABASE_USERNAME=
DATABASE_PASSWORD=
WEB_APP_URL=
JWT_SECRET=
NEXT_PUBLIC_WEB_APP_URL=
NEXT_PUBLIC_SERVER_APP_URL=
Certifique-se de substituir os valores de espaço reservado pelos seus dados reais.
Após configurar as variáveis de ambiente, você pode executar o projeto usando o seguinte comando na pasta chronos-backend
:
mvnw.cmd spring-boot:run
Se estiver no PowerShell:
./mvnw.cmd spring-boot:run
Obs: Se precisar apenas compilar o projeto antes de rodá-lo, use:
./mvnw.cmd compile
Na pasta chronos-frontend
:
npm run dev
Este comando iniciará a aplicação, e você deverá ver uma saída indicando que a aplicação cliente e servidor está em execução.
Abra seu navegador e navegue até http://localhost:3000
(ou a porta que você especificou no arquivo .env
) para acessar a aplicação web.
Ou abra o navegador e navegue até http://localhost:8080
(ou a porta que você especificou no arquivo .env
) para acessar o servidor.
- Se você encontrar algum problema, verifique a saída do console para mensagens de erro.
- Certifique-se de que todas as variáveis de ambiente estão configuradas corretamente no arquivo
.env
tanto do cliente quanto do servidor. - Verifique se seu banco de dados e quaisquer outros serviços estão em execução, caso sua aplicação dependa deles.