Guias

Como Criar um App de Controle de Horas: Cronômetros, Folhas de Ponto e Relatórios

Um app de controle de horas registra quem trabalhou em quê, por quanto tempo e se esse tempo pode ser cobrado. Para criar um, você precisa de clientes e projetos para registrar o tempo, um cronômetro que sobreviva a uma aba fechada, uma forma de adicionar e corrigir lançamentos à mão, uma folha de ponto semanal e relatórios que transformem os lançamentos brutos em totais. Um construtor de apps com IA consegue produzir uma primeira versão funcional a partir de um prompt claro. As decisões que importam são sobre regras: arredondamento, quem pode editar o quê, quando uma semana é travada e o que é faturável.

Decida para que você vai usar o controle de horas

O mesmo app parece diferente conforme o motivo por trás dele:

  • Cobrar clientes. Horas por cliente, um valor por hora para cada pessoa ou projeto e uma exportação limpa para as faturas. Precisão e trilha de auditoria importam mais.
  • Folha de pagamento de funcionários por hora. Entrada e saída, pausas, regras de horas extras e aprovação de um gestor. Valem as leis trabalhistas locais, então confira quais registros você é obrigado a manter.
  • Entender para onde vai o tempo. Visão pessoal ou de equipe, estimativas versus o realizado. Velocidade de lançamento importa mais do que fluxos de aprovação.

Escolha um como trabalho principal para a versão inicial. O controle de um freelancer para cobrança e o relógio de ponto de um armazém compartilham um cronômetro e pouco mais do que isso.

O que o app precisa

Dados

TabelaCampos principais
ClientesNome, valor por hora padrão, ativo sim/não
ProjetosCliente, nome, orçamento em horas (opcional), faturável por padrão sim/não
Tarefas ou categoriasProjeto, nome (design, reuniões, suporte) — opcional no início
Lançamentos de tempoPessoa, projeto, tarefa, horário de início, horário de fim, duração, observação, faturável sim/não, status (rascunho, enviado, aprovado), faturado sim/não
PessoasNome, e-mail, papel, valor de custo ou valor de cobrança

Guarde o horário de início e o de fim em cada lançamento e derive a duração deles. Lançamentos digitados como “2h 15min” sem horários podem guardar só a duração, mas mantenha a data.

Páginas

  • Cronômetro e hoje: um grande botão de iniciar/parar, um seletor de projeto e os lançamentos de hoje logo abaixo.
  • Visão semanal: uma grade com projetos na vertical e dias na horizontal, onde as pessoas digitam as horas diretamente. Muitas preferem isso a cronômetros.
  • Relatórios: horas por cliente, projeto e pessoa em um período, com a divisão entre faturável e não faturável, e exportação em CSV.
  • Administração: gerenciar clientes, projetos, pessoas e valores.

Permissões

Defina antes de construir quem pode fazer o quê:

  • As pessoas veem e editam os próprios lançamentos.
  • Gestores veem os lançamentos da equipe e aprovam semanas.
  • Só administradores alteram valores, e idealmente só administradores os veem.
  • Ninguém edita um lançamento depois de aprovado ou faturado, a não ser que um administrador reabra.

Essa última regra é o que torna os relatórios confiáveis. Nosso guia sobre como adicionar login ao seu app cobre a parte de acesso, e controle de acesso baseado em papéis cobre os papéis.

Decisões e trade-offs

Cronômetro, lançamento manual ou os dois

Cronômetros são precisos quando as pessoas lembram de iniciá-los, o que nem sempre acontece. Lançamento manual é rápido para quem preenche a semana na sexta. A maioria das equipes precisa dos dois, e de uma forma de editar um lançamento de cronômetro depois. Se for construir só um, construa a grade semanal: é mais simples e cobre o caso de ter esquecido de iniciar.

Onde fica o cronômetro em andamento

Um cronômetro que conta no navegador perde tudo quando a aba fecha. Salve o horário de início no banco de dados quando a pessoa apertar iniciar, e mostre o tempo decorrido subtraindo esse horário de agora. Assim o cronômetro continua rodando entre atualizações, notebooks e celulares. Decida se uma pessoa pode ter dois cronômetros ao mesmo tempo. Normalmente a resposta é não: iniciar um novo para o antigo.

Arredondamento

Regras comuns são arredondar cada lançamento para cima, até 6, 15 ou 30 minutos. Mantenha os horários exatos no banco de dados e aplique o arredondamento só em relatórios e faturas. Mostre os dois números nos relatórios para que ninguém se surpreenda.

Travamento e aprovações

Sem travamento, as horas de um mês que já foi cobrado podem mudar depois que a fatura saiu. Um modelo simples: as pessoas enviam uma semana, um gestor aprova, e os lançamentos aprovados viram somente leitura. Se você fatura pelo app, marque os lançamentos como faturados para que não sejam cobrados duas vezes.

Fusos horários e meia-noite

Guarde os horários em UTC e mostre-os no fuso horário da pessoa. Decida a qual dia pertence um lançamento que vai das 23h às 01h. A resposta usual é o dia em que começou.

Um primeiro prompt que funciona

Crie um app de controle de horas para um estúdio de design com seis pessoas. Dados: clientes (nome, valor por hora), projetos (cliente, nome, horas de orçamento) e lançamentos de tempo (pessoa, projeto, início, fim, observação, faturável sim/não, status rascunho/enviado/aprovado). Páginas: uma página Hoje com um cronômetro de iniciar/parar e seletor de projeto que salva o horário de início no banco de dados, para que o cronômetro sobreviva a uma atualização; uma página Semana com os projetos nas linhas e de segunda a domingo nas colunas, onde as pessoas podem digitar as horas diretamente; uma página de Relatórios mostrando horas por cliente, projeto e pessoa em um período, divididas em faturável e não faturável, com exportação em CSV; e uma página de Administração para clientes, projetos e pessoas. Só um cronômetro pode rodar por pessoa. Lançamentos aprovados não podem ser editados. Guarde os horários em UTC e mostre-os no fuso horário do usuário. Design limpo, rápido e fácil de usar pelo teclado.

Etapas de criação

  1. Projetos e lançamentos manuais primeiro. Clientes, projetos, um formulário para adicionar um lançamento e uma lista. Garanta que os totais batem.
  2. Cronômetro. Iniciar, parar, um cronômetro por pessoa, horário de início salvo. Teste iniciando um cronômetro, fechando a aba e reabrindo.
  3. Grade semanal. Digitar horas em uma célula cria ou atualiza um lançamento.
  4. Login e papéis. Adicione antes de pessoas reais usarem, para que ninguém veja valores ou os lançamentos de outras pessoas por acidente.
  5. Enviar e aprovar. Envio semanal, aprovação do gestor, somente leitura depois de aprovado.
  6. Relatórios e exportação. Período, agrupamento, divisão faturável, CSV.
  7. Valores e ganchos de faturamento, se você cobra clientes. Mantenha a criação de faturas em uma etapa ou app separado; veja como criar um app de faturamento.
  8. Teste os casos extremos. Um lançamento que atravessa a meia-noite, uma semana com horário de verão, dois cronômetros iniciados em dois dispositivos, editar um lançamento aprovado.

Erros comuns

  • Contar o tempo só no navegador. Funciona na demonstração e perde horas no uso real.
  • Arredondar valores guardados. Você nunca mais recupera o horário exato.
  • Nenhum travamento de semanas aprovadas. Os relatórios deixam de bater com as faturas.
  • Todos verem os valores de todos. Oculte os valores por papel desde o primeiro dia.
  • Campos obrigatórios demais. Se registrar tempo leva mais do que alguns segundos, as pessoas param de fazê-lo, e os dados viram ficção. Deixe tarefa e observação opcionais no início.
  • Construir um gerenciador de projetos completo dentro do controle de horas. Mantenha os projetos como rótulos simples. Se precisar de tarefas, quadros e prazos, isso é uma ferramenta de gestão de projetos, uma construção separada.

Quando um controle de horas pronto é a melhor escolha

Se sua equipe precisa de cronômetro, visão semanal e relatórios, produtos dedicados a controle de horas já fazem isso bem. Eles também trazem coisas que dão trabalho de construir: apps de desktop e celular, detecção de inatividade, integrações com calendário e outras ferramentas e lembretes para preencher as folhas de ponto. Para folha de pagamento por hora, uma ferramenta feita para isso lida com pausas, horas extras e registros de forma mais segura do que um app personalizado de primeira versão.

Crie o seu quando suas regras não se encaixam, quando você quer horas ligadas a dados que já mantém (trabalhos, ordens de serviço, retainers, faturas), quando o preço por assento pesa para uma equipe grande ou quando o controle de horas é uma parte de uma ferramenta interna maior. Nosso guia sobre construir ou comprar software mostra o trade-off, e se suas horas hoje ficam em uma planilha compartilhada, veja como transformar uma planilha em app.

Criando com a Mythex

Na Mythex você descreve o controle de horas no chat e o agente o constrói em um preview ao vivo. Ele adiciona um banco de dados Postgres dedicado quando os lançamentos precisam ser salvos, e você pode pedir isso diretamente ou digitar /database. O caso de uso de ferramenta interna na documentação sugere escolher um passo doloroso para a versão inicial, o que se encaixa aqui: comece com os lançamentos e a grade semanal, depois adicione cronômetros e aprovações.

O login para sua equipe é algo que você adiciona com sua própria abordagem de autenticação (receita de adicionar login). As contas da Mythex são para quem constrói, não para quem usa o seu app. Quando o fluxo principal funcionar, /test faz o agente clicar pelo preview (iniciar um cronômetro, adicionar um lançamento, gerar um relatório) e relatar o que quebra. Para um ponto de partida visual, veja os templates de apps.

Perguntas

Quais recursos um app de controle de horas precisa?

Uma lista de clientes e projetos, um cronômetro de iniciar e parar, uma forma de adicionar ou corrigir lançamentos à mão, uma visão semanal da folha de ponto e um relatório de horas por projeto e por pessoa. Aprovações, valores por hora faturáveis e exportações vêm depois.

Como impedir que o cronômetro perca tempo quando o navegador fecha?

Salve o horário de início no banco de dados no momento em que o cronômetro começa, e calcule a duração em andamento a partir desse horário salvo. Assim, fechar a aba, atualizar a página ou trocar de dispositivo não faz perder nada.

O tempo deve ser arredondado?

Guarde os horários exatos de início e fim e aplique o arredondamento só em relatórios e faturas. Assim você pode mudar a regra de arredondamento depois sem reescrever o histórico.

Vale a pena criar meu próprio controle de horas?

Geralmente só se suas regras forem incomuns ou se você quiser vincular as horas a outros dados que já guarda, como serviços, clientes ou faturas. Para cronômetros e relatórios simples, um controle de horas pronto é mais barato e mais rápido.

Mythex · Pricing · Crie qualquer coisa com IA · Templates de sites e apps · Mythex comparado · Glossário de criação de apps com IA · Ferramentas grátis para criar apps com IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)