Base Hangar Works — homemade, not corporate
ScheduleApp — user guide
Thanks for actually giving this a shot — this guide covers everything currently in the app.
Not an official company system. If the app ever disagrees with the real published roster, trust the real one and let me know — I'd rather hear about a mismatch than have you miss a shift over it.
What this is
ScheduleApp shows your monthly work schedule on your phone, pulled from the same roster file that's normally only available as a PDF. It reads that file, finds your row, and shows it two ways — a source-style row (just like the PDF) and a normal calendar grid — so you can always double-check it against the original if anything looks off.
It also has a few extras bolted on: shift alarms, a mandatory end-of-shift toolbox-check reminder, home-screen widgets, and a payslip calculator that estimates your pay straight from that same schedule.
The app only talks to my own private schedule server — nothing else, no ads, no analytics, no data wandering off anywhere you haven't agreed to.
Check the what's new page any time to see what's changed recently.
1. Installing
- Grab the APK from the downloads page.
- Your phone will probably ask whether to allow installs from this source the first time — totally normal for anything outside the Play Store, just allow it for this one app.
- Open the APK and install.
2. First-time setup — pairing
The first time you open the app, it needs to pair with the schedule server once.
- On the Import tab, ask me for a pairing code — good for 15 minutes, works once.
- Enter (or scan) it when prompted.
- Once paired, that's it — the app keeps a token on your phone and you won't see this again.
3. Getting your schedule
Once paired, there are two ways to get your schedule onto your phone. Either's fine — the difference is how much you double-check along the way.
The normal way (recommended the first time):
- Press Check files on server on the Import tab — always a manual tap, the app never checks on its own.
- Pick the revision you want (usually the newest) and download it.
- Go to My PDfs, find the file, tap Confirm.
- Search for your name and select yourself.
- Compare the shown schedule against the actual PDF crop on screen, confirm it matches.
- When it asks "Set as your active schedule?", tap Yes.
The shortcut ("one-click roster"):
On the Import screen there's a name field and a slide-to-activate button ("show me the real magic"). Type your name, slide it, wait a few seconds — it fetches the latest schedule, finds your name, and activates it automatically, no comparison step. Once it's done, tap Open roster tab to see the result.
It's faster, but it skips the manual comparison — the Roster screen will show a small "not verified by you" note until you go through the normal Confirm flow at least once for that same schedule. Use whichever you like; if you go the shortcut route, it's worth glancing at the real PDF yourself afterward.
4. Viewing your roster
The Roster tab shows your active schedule two ways — a horizontal source row (matching the PDF layout) and a normal month grid. Switch between them freely; both show exactly the same raw values, nothing translated or guessed. A gear icon up top jumps back to My PDfs if you need a different revision.
5. Payslip (salary calculator)
On the Roster tab, a PAYSLIP button sits next to your Norm/Working hours/Overtime summary — tap it to open a full payslip-style breakdown for that month.
A switch at the top picks which mode fits how you're employed:
- Permanent — pre-fills worked hours, norm hours, overtime, night hours, and public-holiday hours straight from that month's schedule and the Rules tab's code dictionary/holiday list, then works out gross pay, Pension II, unemployment insurance, income tax, and a final take-home figure. Every pre-filled field (including the night and overtime multipliers) stays editable if something needs adjusting.
- Contract — a simpler hours × rate calculation plus bonuses minus withdrawals, also shown scaled to a day/week/month for comparison.
Your hourly rate, Pension II percentage, night-shift multiplier, overtime/holiday multipliers, and any bonuses/withdrawals are remembered between opens, the same way your other app settings are; everything else recalculates fresh from that month's schedule every time you open it. Reset to computed defaults throws away manual edits and starts over from those pre-filled values.
Heads up: it doesn't currently account for vacation or sick-leave days.
6. Understanding your codes (Rules tab)
Each code on your schedule (numbers, TR, ill,
VAC, and so on) maps to a meaning — hours, category,
whether it counts as a working day. The Rules tab
shows this dictionary and lets you fix or add an entry if something's
wrong or missing. The app never guesses at an unknown code — it'll
flag it instead of quietly assuming.
The same tab also keeps an editable list of Estonian public holidays (pre-filled, add/delete/reset-to-default) — that's what the payslip calculator above uses to work out holiday pay.
7. Alarms
The Alarms tab has separate cards for Day, Night, and Training (TR) shifts, since they can start at different times — the actual start time comes from the Rules tab (either a per-code override or the shared Day/Night/Training default), not from this tab. For each shift type you can:
- Choose how much advance warning you want before that start time.
- Choose whether that reminder rings as a full alarm, shows as a plain notification, or both — independently per card.
Android will probably ask for a few permissions the first time you set an alarm (exact alarms, notifications, a battery-optimization exemption) — grant all three, or the alarm might just quietly not go off, which defeats the point.
8. Toolbox checks
If your schedule includes working (Day/Night) shifts, the Toolbox tab reminds you to check your toolbox before leaving — by default, 30 minutes before your shift ends. (Training days skip this one — no physical tools involved.)
Three ways to confirm a check, whichever's in front of you at the time:
- The button on the alarm screen, if it rings.
- The action button on the notification, if you're just using notifications.
- Directly in the Toolbox tab's list, for any day — including catching up on one you forgot earlier.
You can optionally attach a photo as proof, either right away or later, from the entries list.
Two more things live on that tab:
- Toolbox check records — turn the whole tracking list on or off, and see a day-by-day history with a tick for confirmed days.
- Entries cleanup — set how long old entries stick around before they quietly disappear (or leave it on never, the default).
9. Home-screen widgets
Long-press an empty spot on your home screen → Widgets → find ScheduleApp → pick one of two: a small next-day/toolbox/alarm strip, or a full roster calendar grid. They update automatically whenever your schedule, rules, or alarms change — no need to reopen the app.
Troubleshooting
- "Person not found" on the one-click shortcut — check your name matches exactly how it's spelled on the official roster (middle names, surname/given-name order, all of it).
- Alarm or toolbox reminder didn't fire — check the three permissions in the Alarms section, especially battery optimization, since some phones are aggressive about killing background apps.
- Something on the Roster screen looks wrong — always trust the real PDF over the app, and tell me so I can fix it.
Feedback
Found a bug, or something's confusing? Message me directly — [add your contact here] — I'd genuinely rather hear about problems now than have them surface once more people are using it.