```meta
title: @timer — um cronômetro ou um pomodoro
description: Começa num clique, pausa e retoma, e ao terminar grava uma linha numa coleção: a tarefa, quando começou e quantos minutos durou.
```

_flows.md · documentação · [Blocos](/@docs/blocks)_

# @timer

Um relógio que anda quando o leitor aperta Começar: um cronômetro que conta para cima, ou um pomodoro que conta para baixo e termina sozinho. Pausa e retoma, e sobrevive a um recarregar da página.

## Ao vivo

Sem coleção, ele só conta — para a cozinha, uma prova, um treino.

```@timer mode:pomodoro minutes:25 break:5
```

~~~text
```@timer mode:pomodoro minutes:25 break:5
```
~~~

## Guardando as sessões

Com `collection:`, cada sessão concluída vira uma linha — a tarefa, quando começou e quantos minutos o relógio andou (sem as pausas) — pela mesma porta de um [@form](/@docs/blocks/form): quem não pode enviar o formulário dessa coleção também não grava sessões.

~~~text
```@schema collection:sessoes accepts:members
task text
started datetime
minutes number
```

```@timer collection:sessoes mode:pomodoro minutes:50
```
~~~

Um [@data](/@docs/blocks/data) da mesma coleção, na mesma página, mostra as sessões à medida que chegam.

## Argumentos

- `collection` — onde cada sessão vira uma linha. Sem ele, o bloco só conta.
- `mode` — `stopwatch` (o padrão, conta para cima até Concluir) ou `pomodoro` (conta para baixo e termina sozinho).
- `minutes` — a duração do pomodoro, de 1 a 240 (padrão 25).
- `break` — a pausa depois de um pomodoro, de 1 a 60.
- `task` — a tarefa, fixa. Sem ele, o leitor escreve a tarefa acima do relógio.
- `fields` — outros nomes para os três campos, nesta ordem: tarefa, início, minutos.
- `scope:viewer` — como no @form: o leitor entra na conta e a linha fica com o nome dele.

Uma sessão de menos de meio minuto não grava nada.
