Imagem do seu desafio

Descrição

Relay — Descrição do Produto

A Relay é uma ferramenta de produtividade para desktop que centraliza busca, comandos e ações recorrentes em uma única interface, permitindo que o usuário execute tarefas sem precisar alternar constantemente entre aplicativos.

O produto é baseado em uma experiência keyboard-first, com uma busca universal capaz de localizar comandos, documentos, configurações e trabalhos recentes. A proposta é reduzir o atrito entre a intenção do usuário e a execução da tarefa.

Entre os principais recursos estão:

  • Busca universal por comandos, aplicativos, arquivos e informações.

  • Execução de ações por atalhos de teclado.

  • Integração com ferramentas e serviços utilizados pelo usuário.

  • Fluxos para planejamento, busca e execução de tarefas.

  • Busca em linguagem natural.

  • Captura rápida de ideias e notas.

  • Agendamento de ações e blocos de foco.

  • Interface responsiva e orientada à produtividade.

A experiência deve transmitir velocidade, simplicidade e previsibilidade, evitando interfaces complexas e reduzindo a necessidade de utilizar o mouse.

A Relay não pretende substituir todas as ferramentas existentes, mas funcionar como uma camada de comando sobre elas, permitindo que o usuário encontre informações e execute ações rapidamente a partir de um único ponto de entrada.

O produto apresentado atualmente é um protótipo conceitual destinado à validação da experiência e do modelo de interação.

Briefing

Relay — Briefing de Desenvolvimento

Objetivo

Desenvolver uma aplicação desktop de produtividade inspirada em ferramentas como launchers e command palettes, com foco em busca universal, automação de tarefas e interação por teclado.

A aplicação deve funcionar como uma camada centralizada para acessar informações e executar ações em diferentes serviços e ferramentas utilizadas pelo usuário.

Experiência principal

O fluxo principal deve ser:

Atalho de teclado → busca/comando → seleção da ação → execução → feedback do resultado

A interface precisa ser extremamente rápida e minimalista, priorizando teclado em vez de mouse.

Funcionalidades principais

1. Command Palette

Criar uma interface de busca universal que permita pesquisar:

  • Comandos disponíveis.

  • Aplicativos.

  • Arquivos.

  • Documentos.

  • Projetos recentes.

  • Configurações.

  • Ações de serviços integrados.

A busca deve aceitar linguagem natural sempre que possível.

Exemplos:

  • encontrar documento de lançamento

  • iniciar foco

  • agendar bloco de foco

  • capturar ideia

2. Atalhos

Implementar navegação completa por teclado:

  • Abrir a palette.

  • Navegar pelos resultados com ↑/↓.

  • Executar com Enter.

  • Fechar com Esc.

  • Atalhos específicos para ações recorrentes.

3. Sistema de comandos

Cada ação deve possuir uma estrutura padronizada, permitindo adicionar novos comandos sem alterar a interface principal.

Exemplo conceitual:

Command
├── id
├── name
├── description
├── icon
├── keywords
├── shortcut
├── category
└── execute()

O sistema deve ser extensível para permitir integrações futuras.

4. Integrações

Criar uma arquitetura baseada em providers/integrations.

Cada integração deve poder disponibilizar seus próprios comandos.

Exemplo:

Calendar
├── listar eventos
├── criar evento
└── encontrar próximo compromisso

Notes
├── criar nota
└── pesquisar notas

Files
├── pesquisar arquivos
└── abrir arquivo

5. Fluxos

A aplicação deve possuir três grupos principais de uso:

Planejar

  • Visualizar eventos.

  • Consultar tarefas.

  • Revisar notas.

  • Identificar próxima ação.

Encontrar

  • Pesquisar documentos.

  • Pesquisar pessoas.

  • Pesquisar projetos.

  • Pesquisar arquivos.

Agir

  • Executar tarefas.

  • Agendar ações.

  • Criar notas.

  • Atualizar informações.

6. Histórico e contexto

Registrar ações e itens acessados recentemente para permitir:

  • Projetos recentes.

  • Comandos utilizados recentemente.

  • Documentos recentes.

  • Sugestões contextuais.

  • Repetição rápida de ações.

Interface

A interface deve seguir uma estética de produtividade moderna:

  • Minimalista.

  • Alto contraste.

  • Tipografia limpa.

  • Poucos elementos visuais.

  • Feedback imediato.

  • Animações discretas.

  • Forte hierarquia visual.

  • Experiência consistente entre diferentes comandos.

A command palette deve ser o principal elemento da aplicação.

Arquitetura

A arquitetura deve priorizar modularidade.

Separar principalmente:

Core
├── Command Engine
├── Search Engine
├── Shortcut Manager
├── History
└── Context

Integrations
├── Calendar
├── Files
├── Notes
└── Future Providers

UI
├── Command Palette
├── Results
├── Command Detail
├── History
└── Settings

Novas integrações devem poder ser adicionadas sem modificar significativamente o core da aplicação.

Requisitos não funcionais

  • Inicialização rápida.

  • Baixa utilização de memória em idle.

  • Resposta imediata aos comandos.

  • Navegação completa por teclado.

  • Arquitetura preparada para novas integrações.

  • Tratamento de erros sem interromper o fluxo.

  • Feedback visual claro após cada ação.

  • Interface responsiva para diferentes tamanhos de janela.

MVP

A primeira versão funcional deve priorizar:

  1. Command Palette.

  2. Sistema de comandos extensível.

  3. Busca.

  4. Atalhos globais.

  5. Histórico.

  6. Sistema de integrações.

  7. Pelo menos três integrações simuladas/funcionais.

  8. Execução de comandos.

  9. Feedback de sucesso/erro.

  10. Configurações básicas.

O objetivo do MVP é validar se a experiência de "pensar → comandar → executar" é realmente mais rápida e conveniente do que utilizar individualmente cada aplicativo.

Progressão

Você ganhará 20 pontos com a conclusão deste projeto. Entre ou crie agora sua conta.

Avaliação

0 de 5

Média das avaliações das soluções publicadas.