Skip to content

thebonfiretech/bonfire-api

Repository files navigation

The Bonfire API

API modularizada do Bonfire, vem com destinaçao a ser a API principal, otimizando assim manutençao geral dos sistemas.

Linguagem de Programação:

TypeScript

Framework & Bibliotecas:

JWT NodeJS Nodemon MongoDB Express.js

Outros

Docker Nginx Insomnia

Funcionalidades

  • autenticação
  • gerencimento de escolas
  • gerencimento de alunos
  • gerencimento dos modulos
  • gerenciamento do banco de dados

Instalação

Clone o repositório:

git clone https://github.com/thebonfiretech/bonfire-api

Entre no diretório do projeto:

cd bonfire-api

Instale as dependências:

npm install 

Uso em modo de desenvolvimento

npm run dev

Build e Iniciação do build

npm run build
npm run start

Arquitetura

  • dist -> Pasta final do projeto compilado
  • src -> Pasta destinada aos scripts
    • assets -> Pasta destinada a arquivos gerais e de configurações
      • config -> Arquivos de configuração do projeto
        • default.ts -> Arquivo de configuração geral do projeto
        • errors.ts -> Arquivo de configuração do retorno de erros
        • logger.ts -> Configuração de estilos do logger
    • database -> Pasta destinada a funções e models da database
      • models -> Models internos do projeto
      • index.ts -> Funções gerais e de conexão da database
    • middlewares -> Pasta destinada a middlewares
      • manageRequest.ts -> Gerenciador de requisições
    • resources -> Pasta destinada aos recursos
      • [resource] -> Pasta controladora dos recursos da API
    • routes -> Pasta destinada as rotas
      • resouces -> Agrupamento dos arquivos de rotas
        • [resource].router.ts -> Roteamento do recurso
      • index.ts -> Arquivo principal de rotas
    • utils -> Pasta destinada a funções e tipos gerais
      • functions -> Pasta de funções globais
      • types -> Pasta de tipos globais
    • app.ts -> Arquivo de configuração do app express
    • server.ts -> Arquivo principal do projeto
  • .env -> Variaveis de ambiente do projeto

Autores