Skip to content

Faguiro/SwiftBite

Repository files navigation

SwiftBite - Aplicativo de Entrega de Comida

SwiftBite

SwiftBite é um aplicativo web moderno para entrega de comida, construído com as tecnologias mais recentes para oferecer uma experiência de usuário rápida, responsiva e intuitiva. Este projeto foi desenvolvido para simular uma plataforma real de delivery, com funcionalidades como navegação por restaurantes, cardápios, carrinho de compras persistente e autenticação de usuários.

✨ Recursos

  • Navegação por Restaurantes: Explore uma lista de restaurantes populares com informações como tipo de cozinha, avaliação, tempo de entrega e faixa de preço.
  • Cardápios Detalhados: Visualize o cardápio completo de cada restaurante, organizado por categorias.
  • Carrinho de Compras Persistente: Adicione, remova e atualize a quantidade de itens no carrinho. Os itens são salvos na conta do usuário, persistindo entre sessões e dispositivos.
  • Autenticação de Usuário: Sistema completo de login e cadastro de usuários utilizando e-mail e senha, com o Firebase Authentication.
  • Área do Usuário:
    • Perfil: Visualize e atualize suas informações pessoais.
    • Histórico de Pedidos: Acompanhe todos os pedidos realizados, com detalhes sobre os itens, data e status.
    • Configurações: Gerencie sua conta, incluindo a opção de sair (logout).
  • Checkout Simplificado: Um fluxo de finalização de compra onde o usuário pode preencher o endereço de entrega e escolher a forma de pagamento.
  • Design Responsivo: A interface se adapta perfeitamente a diferentes tamanhos de tela, de desktops a dispositivos móveis.
  • Busca com IA: Utiliza o Genkit para fornecer uma busca inteligente por itens do menu, com capacidade de pedir esclarecimentos em caso de ambiguidades.

🚀 Tecnologias Utilizadas

Este projeto foi construído com um stack de tecnologias modernas e eficientes:

  • Frontend:
  • UI & Estilização:
  • Backend & Banco de Dados:
    • Firebase:
      • Firestore: Para armazenamento de dados do usuário, carrinho e pedidos.
      • Firebase Authentication: Para gerenciamento de autenticação.
  • Inteligência Artificial:

🏁 Como Começar

Para executar este projeto localmente, siga os passos abaixo:

Pré-requisitos

  • Node.js (v18 ou superior)
  • npm ou yarn

1. Clonar o Repositório

git clone https://github.com/seu-usuario/swiftbite.git
cd swiftbite

2. Instalar as Dependências

npm install

3. Configurar o Firebase

O projeto já está configurado para se conectar a um projeto Firebase. As credenciais de configuração do cliente estão localizadas em src/firebase/config.ts. As regras de segurança do Firestore estão definidas em firestore.rules.

Para usar seu próprio projeto Firebase:

  1. Crie um projeto no console do Firebase.
  2. Ative o Firebase Authentication (com o provedor de E-mail/Senha) e o Firestore.
  3. Obtenha as credenciais do seu aplicativo web no Firebase e atualize o arquivo src/firebase/config.ts.
  4. Aplique as regras de segurança do arquivo firestore.rules no seu banco de dados Firestore.

4. Executar o Servidor de Desenvolvimento

Para iniciar o aplicativo em modo de desenvolvimento:

npm run dev

Abra http://localhost:9002 no seu navegador para ver o resultado.

5. Executar o Genkit (IA)

Para que a funcionalidade de busca com IA funcione, você precisa iniciar o servidor do Genkit em um terminal separado:

npm run genkit:dev

Isso iniciará o ambiente de desenvolvimento do Genkit e permitirá que o frontend se comunique com os fluxos de IA.


Feito com ❤️ por Faguiro

About

SwiftBite Sua próxima refeição, entregue rapidamente.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages