En lokal desktop-app for registrering og rapportering av arbeidstid, bygget med Tauri og Next.js.
- Klokk inn/ut — start og stopp en økt med ett klikk
- Manuell registrering — legg til tidligere timer via baklogg-skjema
- Månedsoversikt — se alle registreringer gruppert per måned og uke
- Statistikk — ukentlige søylediagram, ukedagssnitt og månedstrender
- Tillegg — automatisk beregning av tillegg (kveld, natt, lørdag, søndag) basert på norske tariffavtaler
- Eksport — last ned måneder som JSON eller tekstfil, eller sett en eksportmappe for automatisk lagring
- Import — gjenopprett registreringer fra en tidligere eksportert JSON-fil
- Auto-backup — skriver daglig backup til eksportmappen ved oppstart
- Temaer — lys, mørk og systemtema
| Lag | Teknologi |
|---|---|
| Desktop-ramme | Tauri 2 |
| Frontend | Next.js 16 (App Router, statisk eksport) |
| Språk | TypeScript |
| UI-komponenter | shadcn/ui (base-ui) |
| Tilstandshandtering | Zustand 5 |
| Skjemaer | react-hook-form + Zod |
| Datobehandling | date-fns 4 |
| Persistens | tauri-plugin-store |
- Node.js 18+
- pnpm
- Rust (stabil)
- Tauri-avhengigheter for ditt OS — se Tauri-guiden
pnpm installStarter Next.js-dev-server og Tauri-vinduet samtidig:
pnpm tauri devpnpm tauri buildFerdig binærfil ligger i src-tauri/target/release/.
Data lagres lokalt via tauri-plugin-store i OS-appdata-mappen:
| OS | Bane |
|---|---|
| Linux | ~/.local/share/com.timerapportering.app/timerapportering.json |
| macOS | ~/Library/Application Support/com.timerapportering.app/timerapportering.json |
| Windows | %APPDATA%\Timerapportering\timerapportering.json |
Data overlever app-oppdateringer. For å sikre data mot tap ved avinstallering anbefales det å sette en eksportmappe i innstillinger — appen tar da daglig backup automatisk.
Se CONTRIBUTING.md for retningslinjer.