A principal funcionalidade da aplicação está em cadastrar produtos organizados por categorias e adicioná-los em cardápios separados por período diurno e noturno. Isso inclui o gerenciamento deles através do CRUD, o tratamento de regras de negócio que é, por exemplo, não duplicar produtos em cardápios ou remover produtos que estejam adicionados em cardápios.
Ferramenta / Pacote | Versão | Opcional |
---|---|---|
Docker Desktop | ^4 | |
Docker Compose | ^2 | x |
VsCode | ^1.8 | x |
Node | ^18 | |
Yarn ou Npm | ^1.22 ou ^9.8 |
Nome | Post | Get | Patch | Put | Delete |
---|---|---|---|---|---|
Menus | register | [findOne, findMany, findManyByCurrentPeriod] | update | remove | |
Products | register | [findOne, findMany] | update | remove | |
Categories | register | [findOne, findMany, findProducts] | update | remove |
Instale as dependências do package.json
yarn install && yarn build
Copie o template do env para .env
cp env-example .env
# Utilize esse esquema para conectar com o mongo ATLAS
DATABASE_URL="mongodb+srv://{username}:{password}.{host}/{database}?retryWrites=true&w=majority"
# Ou esse para conectar com o container do docker mongo
DATABASE_URL="mongodb://root:root@localhost:27017/restaurant?authSource=admin"
# Altere as permissões do script para subir o mongo_replica
chmod +x docker/mongo/mongo-replica.sh
# Para executar o script e subir o container
docker/mongo/mongo-replica.sh
# Para acessar o terminal do mongo
docker exec -it mongo mongosh
# Use: yarn prisma studio para visualizar as coleções
show dbs
use restaurant
db.auth('root', 'root')
show collections
yarn prisma generate # atualizar o prisma.schema
yarn prisma db push # subir o schema para o banco de dados
yarn prisma studio # visualizar os dados
yarn run start # production - [node dist/src/main]
yarn run start:dev # watch - [nest start --watch]
yarn run test # unit tests
yarn run test:e2e # e2e tests
yarn run test:cov # test coverage
Nest is MIT licensed.