Aprenda a construir os melhores pratos com receitas criadas por profissionais do mundo inteiro.
O Foodfy é uma aplicação web completa de gerenciamento de receitas, desenvolvida durante o bootcamp LaunchBase da Rocketseat, usada como critério de avaliação dos conhecimentos obtidos durante o treinamento.
- Explore variados tipos de receitas.
- Gerencie receitas, chefs e usuários.
- Upload de imagems com Multer.
- Pesquisar receitas.
- Páginas dinâmicas com Nunjucks.
- Banco de dados PostgreSQL.
- Sistema de login e recuperação de senha.
- Área administrativa.
As seguintes tecnologias foram utilizadas no desenvolvimento do projeto:
- HTML
- CSS
- JavaScript
- Nunjucks
- NodeJS
- Nodemailer
- Express
- Express Session
- Multer
- PostgreSQL
- BcryptJS
- Faker.js
Para rodar a aplicação, você precisa instalar o Node e o banco de dados Postgres.
Siga os passos abaixo:
# Abra um terminal e copie este repositório com o comando
$ git clone https://github.com/martins-rafael/foodfy.git
# ou use a opção de download.
# Entre na pasta com
$ cd foodfy
# Instale as dependências
$ npm install
# Crie o banco de dados e as tabelas utilizando os comandos
# inclusos no arquivo "foodfy.sql".
# Conexão com o banco de dados:
# Abra e edite o arquivo "db.js" dentro da pasta "src/config"
# com o seu user e password do Postgres.
# Popule o banco de dados usando o aquivo "seed.js":
$ node seed.js
# Rode a aplicação
$ npm start
Importante: Não exclua ou altere as imagens de placeholder diretamente da pasta plublic/images
, pois as receitas e chefs gerados pelo seed.js
compartilham desses arquivos entre si. Porém, é seguro deletá-las pela área administrativa do site.
Selecione um email da tabela users, acesse a tela de login e entre utilizando o mesmo com a senha "rocket" (senha padrão).
Dica: usuários administradores possuem a badge "ADMIN" no header:
Para usar estes recursos, edite o arquivo mailer.js
dentro da pasta scr/lib
com suas credenciais.
Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Feito com 💜 by Rafael Martins