PlainPunch
Run a small self-hosted time clock with explicit shifts and breaks, correction review, CSV export, and append-only audit evidence without employee surveillance.
The problem it solves
PlainPunch PlainPunch is a small self-hosted time clock without surveillance. Employees make explicit clock-in, clock-out, and break punches; they can review their own history and request corrections. Administrators review those requests, export CSV records, and retain an immutable audit trail of every material action.
Who PlainPunch is for
- People who need a small, purpose-built utility instead of a broad platform.
- Users working with time clock, self-hosted, audit trail who want the documented v1.0.0 behavior.
- People who prefer an open-source release with visible limitations, source, and license terms.
Intended result
Run a small self-hosted time clock with explicit shifts and breaks, correction review, CSV export, and append-only audit evidence without employee surveillance.
This summary is reconciled from the current catalog and repository documentation.
Features in v1.0.0
Capabilities below come from the current project README and release documentation.
PlainPunch is a small self-hosted time clock without surveillance. Employees make explicit clock-in, clock-out, and break punches; they can review their own history and request corrections. Administrators review those requests, export CSV records, and retain an immutable audit trail of every material action.
It deliberately does not track location, screenshots, keystrokes, browser activity, applications, or productivity scores.
Verified examples
Screenshots are shown only when the current README references a local source image. Otherwise, repository example files are linked directly.
Verified release evidence
This project does not currently publish a screenshot or dedicated example folder. The current README, tests, changelog, tagged release, and source repository remain the verified examples of its behavior.
Platforms and implementation
The public release claims only the cataloged platforms and technologies.
Supported platforms
- Windows
- macOS
- Linux
- Docker
Built with
- Python
- Flask
- SQLite
- Docker
Quick start
The shortest documented path into the current release.
cp .env.example .env
# Replace PLAINPUNCH_SECRET_KEY and set your timezone in .env.
docker compose up -d --build
docker compose exec app plainpunch --database /data/plainpunch.sqlite3 create-admin \
--name "Administrator" --email admin@example.org --employee-code ADMINOpen http://localhost:8080. Put TLS and rate limiting in front of the service before exposing it outside a trusted network.
Current limitations
These boundaries are part of the product and prevent the page from implying unverified capability.
The current v1.0.0 release is bounded by the behavior documented in its README and changelog. It does not claim unsupported platforms, automatic interpretation, or results beyond the evidence it produces.
Privacy and licensing
Review the actual data boundary before using a tool with sensitive inputs.
Privacy and safety
Passwords and kiosk PINs use Werkzeug's scrypt password hashes. State-changing HTTP requests require session-bound CSRF tokens. Cookies are HTTP-only and SameSite=Lax; production deployments should set PLAINPUNCH_SECURE_COOKIES=1 behind HTTPS. The application makes no third-party analytics or telemetry requests.
PlainPunch is not a payroll processor and does not encode jurisdiction-specific overtime, rounding, leave, scheduling, or record-retention rules. Operators remain responsible for legal review, backups, access control, incident response, and accurate payroll practices.
License and release
PlainPunch is published under MIT. The current cataloged release is v1.0.0, published 2026-08-03.
Related projects
Related projects are selected deterministically from shared catalog tags, category, and implementation technologies—not popularity or paid placement.
PlainPunch v1.0.0
Use the tagged release for downloads and release notes. Use the repository for source, issues, contribution guidance, security reporting, and complete documentation.
Page source: current Forge catalog plus README and CHANGELOG from the canonical local repository. Fingerprint: 9cf39f95e7e02dfd.