Skip to content

v3.0.0

Choose a tag to compare

@malinfossum malinfossum released this 24 Aug 10:52
· 48 commits to main since this release
370539a

Hugin v3.0.0 — the standalone release. Everything since v2.0.1: the v3 pivot plus the v3.1 polish wave.

Highlights

  • Single-file distribution: Hugin.exe is now one self-contained file — no .NET runtime install, the dashboard's frontend is embedded. Double-click and the browser opens on localhost.
  • Simpler tracking model: statuses are now active → applied → answered plus an independent ⭐ star. Existing databases migrate automatically (a .bak backup is written first).
  • Track from the dashboard: untracked companies get a Track button directly on their deadline rows.
  • Export, reworked: extract replaces export's old fixed shape — md/txt/json × new/category/all, and including active entries is now an opt-in (--include-active on the CLI, a checkbox in the dashboard).
  • Bilingual UI: full Norwegian/English dashboard with one segmented NO/EN switch, plus a dark/light theme toggle (dark default).

Dashboard

  • Fixed: the "Mark as seen" confirm dialog no longer renders permanently inline — it appears only when asked.
  • One date format everywhere: dd.MM.yyyy, in both languages.
  • Sources row in the header: Brønnøysundregisteret, NAV, FINN, LinkedIn — short labels, your configured links.
  • Deadline rows align date, days-left, and category in clean columns.
  • Company names display in Title Case (legal forms like AS/ASA/HF stay uppercase); raw register names are untouched in the database and exports.
  • Companies group hovedenhet + avdelinger into one expandable row, with filters for kommune, search, and "has own website" — and links sit on the row itself.
  • Views keep their state while you move around the app (filters, open detail, scroll); everything resets on restart.

Data & discovery

  • Websites from job ads: when the register has no (or a dead) website for an employer, Hugin adopts the one from the NAV ad detail and verifies it with the existing link checker. A healthy register website always wins.
  • Discovery scales: hugin.json now takes fylker (two-digit county codes) and allOfNorway alongside municipalities — Brreg queries are chunked per fylke, and NAV ads resolve municipalities through the full kommune register.
  • Dead links are still never rendered; every company always offers a working link (verified site, or Google/Proff.no search).

CLI & API

  • hugin.exe works fully standalone: sync, new, track, export, list.
  • The localhost API doubles as a machine interface for your own tooling — endpoint table in the README. Loopback-only; writes require the X-Hugin: 1 header (CSRF protection, not authentication).

Assets

  • hugin-v3.0.0-win-x64.ziphugin.exe (CLI) + hugin-api.exe (dashboard host) + frontend; requires the .NET 10 runtime.
  • hugin-v3.0.0-win-x64-single.zip — the self-contained single-file Hugin.exe; no runtime needed.

Both share a hugin.json beside the exe (see hugin.json.example); the database is created next to it on first sync.