Skip to content

OxenteC0de/DelivooFront

Repository files navigation

🍔 Delivoo

O sabor que chega voando

TypeScript React NestJS PostgreSQL

Demo ao VivoRepositório BackendAPI Documentação


📋 Sobre o Projeto

Delivoo é uma plataforma completa de gestão de cardápios e produtos para restaurantes, desenvolvida com tecnologias modernas e eficientes.

Mais do que um simples sistema de cadastro, o Delivoo oferece uma experiência intuitiva e profissional para restaurantes gerenciarem seus produtos, categorias e destacarem opções saudáveis para seus clientes.

🎯 Objetivo

Facilitar a gestão de cardápios digitais para restaurantes, permitindo:

  • Cadastro rápido e organizado de produtos
  • Categorização eficiente
  • Destaque automático de produtos saudáveis
  • Controle de estoque em tempo real
  • Interface moderna e responsiva

✨ Funcionalidades

👤 Gestão de Usuários

  • ✅ Cadastro e autenticação segura com JWT
  • ✅ Login/Logout com persistência de sessão
  • ✅ Gerenciamento de perfil

🍱 Gestão de Categorias

  • ✅ CRUD completo de categorias
  • ✅ Associação de produtos a categorias
  • ✅ Busca e filtros avançados

🛒 Gestão de Produtos

  • ✅ CRUD completo de produtos
  • ✅ Upload de fotos (via URL)
  • ✅ Controle de estoque e preços
  • ✅ Marcação de produtos saudáveis
  • ✅ Vinculação a categorias

🌿 Produtos Saudáveis (Diferencial)

Em um cenário onde o consumo de alimentos ultraprocessados tem crescido, o Delivoo implementa um recurso que recomenda e destaca produtos saudáveis.

Funcionalidades:

  • Destaque visual (tag verde)
  • Seção exclusiva na página inicial
  • Endpoints específicos para marcação e busca

Endpoints principais:


GET /produto/recomendacoes // Lista produtos saudáveis  
PATCH /produto/:id/saudavel // Marca produto como saudável  
PATCH /produto/:id/nao-saudavel // Remove marcação de saudável


🛠️ Tecnologias Utilizadas

Frontend

  • React 18 + TypeScript
  • Tailwind CSS para estilização
  • React Router para navegação
  • Axios para requisições HTTP
  • Lucide React para ícones
  • React Toastify para notificações
  • Context API para gerenciamento de estado

Backend

  • NestJS (framework Node.js)
  • TypeORM para ORM
  • PostgreSQL como banco de dados
  • JWT para autenticação
  • Swagger para documentação da API
  • bcryptjs para hash de senhas

DevOps

  • Vercel (deploy do frontend)
  • Render (deploy do backend + PostgreSQL)
  • Git/GitHub (versionamento)

🚀 Como Rodar o Projeto

📦 Pré-requisitos

Certifique-se de ter instalado:


🖥️ Frontend

1️⃣ Clonar o repositório

git clone https://github.com/OxenteC0de/DelivooFront.git
cd DelivooFront

2️⃣ Instalar dependências

npm install

3️⃣ Configurar variáveis de ambiente

Crie um arquivo .env na raiz do projeto:

VITE_API_URL=http://localhost:4000

4️⃣ Rodar o projeto

npm run dev

✅ O frontend estará disponível em: http://localhost:5173


⚙️ Backend

1️⃣ Clonar o repositório

git clone https://github.com/OxenteC0de/Delivoo
cd Delivoo

2️⃣ Instalar dependências

npm install

3️⃣ Configurar variáveis de ambiente

Crie um arquivo .env na raiz do projeto:

DATABASE_URL=postgres://user:password@localhost:5432/db_delivoo
JWT_SECRET=sua_chave_secreta_aqui
PORT=4000

Ou configure diretamente no app.module.ts:

TypeOrmModule.forRoot({
  type: 'postgres',
  host: 'localhost',
  port: 5432,
  username: 'seu_usuario',
  password: 'sua_senha',
  database: 'db_delivoo',
  synchronize: true, // ⚠️ Apenas em desenvolvimento
  ssl: false,
});

4️⃣ Rodar o projeto

npm run start:dev

✅ O backend estará disponível em: http://localhost:4000
✅ Swagger (documentação): http://localhost:4000/swagger


📸 Screenshots

🏠 Home

image

📋 Listagem de Produtos

image

🌿 Produtos Saudáveis

image

🌐 Links do Projeto


👥 Equipe de Desenvolvimento

Nome Função
William Almeida Scrum Master & Dev Full Stack
David Barbosa Desenvolvedor & Documentação
Dilvani Estrela Desenvolvedora & Design
Janaína Bezerra Desenvolvedora
Karine Santos Desenvolvedora
Tauane Soares Desenvolvedora
Winnie Sant'Ana Desenvolvedora

📄 Licença

Este projeto está sob a licença MIT.
Consulte o arquivo LICENSE para mais detalhes.


🤝 Contribuindo

Contribuições são bem-vindas!
Sinta-se à vontade para abrir issues ou pull requests.

  1. Faça um fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/NovaFeature)
  3. Commit suas mudanças (git commit -m 'Adiciona nova feature')
  4. Push para a branch (git push origin feature/NovaFeature)
  5. Abra um Pull Request

Desenvolvido com ❤️ pela equipe OxenteC0de ⭐ Deixe uma estrela se este projeto te ajudou!


Releases

No releases published

Packages

 
 
 

Contributors

Languages