Guias

Como criar uma app de registo de tempo: cronómetros, folhas de horas e relatórios

Uma app de registo de tempo regista quem trabalhou em quê, durante quanto tempo, e se esse tempo pode ser faturado. Para criar uma, precisa de clientes e projetos aos quais associar o tempo, de um cronómetro que sobreviva a um separador fechado, de uma forma de acrescentar e corrigir registos à mão, de uma folha de horas semanal e de relatórios que transformem os registos em totais. Um criador de apps com IA consegue produzir uma primeira versão a funcionar a partir de um prompt claro. As decisões que realmente importam são as regras: arredondamento, quem pode editar o quê, quando uma semana fica bloqueada e o que conta como faturável.

Decida para que está a registar o tempo

A mesma app parece diferente consoante a razão por trás dela:

  • Faturar clientes. Horas por cliente, uma taxa por pessoa ou projeto e uma exportação limpa para as faturas. A precisão e um registo de auditoria são o mais importante.
  • Processamento de salários de trabalhadores à hora. Entrada e saída, pausas, regras de horas extra e aprovação por um responsável. Aplicam-se as leis laborais locais, por isso verifique que registos é obrigado a manter.
  • Perceber para onde vai o tempo. Perceção pessoal ou de equipa, estimativas versus tempo real. A rapidez de registo pesa mais do que os fluxos de aprovação.

Escolha uma como trabalho principal para a primeira versão. Um registador de tempo para um freelancer e um relógio de turnos para um armazém partilham um cronómetro e muito pouco mais.

O que a app precisa

Dados

TabelaCampos principais
ClientesNome, taxa horária predefinida, ativo sim/não
ProjetosCliente, nome, orçamento em horas (opcional), faturável por predefinição sim/não
Tarefas ou categoriasProjeto, nome (design, reuniões, apoio) — opcional no início
Registos de tempoPessoa, projeto, tarefa, hora de início, hora de fim, duração, nota, faturável sim/não, estado (rascunho, submetido, aprovado), faturado sim/não
PessoasNome, email, função, taxa de custo ou taxa de faturação

Guarde a hora de início e a hora de fim em cada registo e calcule a duração a partir delas. Registos introduzidos como “2h 15m” sem horas podem guardar só a duração, mas mantenha uma data.

Páginas

  • Cronómetro e hoje: um botão grande de iniciar/parar, um seletor de projeto e os registos de hoje por baixo.
  • Vista semanal: uma grelha com os projetos na vertical e os dias na horizontal, onde as pessoas escrevem as horas diretamente. Muitas preferem isto aos cronómetros.
  • Relatórios: horas por cliente, projeto e pessoa num intervalo de datas, com a divisão entre faturável e não faturável, e exportação para CSV.
  • Administração: gerir clientes, projetos, pessoas e taxas.

Permissões

Defina antes de construir quem pode fazer o quê:

  • As pessoas veem e editam os seus próprios registos.
  • Os responsáveis veem os registos da equipa e aprovam as semanas.
  • Só os administradores alteram as taxas, e, idealmente, só os administradores as veem.
  • Ninguém edita um registo depois de aprovado ou faturado, a menos que um administrador reabra o registo.

Esta última regra é o que torna os relatórios fiáveis. O nosso guia sobre como acrescentar login à sua app cobre o lado do início de sessão, e o controlo de acesso baseado em funções cobre as funções.

Decisões e compromissos

Cronómetro, registo manual ou os dois

Os cronómetros são precisos quando as pessoas se lembram de os iniciar, o que nem sempre acontece. O registo manual é rápido para quem preenche a semana na sexta-feira. A maioria das equipas precisa dos dois, e de uma forma de editar um registo de cronómetro depois de feito. Se só construir uma opção, construa a grelha semanal: é mais simples e cobre o caso de “esqueci-me de iniciar”.

Onde vive o cronómetro em curso

Um cronómetro que conta no navegador perde tudo quando o separador fecha. Guarde a hora de início na base de dados quando alguém carrega em iniciar, e mostre o tempo decorrido subtraindo essa hora da hora atual. O cronómetro continua a correr entre atualizações, portáteis e telemóveis. Decida se uma pessoa pode ter dois cronómetros em simultâneo. Normalmente a resposta é não: iniciar um novo para o anterior.

Arredondamento

As regras comuns são arredondar cada registo para cima, ao múltiplo de 6, 15 ou 30 minutos. Guarde as horas exatas na base de dados e aplique o arredondamento apenas nos relatórios e nas faturas. Mostre os dois números nos relatórios para que ninguém se surpreenda.

Bloqueio e aprovações

Sem bloqueio, as horas já faturadas do mês passado podem mudar depois de a fatura ter sido enviada. Um modelo simples: as pessoas submetem uma semana, um responsável aprova-a e os registos aprovados ficam só de leitura. Se faturar a partir da app, marque os registos como faturados para não serem cobrados duas vezes.

Fusos horários e meia-noite

Guarde as horas em UTC e mostre-as no fuso horário da pessoa. Decida a que dia pertence um registo que vai das 23:00 às 01:00. A resposta habitual é o dia em que começou.

Um primeiro prompt que funciona

Crie uma app de registo de tempo para um estúdio de design com seis pessoas. Dados: clientes (nome, taxa horária), projetos (cliente, nome, horas orçadas) e registos de tempo (pessoa, projeto, início, fim, nota, faturável sim/não, estado rascunho/submetido/aprovado). Páginas: uma página Hoje com um cronómetro de iniciar/parar e um seletor de projeto que guarda a hora de início na base de dados, para que o cronómetro sobreviva a uma atualização; uma página Semana com os projetos como linhas e de segunda a domingo como colunas, onde as pessoas podem escrever as horas diretamente; uma página de Relatórios com as horas por cliente, projeto e pessoa num intervalo de datas, divididas entre faturável e não faturável, com exportação para CSV; e uma página de Administração para clientes, projetos e pessoas. Só pode correr um cronómetro por pessoa. Os registos aprovados não podem ser editados. Guarde as horas em UTC e mostre-as no fuso horário do utilizador. Design limpo, rápido e fácil de usar com teclado.

Passos de construção

  1. Projetos e registos manuais primeiro. Clientes, projetos, um formulário para acrescentar um registo e uma lista. Confirme que os totais batem certo.
  2. Cronómetro. Iniciar, parar, um cronómetro ativo por pessoa, hora de início guardada. Teste iniciando um cronómetro, fechando o separador e voltando a abri-lo.
  3. Grelha semanal. Escrever horas numa célula cria ou atualiza um registo.
  4. Login e funções. Acrescente-os antes de pessoas reais usarem a app, para que ninguém veja taxas ou registos de outras pessoas por acidente.
  5. Submeter e aprovar. Submissão semanal, aprovação pelo responsável e apenas leitura após a aprovação.
  6. Relatórios e exportação. Intervalo de datas, agrupamento, divisão faturável e CSV.
  7. Taxas e ganchos de faturação, se faturar clientes. Mantenha a criação de faturas num passo ou numa app separada; veja como criar uma app de faturação.
  8. Teste os casos limite. Um registo que atravessa a meia-noite, uma semana com mudança de hora, dois cronómetros iniciados a partir de dois dispositivos, a edição de um registo aprovado.

Erros comuns

  • Contar o tempo só no navegador. Funciona na demonstração e perde horas em uso real.
  • Arredondar valores guardados. Nunca mais consegue recuperar a hora exata.
  • Não bloquear semanas aprovadas. Os relatórios deixam de bater certo com as faturas.
  • Todos verem as taxas de todos. Oculte as taxas por função desde o início.
  • Campos obrigatórios em excesso. Se registar tempo demorar mais do que alguns segundos, as pessoas deixam de o fazer e os dados tornam-se ficção. Deixe a tarefa e a nota opcionais no início.
  • Construir um gestor de projetos completo dentro do registador. Mantenha os projetos como simples etiquetas. Se precisar de tarefas, quadros e prazos, isso é uma ferramenta de gestão de projetos, um projeto à parte.

Quando um registador pronto é a melhor escolha

Se a sua equipa precisa de um cronómetro, de uma vista semanal e de relatórios, os produtos de registo de tempo dedicados já fazem isto bem. Trazem também coisas que dão muito trabalho a construir: apps para computador e telemóvel, deteção de inatividade, integrações com calendário e outras ferramentas, e lembretes para preencher as folhas de horas. Para processamento de salários à hora, uma ferramenta feita para isso trata das pausas, das horas extra e dos registos de forma mais segura do que uma app personalizada de primeira versão.

Construa a sua própria quando as suas regras não encaixarem, quando quiser as horas ligadas a dados que já mantém (trabalhos, ordens de serviço, avenças, faturas), quando o preço por lugar numa equipa grande começar a pesar ou quando o registo de tempo for uma parte de uma ferramenta interna maior. O nosso guia sobre criar contra comprar software percorre o compromisso, e se as suas horas estiverem numa folha partilhada, veja como transformar uma folha de cálculo numa app.

Como fazer isto com a Mythex

Na Mythex descreve o registador no chat e o agente constrói-o numa pré-visualização em direto. Acrescenta uma base de dados Postgres dedicada quando os registos precisam de ser guardados, e pode pedir isso diretamente ou escrever /database. O caso de utilização de ferramenta interna na documentação sugere escolher um passo doloroso para a primeira versão, o que encaixa aqui: comece pelos registos e pela grelha semanal, e depois acrescente cronómetros e aprovações.

O login para a sua equipa é algo que acrescenta com a sua própria abordagem de autenticação (receita de adicionar login). As contas da Mythex são para quem constrói, e não para quem usa a sua app. Quando o fluxo principal funcionar, /test faz com que o agente percorra a pré-visualização (iniciar um cronómetro, acrescentar um registo, gerar um relatório) e diga o que falha. Para um ponto de partida visual, veja os modelos de apps.

Perguntas

Que funcionalidades precisa uma app de registo de tempo?

Uma lista de clientes e projetos, um cronómetro de iniciar/parar, uma forma de acrescentar ou corrigir registos à mão, uma vista semanal de folha de horas e um relatório de horas por projeto e por pessoa. As aprovações, as taxas faturáveis e as exportações vêm a seguir.

Como evito que um cronómetro perca tempo quando o navegador fecha?

Guarde a hora de início na base de dados no momento em que o cronómetro arranca e calcule a duração em curso a partir dessa hora guardada. Assim, fechar o separador, atualizar a página ou mudar de dispositivo não faz perder nada.

O tempo deve ser arredondado?

Guarde as horas de início e de fim exatas e aplique o arredondamento apenas nos relatórios e nas faturas. Assim pode mudar a regra de arredondamento mais tarde sem reescrever o histórico.

Vale a pena criar o meu próprio registador de tempo?

Normalmente só se as suas regras forem invulgares ou se quiser ligar as horas a outros dados que já guarda, como trabalhos, clientes ou faturas. Para cronómetros e relatórios simples, um registador existente é mais barato e mais rápido.

Mythex · Pricing · Crie qualquer coisa com IA · Modelos 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 (Brasil) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)