A fim de colocar os estudos em prática, os desenvolvedores da comunidade Orange Juice estruturaram e desenvolveram este projeto, cujo objetivo é cadastrar receitas, despesas e mostrar o saldo disponível.
O projeto lançou a primeira versão, mas ainda está em andamento.
A API está no ar e a especificação está neste seguinte link.
- CRUD receitas
- CRUD despesas
- CRUD usuários
- NodeJS
- Express
- TypeScript
- Prisma
- Postgresql
- Clonar o repositório:
git clone [email protected]:Orange-Juice-Projeto-Developer/orange-wallet-backend.git
- Entrar na pasta do projeto:
cd orange-wallet-backend
- Abrir no editor (manualmente ou pela linha de código, como no exemplo):
code .
- Instalar dependências:
npm install
- Rodar o servidor:
npm run dev
- Criar arquivo .env com o link para o banco de dados, como no exemplo:
DATABASE_URL="postgres://nomedobanco:[email protected]/nomedobanco"
- Criar conexão com o banco de dados
npx prisma db push
- Abrir interface gráfica para visualização do banco de dados
npx prisma studio
💡 Estamos usando o Prettier e o Eslint, que requerem extensões na sua máquina:
- Extensão Prettier - Code Formatter
- Extensão Prettier ESLint
- Extensão ESLint
Além disso, é necessária a seguinte configuração no settings.json:
"editor.formatOnSave": true,
"prettier.singleQuote": false,
"prettier.printWidth": 70,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
"eslint.validate": ["javascript"]
💡 Para o Prisma, é recomendado instalar a extensão oficial chamada “Prisma”, e adicionar no settings.json a seguinte configuração para formatar o texto ao salvar:
"[prisma]": {
"editor.defaultFormatter": "Prisma.prisma"
}