Giter Club home page Giter Club logo

sindimeet's Introduction

SindiMeet - Sistema de Reservas para Atendimento Jurídico

Propósito do Projeto

O SindiMeet é um sistema que visa facilitar o agendamento de atendimento jurídico para os associados de um sindicato. Permite que os associados façam login em suas contas, agendem atendimentos e verifiquem o status das reservas. O sistema foi desenvolvido com foco na praticidade e comodidade dos usuários.

Com este sistema, os associados poderão:

✅ Agendar Reservas Online: Adeus, longas filas! Agora você pode reservar seu horário de atendimento com apenas alguns cliques, escolhendo a data que melhor se adequa à sua agenda.

✅ Verificar o Status da Reserva: Mantenha-se informado sobre o andamento da sua reserva. Saiba exatamente quando você será atendido e evite esperas desnecessárias.

✅ Atendimento Personalizado: Nosso sistema organiza as reservas por ordem de chegada, garantindo um atendimento justo e eficiente.

⛔ Notificações por E-mail: Você receberá lembretes por e-mail para garantir que você não perca o seu horário de atendimento e esteja sempre atualizado.

Tecnologias Utilizadas

NodeJS TypeScript Express.js Prisma PostgreSQL Nodemailer Docker JWT

Rotas

Aqui está uma lista das principais rotas da API:

Rotas de Autenticação

Rota Método Descrição
/user/create POST Crie um novo usuário.
/ POST Autentique um usuário.

Rotas de Reservas

Rota Método Descrição
/reservation/create POST Crie uma nova reserva.
/reservation/list/:status GET Obtenha a lista de reservas com base no status fornecido.
/reservation/list/by-user GET Obtenha a lista de reservas de um usuário específico.
/reservation/update-status/:id_reservation POST Atualize o status de uma reserva com base no ID fornecido.
/reservation/list/checkin GET Obtenha uma lista de reservas para o check-in de hoje, ordenadas por horário.

Como Executar o Projeto

  1. Clone do repositório:

    Execute no seu terminal o comando:

    git clone https://github.com/maxsonferovante/SindiMeet.git
    

    Acesse a pasta do projeto:

    cd SindMeet
    
  2. Instalação de Dependências: Certifique-se de ter o Node.js instalado em seu sistema. Execute npm install para instalar as dependências do projeto.

  3. Configuração do Banco de Dados com Docker: Utilize Docker para rodar uma instância do PostgreSQL com o seguinte comando:

    docker run --name sindimeet-postgres -e POSTGRES_PASSWORD=suasenha -p 5432:5432 -d postgres

    Certifique-se de substituir suasenha pela senha desejada.

  4. Configuração do Banco de Dados sem Docker: Se preferir, configure um banco de dados PostgreSQL localmente e ajuste as variáveis de ambiente no arquivo .env.

  5. Migrações do Prisma: Execute npx prisma migrate dev para criar as tabelas do banco de dados.

  6. Iniciar o Servidor: Inicie o servidor Node.js com npm run dev.

  7. Acesso à Aplicação: Acesse a aplicação em seu navegador ou via ferramentas como o Postman, configurando as rotas e autenticação conforme a documentação da API.

  8. Utilização da API: Utilize a API para criar, listar, atualizar e excluir reservas, além de autenticar usuários.

  9. Envio de E-mails: Configure as credenciais de envio de e-mails no arquivo .env para receber notificações sobre suas reservas.

Lembre-se de consultar a documentação da API para obter detalhes sobre como usar cada rota e endpoint.

Além disso, você pode adaptar o arquivo docker-compose.yml para incluir a configuração do banco de dados PostgreSQL com Docker.

sindimeet's People

Contributors

maxsonferovante avatar

Stargazers

Wouerner Brandão  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.