O Fincheck é uma aplicação voltada para o controle de finanças. Nele você pode gerenciar os seus gastos de uma forma otimizada, através do controle de suas contas bancárias, categorias de gastos e transações. Esse projeto foi desenvolvido utilizando algumas das stacks mais novas do mercado.
Para rodar o Fincheck em sua máquina é bem simples.
Você precisa ter instalado:
- Node.js v18
- Docker v4.17.1 e utilizar a imagem Postgres (https://hub.docker.com/_/postgres)
- NPM, Yarn ou yarn para a instalação dos pacotes (projeto desenvolvido com yarn)
Para a instalação dos pacotes você deve entrar em cada pasta individualmente
e rodar o comando yarn
, pois neste projeto temos o backend e o frontend.
Navegue para ../api
e rode no terminal o comando:
yarn
Repita esse passo para ../frontend
.
Por padrão, o banco de dados vem totalmente vazio. Então para facilitar vou deixar uma Collection que fiz com o Insomnia, para o gerenciamento completo da aplicação, (CRIAR, LISTAR E DELETAR USUÁRIOS, CONTAS BANCÁRIAS, CATEGORIAS E TRANSAÇÕES)
Clique aqui para fazer o download
Exemplo: Dentro do Insomnia basta importar a Collection do Fincheck e começar a usar. Vale lembrar que foi utilizado o token JWT para a autenticação, então eu exportei junto com a collection as variáveis de ambiente. Basta fazer o signup de uma nova conta, copiar e colar o token gerado dentro das variáveis de ambiente, como accessTokens.User1. E no Insomnia, na aba de Auth, selecionar Bearer e apertar Crtl + Space e selecionar o User1. Por padrão todos os tokens tem validade de 7 dias.
Lembre-se de alterar as rotas da aplicação nos arquivos:
\api\src\main.ts
altere o valor de app.listen()
para a porta que você deseja que o banco rode.
\api\src\main.ts
altere o valor da propriedade origin
para a rote em que o seu frontend vai rodar.
E mais um detalhe, a porta padrão do frontend foi definida para :3000
, e da api para :4000
.
Pronto, agora você está preparado para utilizar esta aplicação.
Para iniciar a api basta rodar yarn start:dev
ou yarn start:docker
caso o processo do Docker esteja parado no Windows, em sua respectiva pasta.
E para iniciar o frontend basta rodar yarn dev
em sua respectiva pasta.
Back-end:
- Node.js
- NestJs
- Prisma
- BCryptjs
- Docker
- Postgres
- TypeScript
Front-end:
- Vite
- React
- TypeScript
- TailwindCSS
- React Hook Forms (com Zod)
- React Query
- Radix UI (components e icones)
- React Hot Toast
- Swiper
Em ambos foram utilizados o EditorConfig e Eslint para o desenvolvimento.