Sobre | Alunos Integrantes da Equipe | Professores responsáveis | Tecnologias | Instruções de utilização | Licença
A falta de controle de finanças é motivo de estresse em 58,4% das famílias brasileiras. Em um contexto de pandemia, esse problema tem se agravado consideravelmente. Nesse sentido, para não perder o controle financeiro pessoal ou familiar, é necessário alguma estratégia ou ferramenta para gerenciar finanças. Aliando o contexto tecnológico com o problema supracitado, a plataforma DinDin foi desenvolvida para fazer esse papel de ferramenta para acabar com ou atenuar o problema da perda de controle financeiro.
Os problemas financeiros estão presentes diariamente na vida dos brasileiros. Dívidas surgem todos os dias, sejam elas pequenas e repentinas como um lanche vespertino ou grandes e planejadas como uma conta de aluguel. Devido a isso, fica difícil manter o controle sobre quanto se tem, quanto se gastou, e quanto se pode gastar. Nesse contexto, a falta do gerenciamento do dinheiro causa endividamentos, estresse e ocasiona a não realização de sonhos e objetivos pessoais.
Esta é uma aplicação distribuída de controle de finanças pessoais, que possibilita aos seus usuários uma forma mais prática de controlar suas despesas e receitas.
As funcionalidades principais são:
- Permitir ao usuário dividir suas despesas em categorias;
- Permitir ao usuário lançar suas despesas e receitas diárias;
- Permitir ao usuário, junto de outros usuários, lançar despesas e receitas de modo compartilhado.
- Permitir que o usuário controle de onde o dinheiro está saindo ou entrando.
- Guilherme Gabriel Silva Pereira
- Henrique Penna Forte Monteiro
- Lucas Ângelo Oliveira Martins Rocha
- Victor Boaventura Goes Campos
- Vinícius Marini Costa E Oliveira
- Cleiton Silva Tavares
- Pedro Alves De Oliveira
- Frontend:
- Mobile
- Backend:
- Database:
- Devops:
- Cloud:
Essas instruções vão te levar a uma cópia do projeto rodando em sua máquina local para propósitos de testes e desenvolvimento.
Pré-requisitos:
- Ter instalado Docker na versão >=20.10
- Ter instalado Flutter na versão 2.10.5
- Passo 1: Clonar o repositório:
$ git clone https://github.com/ICEI-PUC-Minas-PPLES-TI/plf-es-2022-1-ti5-5104100-DinDin
- Passo 2: Configurar o API NodeJS (backend)
- Passo 2.1: Entrar na pasta do backend:
$ cd plf-es-2022-1-ti5-5104100-DinDin/Codigo/dindin-api/
- Passo 2.2: Criar o arquivo .env com as variáveis de ambiente do backend:
$ mv .env.sample .env
- Passo 2.3: Adicionar a sua chave (entre aspas) do Firebase na variável FB_PRIVATE_KEY dentro do arquivo .env:
$ vim .env
- Passo 2.4: Iniciar o Docker-Compose da API:
$ docker-compose up
- API estará rodando em http://localhost:3001/
-
Passo 3: Configurar o Nuxt VueJS (Frontend web)
-
Passo 3.1: Entrar na pasta do frontend web:
$ cd plf-es-2022-1-ti5-5104100-DinDin/Codigo/dindin-frontend/
- Passo 3.2: Criar o arquivo .env com as variáveis de ambiente do frontend web:
$ mv .env.sample .env
- Passo 3.3: Iniciar o Docker-Compose do Nuxt VueJS:
$ docker-compose up
- Frontend estará rodando em http://localhost:80/
-
Passo 4: Configurar o Flutter (Frontend mobile)
-
Passo 4.1: Entrar na pasta do frontend mobile:
$ cd plf-es-2022-1-ti5-5104100-DinDin/Codigo/dindin-mobile/dindin/
- Passo 4.2: Instalar as dependências do projeto Flutter:
$ flutter pub get
- Passo 4.3: Criar o arquivo .env com as variáveis de ambiente do frontend mobile:
$ mv .env-example .env
- Passo 4.4: Iniciar o Flutter no Navegador Chrome (Usando celular ou emulador necessita de trocar o API_BASE_URL da .env para o IPv4 da sua máquina na mesma rede, além disso dar permissão do seu SHA265 do Android na sua conta do Firebase):
$ flutter run -d chrome
- Aplicação mobile irá gerar a build e abrir no navegador chrome
Esse projeto está sob a licença Creative Commons Attribution 4.0 International. Veja o arquivo LICENSE para mais detalhes.