Thanks to visit codestin.com
Credit goes to github.com

Skip to content

gfrancodev/teddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Teddy Logo

Teddy - Sistema de Gerenciamento de Clientes

Tela de Login Tela de Registro
Tela de Clientes Clientes Selecionados

Sistema completo de gerenciamento de clientes desenvolvido com React (frontend) e NestJS (backend), seguindo as melhores práticas de arquitetura e desenvolvimento.

Requisitos para Execução

Para executar toda a aplicação, você precisa ter os seguintes softwares instalados na sua máquina:

Certifique-se de que as versões do Docker e Docker Compose são compatíveis com os comandos que você pretende usar:

Antes de executar, certifique-se de criar os arquivos .env e .env.db na pasta /backend. Basta copiar os arquivos de exemplo e renomeá-los:

cp backend/.env.example backend/.env
cp backend/.env.db.example backend/.env.db
  • docker-compose up -d: Funciona com versões mais antigas do Docker Compose (antes da versão 2.0).
  • docker compose up -d: Funciona com versões mais recentes do Docker Compose (a partir da versão 2.0).
  • make up: Funciona se você tiver um arquivo Makefile configurado com um alvo up.

O frontend ficará disponível em http://localhost:8000, o backend em http://localhost:4000 e a documentação do Swagger em http://localhost:4000/v1/docs.

📚 Documentação Detalhada

🚀 Início Rápido

Pré-requisitos

  • Docker e Docker Compose
  • Node.js (versão 16 ou superior) - apenas para desenvolvimento local
  • npm ou yarn - apenas para desenvolvimento local

Executando com Docker

  1. Clone o repositório:
git clone https://github.com/gfrancodev/teddy.git
cd teddy
  1. Configure as variáveis de ambiente:
# Backend
cp backend/.env.example backend/.env
cp backend/.env.db.example backend/.env.db

# Frontend
cp frontend/.env.example frontend/.env
  1. Inicie os containers:
docker-compose up -d

A aplicação estará disponível em:

📂 Esquema do Banco de Dados

O esquema do banco de dados pode ser encontrado em: ./backend/database/schema.sql

Credenciais Iniciais

Perfil Email Senha
Admin [email protected] Admin@123
User [email protected] User@123

🏗️ Arquitetura

O projeto é dividido em duas partes principais:

Frontend

  • React com Feature Driven Design (FDD)
  • TypeScript para tipagem forte
  • Vite como build tool
  • Tailwind CSS para estilização
  • React Hook Form para formulários

Backend

  • NestJS com Onion Architecture
  • TypeScript e TypeORM
  • PostgreSQL como banco de dados
  • JWT para autenticação
  • Swagger para documentação da API

🐳 Serviços Docker

Serviço Descrição Porta
frontend Interface do usuário em React 8000
backend API REST em NestJS 4000
db Banco de dados PostgreSQL 5432
db-migration Serviço de migração do banco -
db-seed Serviço de seed de dados iniciais -