{"id":21018645,"url":"https://github.com/pedromarques391/mymoney","last_synced_at":"2026-05-02T20:36:12.351Z","repository":{"id":263144979,"uuid":"889326848","full_name":"PedroMarques391/myMoney","owner":"PedroMarques391","description":"Aplicativo Mobile construído com React Native, TypeScript, Styled Components e firebase","archived":false,"fork":false,"pushed_at":"2024-11-17T14:32:19.000Z","size":1894,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-03T14:54:31.317Z","etag":null,"topics":["expo-cli","firebase-auth","firebase-realtime-database","react-native","react-native-navigation-drawer","styled-components","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PedroMarques391.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-16T04:48:10.000Z","updated_at":"2025-03-26T15:23:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"3f2ce190-4db1-4ea0-8114-5a33b4c3f1af","html_url":"https://github.com/PedroMarques391/myMoney","commit_stats":null,"previous_names":["pedromarques391/mymoney"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PedroMarques391/myMoney","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FmyMoney","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FmyMoney/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FmyMoney/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FmyMoney/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PedroMarques391","download_url":"https://codeload.github.com/PedroMarques391/myMoney/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PedroMarques391%2FmyMoney/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32549383,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T19:18:06.202Z","status":"ssl_error","status_checked_at":"2026-05-02T19:16:21.335Z","response_time":132,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expo-cli","firebase-auth","firebase-realtime-database","react-native","react-native-navigation-drawer","styled-components","typescript"],"created_at":"2024-11-19T10:26:56.426Z","updated_at":"2026-05-02T20:36:07.344Z","avatar_url":"https://github.com/PedroMarques391.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"**myMoney** é um aplicativo de registro de despesas construído com **React Native**, utilizando **Expo Go**, **Firebase** para login, cadastro de usuários e registros, e **styled-components** para estilização. A navegação entre telas é gerenciada com **React Native Navigation**.\n\n---\n\n## **Funcionalidades**  \n\nO aplicativo possui quatro telas principais:  \n\n### **1. Tela de Autenticação**  \n- Inclui as telas de **Login** e **Cadastro**.  \n- A navegação entre elas é suave e visualmente agradável, utilizando estados para transições dinâmicas.  \n\n| Tela de Login                              | Tela de Cadastro                          |\n|--------------------------------------------|-------------------------------------------|\n| \u003cimg src=\"./assets/images/login.PNG\" alt=\"Tela de Login\" width=\"300\"\u003e | \u003cimg src=\"./assets/images/signup.PNG\" alt=\"Tela de Cadastro\" width=\"300\"\u003e |\n\n\n### **2. Tela Home**  \n- Tela principal do aplicativo.  \n- Mostra:  \n  - Nome do usuário e foto de perfil.  \n  - Valor total em conta.  \n  - Lista de itens cadastrados (com filtros).  \n- **Filtros disponíveis**:  \n  - Cadastros do dia atual.  \n  - Receitas (entradas de dinheiro).  \n  - Despesas (saídas de dinheiro).  \n- Itens podem ser excluídos diretamente da lista, mas apenas os registros do dia.  \n- **Picker estilizado** para iOS e Android.  \n\n#### **Exemplo de Tela Home:**  \n\n| Sem Itens Cadastrados                              | Com Itens Cadastrados                           |\n|----------------------------------------------------|------------------------------------------------|\n| \u003cimg src=\"./assets/images/homeScreen2.PNG\" alt=\"Tela Home sem Itens\" width=\"300\"\u003e | \u003cimg src=\"./assets/images/homeScreen.PNG\" alt=\"Tela Home com Itens\" width=\"300\"\u003e |\n\n--- \n\n### **3. Tela Register**  \n- Exibe:  \n  - Um card com o valor disponível na carteira.  \n  - Número total de itens cadastrados.  \n- Contém:  \n  - Dois inputs para entrada de dados.  \n  - Um picker reutilizado da tela Home (evitando repetição de código).  \n- Ao registrar um item:  \n  - Ele é salvo no **Firebase Realtime Database**.  \n  - Atualiza automaticamente a lista de itens na tela Home, graças ao método **onValue**.\n    \n**Imagem 4: Tela de Registro de Itens**  \n\u003cimg src=\"./assets/images/registerScreen.PNG\" alt=\"Tela de Registro de Itens\" width=\"300\"\u003e\n\n### **4. Tela de Perfil**  \n- Exibe as informações do usuário:  \n  - Nome, email, foto de perfil, profissão e telefone.  \n  - Valores:  \n    - Valor total em carteira.  \n    - Número total de registros.  \n    - Total de ganhos e de gastos.  \n- Funcionalidades:  \n  - **Editar perfil**:  \n    - Permite alterar nome, profissão, telefone e a URL da foto de perfil (funcionalidade futura).  \n  - **Registrar gastos**: Redireciona para a tela Register.  \n  - **Sair**: Desloga o usuário.  \n\n| Tela de Perfil                                    | Editando o Perfil                              |\n|--------------------------------------------------|-----------------------------------------------|\n| \u003cimg src=\"./assets/images/profileScreen.PNG\" alt=\"Tela de Perfil\" width=\"300\"\u003e | \u003cimg src=\"./assets/images/profileModal.PNG\" alt=\"Editando o Perfil\" width=\"300\"\u003e |\n\n\n---\n\n## **Contextos**  \n\nPara facilitar a comunicação entre componentes, foram criados dois contextos:  \n\n1. **`authContext`**:  \n   - Gerencia e distribui informações do usuário, como nome, email, foto de perfil e saldo em conta.  \n\n2. **`historicContext`**:  \n   - Gerencia os itens cadastrados, incluindo:  \n     - Lista de itens.  \n     - Valor total.  \n     - Receita total.  \n     - Gasto total.  \n\n---\n\n## **Dependências**  \n\nAs principais dependências utilizadas são:  \n\n- **[`lucide-react-native`](https://github.com/lucide-icons/lucide-react-native)**: Para ícones.  \n- **[`styled-components`](https://styled-components.com/)**: Para estilização.  \n- **[`@react-navigation/native`](https://reactnavigation.org/)**: Para navegação.  \n- **[`@react-navigation/bottom-tabs`](https://reactnavigation.org/docs/bottom-tab-navigator/)**: Para navegação em abas.  \n- **[`@react-native-picker/picker`](https://github.com/react-native-picker/picker)**: Para criação de pickers.  \n- **[`@react-native-async-storage/async-storage`](https://github.com/react-native-async-storage/async-storage)**: Para salvar a sessão do usuário.  \n\n\n\n## **Funcionalidades futuras**  \n- Upload direto de imagens para o perfil.  \n- Gráficos para análise de gastos e receitas.  \n\n---\n\n## **📄 Licença**  \nEste projeto está sob a licença **MIT**. Sinta-se à vontade para usá-lo e contribuir!  \n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedromarques391%2Fmymoney","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpedromarques391%2Fmymoney","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpedromarques391%2Fmymoney/lists"}