ZabaFood é uma aplicação de e-commerce para alimentos artesanais, desenvolvida como parte de um projeto de conclusão de ciclo do curso de desenvolvimento web oferecido pela Alpha ed/tech. Esta aplicação permite aos usuários navegar por produtos, fazer pedidos, gerenciar suas contas e muito mais.
Cadastro de Usuários: Os usuários podem se cadastrar na plataforma fornecendo informações básicas. Autenticação: Sistema de login seguro com criptografia de senha. Navegação de Produtos: Os usuários podem visualizar e pesquisar produtos disponíveis. Gerenciamento de Pedidos: Funcionalidade para fazer e gerenciar pedidos. Administração de Produtos: Recursos de administração para gerenciar produtos.
- Node.js: Plataforma para execução do backend da aplicação.
- Express: Framework web para Node.js, utilizado para construir as rotas da API.
- PostgreSQL: Banco de dados relacional para armazenar dados da aplicação.
- HTML/CSS/JavaScript: Frontend para interação com os usuários.
- Git/GitHub: Controle de versão e hospedagem do código-fonte.
- JWT: Utilizado para autenticação de usuários e geração de tokens de sessão.
- Cookie-Parser: Middleware para o Express que facilita o gerenciamento de cookies em aplicativos web.
- Nodemon: Utilitário que monitora alterações nos arquivos do projeto e reinicia automaticamente o servidor durante o desenvolvimento.
- Bcrypt: Biblioteca para Node.js que ajuda a criptografar senhas para armazenamento seguro no banco de dados.
- Cors: Middleware para o Express que permite controlar o acesso aos recursos da API a partir de diferentes origens.
- Validator: Componente utilizado para garantir a integridade e validade dos dados, essencial para validar entradas de usuários e manter a consistência dos dados na aplicação.
- Multer: Middleware utilizado para lidar com o upload de arquivos, fornecendo uma maneira conveniente de receber e armazenar arquivos enviados pelo usuário através de formulários web.
- Dotenv: Pacote que facilita a configuração de variáveis de ambiente em aplicações.
- nginx: Servidor web de alto desempenho utilizado para roteamento de tráfego, balanceamento de carga, cache de conteúdo estático e hospedagem de sites e aplicações web.
- Clone o repositório: git clone https://github.com/LeoMoriLima/zabafood.git
- Instale as dependências: npm install
- Configure as variáveis de ambiente no arquivo .env conforme o modelo fornecido.
- Inicie o servidor: npm start
- Acesse a aplicação em: http://localhost:3000
ZabaFood is an e-commerce application for artisanal foods, developed as part of a project to conclude the web development course offered by Alpha ed/tech. This application allows users to browse products, place orders, manage their accounts, and more.
User Registration: Users can register on the platform by providing basic information. Authentication: Secure login system with password encryption. Product Navigation: Users can view and search for available products. Order Management: Functionality to place and manage orders. Product Administration: Admin features to manage products.
- Node.js: Platform for executing the application's backend.
- Express: Web framework for Node.js, used to build API routes.
- PostgreSQL: Relational database for storing application data.
- HTML/CSS/JavaScript: Frontend for user interaction.
- Git/GitHub: Version control and source code hosting.
- JWT: Used for user authentication and session token generation.
- Cookie-Parser: Express middleware that facilitates cookie management in web applications.
- Nodemon: Utility that monitors changes in project files and automatically restarts the server during development.
- Bcrypt: Node.js library that helps encrypt passwords for secure storage in the database.
- Cors: Express middleware that allows controlling access to API resources from different origins.
- Validator: Component used to ensure data integrity and validity, essential for validating user inputs and maintaining data consistency in the application.
- Multer: Middleware used to handle file uploads, providing a convenient way to receive and store files submitted by users through web forms.
- Dotenv: Package that facilitates the configuration of environment variables in applications.
- nginx: High-performance web server used for traffic routing, load balancing, static content caching, and hosting websites and web applications.
- Clone the repository: git clone https://github.com/LeoMoriLima/zabafood.git
- Install dependencies: npm install
- Set up environment variables in the .env file as per the provided template.
- Start the server: npm start
- Access the application at: http://localhost:3000