Skip to content

feat: Integração com Google Calendar - sincronizar tasks com agenda #3

@orobsonn

Description

@orobsonn

Descrição

Permitir que o usuário sincronize tasks do O Ritual com seu Google Calendar, criando eventos na agenda automaticamente a partir de tasks específicas.

Problema

O usuário precisa gerenciar suas atividades em dois lugares: no app O Ritual e no Google Calendar. Seria muito mais prático poder criar uma task no Ritual e já ter isso refletido na agenda.

Solução Proposta

Funcionalidades

  1. Vincular conta Google

    • Autenticação OAuth com Google
    • Permissão para criar/editar eventos no Calendar
    • Opção de desvincular conta
  2. Sincronizar task individual

    • Botão/ícone na task para "Adicionar ao Google Calendar"
    • Ao clicar, criar evento no Calendar com:
      • Título da task
      • Data/horário (se especificado na task)
      • Link de volta para o app (opcional)
  3. Feedback visual

    • Indicador de que a task está sincronizada com o Calendar
    • Status de sincronização (sincronizado, pendente, erro)

Considerações Técnicas

  • Implementar OAuth 2.0 com Google
  • Usar Google Calendar API
  • Armazenar tokens de refresh de forma segura
  • Definir escopo mínimo necessário de permissões
  • Tratar casos de erro (token expirado, sem conexão, etc.)

UX/UI a definir

  • Melhor posicionamento do botão de sincronização na task
  • Fluxo de onboarding para vincular conta Google
  • Como lidar com tasks sem horário definido
  • Sincronização bidirecional? (eventos do Calendar -> tasks)

Critérios de Aceite

  • Usuário consegue vincular/desvincular conta Google
  • Usuário consegue enviar uma task para o Google Calendar
  • Evento criado no Calendar contém informações corretas
  • Indicador visual mostra status de sincronização
  • Tratamento de erros adequado

Análise de Viabilidade Necessária

Esta issue requer análise prévia de:

  • Custos da API do Google (limites de uso)
  • Complexidade de implementação do OAuth
  • Impacto na arquitetura atual do app
  • Requisitos de segurança para armazenamento de tokens

Prioridade

Média - Depende da issue de compromissos agendados (#XX) e requer análise de viabilidade

Relacionado

  • Depende de: Issue de compromissos agendados (para ter a estrutura base de datas/horários)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions