Releases: rashedulhasansojib/timetrack-app
Release list
v0.6.1 — pilot
Two fixes for the pilot.
Tracking silently never starting at login. The client resolved its policy exactly once per launch. Registered as a login item, it starts while the network is still coming up, so that one fetch was the one most likely to fail — and the failure was swallowed. In auto mode that left a client that looked entirely normal (signed in, ready, indicator idle) and never tracked again for the whole session.
The policy resolve is now retried on capped backoff (30s → 5m) until tracking installs, plus an immediate attempt on wake. If it still hasn't started after several attempts, a reminder card appears offering to start tracking.
The Keep button only took clicks on its text. On the away prompt, the outlined button drew only a 1px border, so its interior was transparent to the mouse. The same defect sat on Discard in the recovery prompt. Both now take clicks across their full width.
Update in place from the app's menu, or download below.
v0.6.0 — pilot
Updates from v0.5.1. The app updates itself — you'll be prompted next time it checks.
The timer stops when you walk away. It used to keep counting through an away window and
keep that time unless you came back and discarded it — so a Mac left awake overnight, or over a
weekend, recorded the whole thing as worked. Now inactivity stops the timer at your team's idle
threshold, and the minutes up to that point stay on the entry as idle. Start it again when you
sit back down. Sleep and screen lock stop it where your input stopped.
The menu bar tells the truth about automatic tracking. On teams with auto-start, the
indicator sat on "idle" for an entire tracked span and never showed the clock running. It follows
every automatic start and stop now.
The app opens at login on teams with auto-start switched on — it can't start tracking on a
Mac that never opened it. It appears in System Settings › General › Login Items like any other
login item, and if you switch it off there it stays off.
A global start/stop shortcut: ⌥⌘T, without opening the dropdown.
Say what you're working on. A note on the running entry, typed any time, applied to the
entry you're on without splitting it.
See what's still waiting to sync in the dropdown, so a queue that isn't draining is visible
rather than silent.
Switching project mid-session re-files the time correctly. The switch used to file the whole
span — before and after — under the previous project.
SHA-256 of NiftyTimer-pilot.zip:
32ed9fd2080d80e73aebfa03d95bfcd62fd49c28e733c8b573285f67e3d94995
v0.5.1 — pilot
Updates from v0.5.0. The app updates itself — you'll be prompted next time it checks.
You can see the password you're typing. Sign-in now has a reveal button, so a typo shows
up before the failed attempt does.
The dropdown shows which build you're running, at the bottom between Sign Out and Quit.
Handy when reporting a problem — and a development build now labels itself, so it can't be
mistaken for the real one.
The setup screen wears the Nifty Timer mark instead of a generic clock icon.
SHA-256 of NiftyTimer-pilot.zip:
76f6f45995f64fa292484ff222e4ee72eaa333caa4026c007b6489611107199e
v0.5.0 — pilot
Updates from v0.4.1. The app updates itself — you'll be prompted next time it checks.
Screenshots now cover every monitor. A two-screen desk is recorded as two frames of the
same moment, grouped together, instead of whichever screen happened to be primary.
Your totals are in the menu bar. Today, this week and this month, under the recording
section, ticking live while the clock runs.
The dropdown stays put. It no longer jumps to the left of the screen when you move the
mouse away over a fullscreen app.
Clearer keep-or-discard prompts when time is recovered or you've been away.
Your project selection is remembered — per person, restored on launch, and validated
against the current project list.
Fixes: a signed-out session no longer leaves the previous user's prompt on screen; a transient
network failure no longer signs you out; interrupted time now defaults to Keep.
Dev builds keep their own state, so running one alongside the release no longer disturbs it.
SHA-256 of NiftyTimer-pilot.zip:
e8fb71d3d072a32da82c9910523d866d3181233a309ff146782dbd9207d0dd99
v0.4.1 — pilot
A small follow-up to 0.4.0: the app now notices new releases sooner.
Changed
- Update checks now also happen when you open the menu bar dropdown, not only on a six-hour timer. Previously a release published shortly after your app started could go unnoticed for most of a day. Checks are limited to once every 30 minutes so opening and closing the menu can't hammer the service.
Installing an update still requires a click, and still never happens on its own — the swap restarts the app, and that should be your choice, not ours.
Note
This improvement only applies from this build onward. If you are on 0.4.0 or older, this release will still take up to six hours to appear — or reopen the app to see it right away.
Coming from 0.3.x?
You do not need to install 0.4.0 first. Updates are whole replacements, not chained patches, so this build takes you straight to current. See the 0.4.0 notes for the distraction-nudge changes, including the one that matters: if your team has "Distraction alerts" switched off, nudges stop — they used to fire regardless of the switch.
Installing
Open the menu bar dropdown and click Update to 0.4.1. The download is checked against its published checksum and against the app's own signing identity before anything is replaced, so your existing permissions carry over.
v0.4.0 — pilot
Distraction nudges now work the way the settings page describes them.
Fixed
- The "Distraction alerts" switch had no effect. The app never read it, so the toggle did nothing in either direction. It is now honored.
- The nudge threshold was fixed at 10 minutes and could not be changed. Admins can now set it (Settings → Distraction threshold, 1–60 minutes).
New
- Settings apply without a restart. Productive/unproductive app and site lists, window-title capture, and all three distraction settings now reach a running app on its next activity sample (≤60s). Previously they only took effect after quitting and reopening.
- A denied Automation permission is now visible. Website rules (e.g.
youtube.com) match against the front browser's current site, which needs Automation permission. Without it those rules silently never matched. The menu bar now shows⚠️ with a tooltip pointing at the right Settings pane. - The browser is left alone when no site rules exist. If your team categorizes only apps, the app no longer reads the browser's address at all.
Please read before updating
If your team's Distraction alerts switch is off, nudges will stop after this update. They were firing regardless of the switch before; now the switch is respected. Turn it on in Settings if you want them.
The distraction threshold field needs the server side deployed before it can be changed; until then it stays at 10 minutes.
How nudges work
A nudge fires after N unbroken minutes on an unproductive app or site while the clock is running. A single minute on anything else resets the count. Nothing is sent to managers — the nudge is local to your Mac.
Installing
Open the menu bar dropdown and click Update to 0.4.0. The app verifies the download against the published checksum and against its own signing identity before swapping, so your existing permissions carry over.
v0.3.0 — Nifty Timer
TimeTrack is now Nifty Timer. Same app, same team, new name.
macOS 14 or newer, Apple Silicon. Version 0.3.0 (build 3).
This one has to be installed by hand, and it needs your permission again
Two things about this release are unavoidable, and both come from the rename.
Your 0.2.0 app cannot update itself to this one. The updater checks that a new build is signed as the same app before it will replace anything. Renaming changed the app's identity, so 0.2.0 correctly refuses this build. That check is the thing that stops a tampered download from installing itself, so it is working as intended. Updates resume normally from 0.3.0 onward.
macOS will ask for Screen Recording again. It ties that permission to the app's identity too, so to macOS this is a new app rather than an update. Approving it once is all it takes.
Installing
- Download and unzip below. You'll get Nifty Timer.app.
- Clear the download flag — note the quotes, the name has a space in it:
xattr -dr com.apple.quarantine ~/Downloads/"Nifty Timer.app" - Drag it to Applications and open it.
- Sign in with the same account. Nothing about your account or your recorded time changes.
- Approve Screen Recording when asked, then Quit & Reopen as macOS instructs.
Full steps, including what to do if macOS refuses to open it, are in the install guide.
Your tracked time is safe. Anything recorded but not yet uploaded is stored outside the app and is picked up by the new version. You can delete the old TimeTrack.app from Applications once Nifty Timer is running.
Also in this release
A new app icon, visible in Finder, notification banners, Login Items and the Screen Recording pane. The tile is tinted so the icon reads on a light desktop instead of looking like a floating ring.
The menu bar shows which state it is in — idle, tracking, and capturing a screenshot are three distinct glyphs at the same size. As always the indicator cannot be hidden or switched off.
In-app updates, from here on. The app checks periodically and offers the update in the menu bar. An out-of-date app keeps tracking normally — nothing is blocked, and no time is lost by not updating. Every download is checked against a published checksum and against our signing identity before anything is replaced.
Verifying this download
shasum -a 256 NiftyTimer-pilot.zip
79693fe8471c831a89304e1bcbf66e1eec3142f5aff0d85fbd50b628ce360cc8
Still not notarized — Apple's review is paperwork we finish before general release, which is why step 2 above is needed.
v0.2.0 — pilot
TimeTrack 0.2.0 (build 2) for macOS 14 or newer, Apple Silicon.
Install this one by hand
0.1.0 has no updater, so this release cannot install itself. Download and install it the same way you did the first one — full steps in the install guide.
Because you are downloading through a browser, macOS will tag the file and the quarantine step from the guide still applies:
xattr -dr com.apple.quarantine ~/Downloads/TimeTrack.app
From 0.2.0 onward the app checks for new builds itself and offers the update in the menu bar, so this is the last one you have to fetch manually.
What's new
The app has an icon. It now shows a proper mark in Finder, in notification banners, in Login Items, and in the Screen Recording pane of System Settings, instead of the generic placeholder.
The menu bar tells you which state it is in. Idle, tracking, and capturing a screenshot are now three distinct glyphs at the same size, so switching between them no longer changes the icon's footprint. As always the indicator cannot be hidden or switched off.
In-app updates. The app checks for a newer build every few hours and offers it in the menu bar dropdown. Updating is one click and never happens behind your back.
- An out-of-date app keeps tracking normally. Nothing is blocked, and no time is lost by not updating.
- The prompt is quiet at first and becomes more prominent if a build has been available for over a week.
- Every download is checked twice before anything is replaced: against a published checksum, and against our code-signing identity. If either check fails, nothing is installed and the app you are running is left alone.
- If the update cannot be applied — for example on a managed Mac where the Applications folder is not writable — the app sends you here instead of failing halfway.
Permissions
Your existing Screen Recording permission carries over. The bundle identifier and signing identity are unchanged, so macOS will not ask you to grant it again.
Verifying this download
shasum -a 256 TimeTrack-pilot.zip
39ce0e675d305d62f626731795eb7c98d6bf28a28b34bcc12592d618f3d6a2f7
Still not notarized — Apple's review is administrative paperwork we finish before general release, which is why the quarantine step above is needed. Step 4 of the install guide covers what to do if macOS refuses to open the app.
v0.1.0 — pilot
First public build of the TimeTrack macOS client, published for internal pilot testing.
Read the install guide first — this build is signed but not yet notarized by Apple, so macOS asks for one extra confirmation on first launch. The guide covers it in two steps.
Requirements
- macOS 14 Sonoma or newer, Apple Silicon
- Screen Recording permission, and nothing else — no Accessibility, no Input Monitoring
In this build
- Manual and automatic time tracking, with idle detection and an away-time keep/discard prompt
- Periodic screenshot capture and activity sampling, both gated on policy acknowledgement
- Local-only idle and distraction nudges — never streamed live to a manager
- Employee self-view: every entry, sample, and screenshot recorded about you, with screenshot redaction
Known limits
- Not notarized — expect the one-time "Open Anyway" step on each Mac
- Apple Silicon only; there is no Intel build
- At the end of the pilot you will be asked to reinstall once, and macOS will ask for Screen Recording again. The permission is tied to how the app is signed, and the final build is signed differently.
Verify the download if you like:
codesign --verify --deep --strict TimeTrack.app
codesign -dvv TimeTrack.app # Authority: Apple Development: developers@niftyitsolution.com