// the find
panicinc/PunchClock
An in/out tracking app for iOS 7+ that uses iBeacon and Geofencing.
PunchClock is an iOS app from Panic that tracks who's in or out of the office using iBeacon hardware and Core Location geofencing. It pairs with a separate server component and was built for internal use at Panic. Explicitly abandoned since 2014, last touched in 2019 only by accident.
Real-world iBeacon + geofence combo is a decent reference for how Core Location ranging and region monitoring interact in practice. Code structure is clean Objective-C MVC — easy to follow PCLocationManager handling both beacon and geofence events. Ships with German localization, which is a nice touch for what's essentially an internal tool. The separation between the debug Info tab (showing raw Core Location data) and the main UI is genuinely useful for tuning beacon placement.
Dead project — the README says explicitly 'no longer being updated' and iOS 7 is now five major versions behind; iBeacon APIs have shifted and this will not compile cleanly against a modern SDK. Identity is stored as a plain name string in the keychain with no auth — collisions or spoofing are trivial. Requires the companion PunchClockServer running separately, so you're adopting two abandoned repos not one. The 'Works For Us' name-as-key approach means name changes corrupt your history on the server side, which the README acknowledges and leaves unfixed.