O SmartOrder é uma aplicação inovadora projetada para agilizar o processo de atendimento em restaurantes e bares. Com uma interface intuitiva e fácil de usar, SmartOrder permite que os garçons anotem os pedidos dos clientes de forma rápida e eficiente, eliminando a necessidade de anotações em papel e minimizando erros de comunicação.
Here're some of the project's best features:
- Acompanhamento de pedidos em tempo real
- Cadastro de produtos
- Cadastro de ingredientes
- Cadastro de categorias
- Criação de novos pedidos
Methods | Endpoints | Action |
---|---|---|
GET |
/docs | To access API Docs with Swagger |
POST |
/authenticate | To authenticate |
POST |
/users | To create a new user |
GET |
/users | To fetch all users |
GET |
/users/:userId | To get a user by ID |
PUT |
/users/:userId | To update a user |
DELETE |
/users/:userId | To delete a user |
POST |
/products | To create a new product |
GET |
/products | To fetch all products |
GET |
/categories/:categoryId/products | To fetch all products by category |
GET |
/products/:productId | To get a product by ID |
PUT |
/products/:productId | To update a product |
DELETE |
/products/:productId | To delete a product |
POST |
/categories | To create a new category |
GET |
/categories | To fetch all categories |
GET |
/categories/:categoryId | To get a category by ID |
PUT |
/categories/:categoryId | To update a category |
DELETE |
/categories/:categoryId | To delete a category |
POST |
/ingredients | To create a new ingredient |
GET |
/ingredients | To fetch all ingredients |
POST |
/orders | To create a new order |
GET |
/orders | To fetch all orders |
PATCH |
/orders/:orderId | To update a order status |
DELETE |
/orders/:orderId | To cancel a order |
Para iniciar a aplicação localmente é necessário ter Node, pnpm e Docker previamente instalados.
Para instalar as dependências do projeto, rode o comando:
$ pnpm install
A aplicação precisa de um banco de dados Postgres, com o arquivo docker-compose.yml
o processo de criação do container é automatizado, basta rodar o comando:
$ docker compose up -d
O arquivo .env.example
contém todas as variáveis preenchidas para rodar localmente, basta copiar e alterar o nome para .env
:
$ cp .env.example .env
Para criar as tabelas do banco de dados, é necessário rodar as migrations:
$ pnpm prisma migrate deploy
O banco de dados pode ser pré-populado com o arquivo de seed, basta rodar o comando:
$ pnpm prisma db seed
Com o ambiente devidamente configurado, a aplicação está pronta para iniciar:
$ pnpm dev
Por padrão, a aplicação está rodando no endereço: http://localhost:3333
Acesse http://localhost:3333/docs
para a documentação
Tecnologias utilizadas no projeto: