Skip to content

01Rian/bff-consorcio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 

Repository files navigation

🚀 BFF Consórcio API

📋 Descrição

Backend For Frontend (BFF) para sistema de gerenciamento de consórcios, desenvolvido com NestJS e GraphQL. Este projeto serve como camada intermediária entre o frontend e os serviços de backend, fornecendo uma API GraphQL unificada para operações relacionadas a consórcios, cotas e usuários.

✨ Funcionalidades

📦 Módulos Principais

  • Usuários: Gerenciamento de usuários com autenticação, registro e atualização de perfis
  • Consórcios: Criação e gerenciamento de grupos de consórcio
  • Cotas: Administração de cotas individuais, pagamentos e status

🔧 Características Técnicas

  • GraphQL API: Interface moderna e flexível para consultas
  • Autenticação: Sistema de autenticação com guards
  • Modular: Arquitetura modular do NestJS
  • TypeScript: Totalmente tipado para maior segurança de código

📋 Pré-requisitos

  • Node.js (versão 18 ou superior)
  • npm ou yarn
  • Variáveis de ambiente configuradas

🛠️ Configuração do Projeto

# Instalar dependências
$ npm install

# Configurar variáveis de ambiente
# Copie e configure o arquivo .env com as configurações necessárias

▶️ Executar o Projeto

# Desenvolvimento
$ npm run start

# Modo watch (desenvolvimento)
$ npm run start:dev

# Modo produção
$ npm run start:prod

🎮 GraphQL Playground

Após iniciar o projeto, a interface GraphQL Playground estará disponível em:

http://localhost:3000/graphql

🔗 Estrutura da API

👥 Usuários

  • Registro de novos usuários
  • Autenticação e autorização
  • Atualização de perfis
  • Gerenciamento de endereços

🏢 Consórcios

  • Criação de grupos de consórcio
  • Configuração de valores e prazos
  • Adição de cotas ao consórcio
  • Atribuição de cotas a usuários

💰 Cotas

  • Registro de pagamentos
  • Atualização de status
  • Consulta de informações das cotas

🧪 Testes

# Testes unitários
$ npm run test

# Testes e2e
$ npm run test:e2e

# Cobertura de testes
$ npm run test:cov

🛠️ Tecnologias Utilizadas

  • NestJS: Framework Node.js para aplicações escaláveis
  • GraphQL: API query language com Apollo Server
  • TypeScript: Linguagem tipada baseada em JavaScript
  • Axios: Cliente HTTP para integração com APIs externas

🏗️ Arquitetura

O projeto segue a arquitetura modular do NestJS:

src/
├── app.module.ts       # Módulo principal
├── main.ts             # Ponto de entrada da aplicação
├── schema.gql          # Schema GraphQL gerado automaticamente
├── common/             # Módulos e utilitários compartilhados
│   └── http/           # Configuração de requisições HTTP
├── user/               # Módulo de usuários
│   ├── auth/           # Autenticação e autorização
│   └── dtos/           # Tipos e inputs GraphQL
├── consorcio/          # Módulo de consórcios
│   └── dtos/           # Tipos e inputs GraphQL
└── cota/               # Módulo de cotas
    └── dtos/           # Tipos e inputs GraphQL

⚙️ Configuração de Ambiente

Certifique-se de configurar as seguintes variáveis de ambiente:

# Configurações da aplicação
PORT=3000
NODE_ENV=development

# URLs das APIs externas
API_BASE_URL=your_api_url_here

About

BFF Consórcio API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors