{"id":29027232,"url":"https://github.com/tiagom13/alert-app","last_synced_at":"2026-06-18T21:32:16.685Z","repository":{"id":299653117,"uuid":"999185692","full_name":"TiagoM13/alert-app","owner":"TiagoM13","description":null,"archived":false,"fork":false,"pushed_at":"2025-09-13T20:17:48.000Z","size":1517,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-13T21:36:46.557Z","etag":null,"topics":["expo","expo-sqlite","hook-form","nativewind","react-native","typescript","zod"],"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/TiagoM13.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-09T21:48:27.000Z","updated_at":"2025-09-13T20:17:51.000Z","dependencies_parsed_at":"2025-07-09T00:36:44.784Z","dependency_job_id":"d282a982-65c8-48bc-afce-a0b00f277c8c","html_url":"https://github.com/TiagoM13/alert-app","commit_stats":null,"previous_names":["tiagom13/alert-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TiagoM13/alert-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TiagoM13%2Falert-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TiagoM13%2Falert-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TiagoM13%2Falert-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TiagoM13%2Falert-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TiagoM13","download_url":"https://codeload.github.com/TiagoM13/alert-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TiagoM13%2Falert-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34508863,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","expo-sqlite","hook-form","nativewind","react-native","typescript","zod"],"created_at":"2025-06-26T06:05:05.924Z","updated_at":"2026-06-18T21:32:16.681Z","avatar_url":"https://github.com/TiagoM13.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AlertApp\n\nAlertApp é um aplicativo móvel (Android, iOS e Web) construído com o framework Expo, que permite aos usuários criar e gerenciar alertas com diferentes níveis de urgência, prioridade e agendamento. Ele oferece um sistema de autenticação local e armazena os dados do usuário e dos alertas em um banco de dados SQLite diretamente no dispositivo.\n\n## Estrutura do Projeto\n\nO projeto segue a convenção de roteamento baseada em arquivos do `expo-router`, organizando as telas em diretórios que representam a estrutura de navegação do aplicativo.\n\n*   `app/`: Contém todas as telas do aplicativo. A navegação é dividida em pilhas:\n    *   `(auth)`: Para as telas de autenticação, como login e criação de conta. O usuário é redirecionado para esta pilha se não estiver autenticado.\n    *   `(tabs)`: Para as telas principais do aplicativo, acessíveis via uma barra de navegação com abas.\n*   `database/`: Armazena a lógica de persistência de dados. O arquivo `database.ts` gerencia a conexão com o banco de dados SQLite e as operações CRUD (Create, Read, Update, Delete) para alertas e usuários.\n*   `context/`: Contém o gerenciamento de estado global, como o contexto de autenticação (`auth.tsx`).\n*   `components/`: Agrupa os componentes reutilizáveis da interface de usuário.\n*   `constants/`: Define variáveis de configuração e temas.\n\n## Tecnologias Utilizadas\n\nO projeto utiliza um conjunto robusto de bibliotecas para garantir um desenvolvimento rápido e eficiente:\n\n*   **Expo**: Um framework poderoso para criar aplicações universais em React Native.\n*   **Expo Router**: Gerencia o roteamento e a navegação da aplicação de forma declarativa e baseada em arquivos.\n*   **Expo SQLite**: Permite o armazenamento de dados localmente no dispositivo de forma eficiente.\n*   **React Native**: Para a construção da interface do usuário nativa.\n*   **NativeWind**: Utiliza a sintaxe do Tailwind CSS para estilização, facilitando a criação de layouts responsivos.\n*   **React Hook Form \u0026 Zod**: Gerencia formulários com validação de esquema de forma eficiente e tipada.\n*   **date-fns**: Biblioteca leve e poderosa para manipulação e formatação de datas.\n\n## Funcionalidades Atuais\n\n*   **Autenticação e Registro**: Permite que usuários criem uma conta e façam login, com os dados persistidos no banco de dados local.\n*   **Gerenciamento de Alertas**: Os usuários podem criar, editar e excluir alertas, definindo informações essenciais como título, descrição, tipo, prioridade e um agendamento opcional.\n*   **Visualização de Alertas**:\n    *   A tela inicial exibe de forma clara os alertas pendentes.\n    *   A tela de histórico mostra todos os alertas criados e permite filtrá-los por tipo para uma melhor organização.\n*   **Ações do Usuário**: É possível marcar alertas como concluídos ou excluí-los com um gesto intuitivo de deslizar na lista.\n*   **Notificações Ativas**: O aplicativo verifica ativamente o banco de dados para alertas agendados e os marca como \"atrasados\" quando a data/hora agendada é ultrapassada, garantindo que o usuário esteja ciente de compromissos perdidos.\n\n## Configuração do Projeto\n\nPara configurar e executar o AlertApp localmente, siga os passos abaixo:\n\n1.  **Instalar dependências:**\n    ```bash\n    npm install\n    ```\n2.  **Iniciar o aplicativo:**\n    ```bash\n    npx expo start\n    ```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiagom13%2Falert-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiagom13%2Falert-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiagom13%2Falert-app/lists"}