Onboardora
Onboarding checklists with dates that follow the start date, and a private page for each new starter.
For teams bringing on new starters. Often replaces Eddy, BambooHR or Enboarder.
Single license $69 · Extended license $149 · paid once, yours for good
What it does
One private link shows their first weeks as a timeline. It lists their tasks, the documents you need and the policies to acknowledge. No account to create.
A task carries an offset, such as seven days before or day one. Move the start date and the whole plan moves.
Tick a task or reassign it inline to a named person. A task owned by nobody is the one that does not happen.
A task is late when it is not done and its date has passed. No flag that a missed job could leave behind.
Ask for a form or a copy of a document. The starter uploads it, PDF or photo, and it lands on their plan.
The starter ticks 'I have read it' and types their name. You see the name and the time.
A daily job emails the owner of each due or overdue task, once per task. Off until you add your own SMTP.
Tag a starter 'remote' or 'driver', and tasks marked for that tag reach only them.
One ZIP holds a starter's checklist, documents list with acknowledgments, equipment and every file they uploaded. Administrators can download every starter at once.
What was given out, when, and whether it came back.
Point a webhook at a Slack channel for new starters, finished tasks and returned documents. Names and tasks, never email addresses or notes.
Every tick and reassign is a real form post. It works on a manager's phone in a warehouse.
Also: new starters as the file Trainora imports, a calendar feed of start dates and due tasks, two-factor sign-in, an audit trail and backups with a dry-run restore.
What Onboardora deliberately doesn’t do.
- **Not an HR system of record** — no payroll, no salaries, no contracts of employment, no holiday tracking
- **No right-to-work or background-check verification** — you can tick that the check happened, it does not perform it. A starter can upload a copy of a document you ask for; Onboardora does not check it, and makes no claim that uploading it satisfies any legal obligation
- **No payroll/HRIS connector** — REST API, signed webhooks and MCP are there; wiring them is yours. A webhook can post a one-line message to a Slack-style chat
- **No offboarding** — equipment tracks issue and return, but there is no leaver flow
- **No employee login** — the starter's page is a private link, not an account; it reaches their own plan only
- **Single-tenant: one company per installation**
- **Not legal advice** — what belongs on a checklist where you operate, and how long you keep the record, are your decisions
What renting costs instead
1 month of Eddy costs what Onboardora costs once.
Read Sep 3, 2026 · source1 month of BambooHR costs what Onboardora costs once.
Read Sep 26, 2026 · sourceThe full comparison: every rival, what each does better, and who should stay with them →
Replacing one of these? Eddy alternative · BambooHR alternative · Enboarder alternative
Release history
For Onboardora, 4.1 makes two changes that every app gets. What’s new in 4.1 →
For Onboardora, 4.0 means updates from inside the app: the Updates page checks for a new release with your license key, verifies Ownware's signature, takes a backup… What’s new in 4.0 →
3.3 puts everything held about a starter in one ZIP: their checklist, the documents list with acknowledgments, equipment and every file they uploaded. What’s new in 3.3 →
3.2 gave the new starter a page of their own: one private link with their first weeks as a timeline, the tasks that are theirs to tick, the documents to upload and the…
The 3.1 wave gave the catalog a way to reach the other side of the transaction: counterparty email through your own SMTP server, calendar feeds your own calendar…
What’s in the zip
The tree as the zip ships it — the working leftovers the packager deletes are not listed
- .htaccess
- API.md
- Dockerfile
- QUICKSTART.txt
- assets/
- bin/
- config.sample.php
- controllers/
- cron/
- deploy/
- index.php
- install/
- manifest.json
- offline.html
- router.php
- src/
- sw.js
- tests/
- views/
src/Onboard.php: a real module, the first 24 of 530 lines
Chosen as the largest module in src/ that is not one of the shared cores — this product's own logic, not a file every product carries.
<?php /** * Onboard.php — THE core: a new starter's first ninety days (fully covered by tests/run.php). * * Four properties, all provable, all tested: * * 1. A STARTER'S PLAN IS A SNAPSHOT. When somebody is added from a template, the template's * tasks are COPIED onto them. Editing the template afterward changes what the NEXT person * gets and can never rewrite a plan already in flight — the same discipline a signed * document gets, for the same reason: somebody is working to that list today. * * 2. DUE DATES ARE DERIVED, NEVER STORED. A task carries an OFFSET in days from the start date * (day -7 is a week before they arrive, day 0 is their first morning). The date is computed * at read time, so moving a start date moves the whole plan correctly, with no migration and * nothing left pointing at the old Monday. * * 3. "LATE" IS DERIVED TOO. A task is late when it is not done and its derived due date has * passed. There is no is_late column to go stale overnight, and no job that has to run for * the dashboard to be right. * * 4. COMPLETION IS IDEMPOTENT AND KEEPS THE FIRST ANSWER. Ticking a done task again does not * move the time it was done or the name of who did it. Two people working the same checklist * is the normal case, not the edge case. */
Runs on: Web installer in about two minutes; plain PHP 8.1+ with MySQL/MariaDB (or SQLite for a trial), no Composer and no build step — Docker one-liner included. Tested on PHP 8.3. Or run it in Docker: the Dockerfile is in the zip.
Technical owners can install it with one line and their license key: curl -fsSL https://ownware.io/install.sh | sh -s -- onboardora <your license key>
Nothing is obfuscated or encoded; what you read is what runs. Manual · API · the test run
Which license do I need?
It comes down to how many installations you need. Running your own business on one site is the Single license. A second domain of your own, or sites you build or run for other people, is the Extended license.
- Install it on one domain or subdomain you own or operate
- Change the source however you like for that installation
- Run your own business on it commercially, client work included
- Re-download the current build any time from your buyer portal
- A second site, or an installation you hand to a client as theirs, needs the Extended license
- No reselling, redistributing or sublicensing the source
- Not for offering it to other people as a hosted service
- Everything the Single license grants
- Install it on as many domains as you own or operate — no cap on the number
- Up to ten client installations, one per client project, handed over or hosted for each client; for more, buy another Extended license
- White-label: remove or replace the product name and logo in the screens of client installations
- Still no reselling or redistributing the source itself
- Running it as a multi-tenant service others sign up for needs a SaaS agreement
Every download carries the full terms as LICENSE.txt. The complete wording is on the terms page.
After you buy
The app’s Updates page installs a new release with your license key, with the release’s signature checked and a backup taken first. Your download link always serves the current build. Download again any time from your order page or the buyer portal; there is no renewal fee.
Email support for installation and for defects in the code as delivered: a person reads and answers every message. It does not cover custom development or server administration. What support covers
Refunds are handled by Lemon Squeezy as merchant of record, case by case. EU consumers keep the statutory 14-day right until delivery starts. Refund terms
It keeps running: your server, the full PHP source, no license check that can fail. If no stable release is published for 365 days, the domain limit lifts; after three such years your copy becomes MIT-licensed. The terms have the exact wording: continuity.
Questions
Is this an HR system?
Does it do right-to-work or background checks?
Can the new starter log in and tick their own tasks?
Does it handle people leaving?
Will it connect to my HR system?
Is it priced per starter, or per month?
If I improve the checklist template, does it rewrite plans already running?
If a start date moves, do I have to redo all the dates?
Does it quietly shift a task off a weekend?
Covered in these guides
More about Onboardora
Self-hosted employee onboarding: write a checklist once and every new starter gets their own plan, with every date worked out from the day they actually start.
The problem it solves
Onboarding fails quietly. The laptop was not ordered, the manager did not know they were the one to book the induction, and nobody noticed until day one — when the new person is sitting in reception.
The fix is not a bigger HR system. It is one timeline per starter, with an owner on every line and dates that move when the start date moves.
- A checklist copied from the last hire, with the last hire's dates still in it
- Tasks owned by "HR" or "the manager" rather than a person who can be asked
- A per-employee-per-month HRIS bought for the one month of the year it matters
Every feature
- From before day one to the end of probation, in the phrases people use. Before they arrive, day one, first week, first month, ninety days. A template written once becomes a plan per starter, and the plan is the screen you work from.
- Every due date is derived, never stored. A task carries an offset — seven days before, day one, plus thirty — and the date comes from the start date. Move the start date and the whole plan moves with it. Nothing to go stale.
- Late is derived too. Not done, and the derived date has passed. There is no is_late column that a missed cron could leave lying on a screen.
- One tap to tick, one to hand it over. Reassigning is inline: pick a name from the row. A task owned by nobody is the one that does not happen, so ownership is a person rather than a department.
- It works with JavaScript off. Every tick and every reassign is a real form post; the script only makes it quicker. It works on the phone of a manager standing in a warehouse.
- Equipment issued and returned. What was given out, when, and whether it came back. Not an asset register — the equipment a starter is handed, tracked through the one loop that matters.
- Overdue tasks chase themselves. A daily job emails the owner of any task that is due or overdue, once per task; a Remind button does the same on demand. Off until you add your own SMTP.
- Documents handed back. List what each starter owes you (signed contract, bank details form) and tick it off as it arrives.
- Owner essentials. Two-factor sign-in, optional single sign-on, roles with invitation links, an append-only audit trail, your logo and colors, a calendar feed of start dates and due tasks, and backups with a guided dry-run restore.
- A page for the new starter. Send one private link: their first weeks as a timeline, the tasks that are theirs to tick, the documents you need from them, the policies to acknowledge. No account to create.
- Documents come back by themselves. Ask for a form or a copy of a document; the starter uploads it (PDF or photo) and you get it on their plan, with a webhook if you want one.
- Policies acknowledged, with a record. The starter ticks "I have read it" and types their name; you see the name and the time.
- One checklist, the right tasks. Tag a starter "remote" or "driver"; tasks marked for that tag reach only them.
- Onboarding news in your team chat. Point a webhook at a Slack channel and each new starter, finished task or returned document arrives as one line: names and tasks, never email addresses or notes.
- Training handed to Trainora. Download your new starters as the file Trainora imports, and track their training and certificates there.
- Everything about a starter in one download. One ZIP holds their checklist, documents list with acknowledgments, equipment and every file they uploaded. Administrators can download every starter at once, one folder each.
- Updates from inside the app. The Updates page installs a new release with your license key: Ownware's signature is checked, a backup is taken first, and the app puts the previous version back by itself if the update is interrupted or the database step or start-up check of the new version fails. It never checks by itself.
- Backups by themselves. Automatic backups, an optional copy to S3-compatible storage you own, and a weekly check that the latest backup reads back. The Health page names anything that needs attention.
- Own It 4.0.1 — fixes and an up-to-date manual. For Onboardora, 4.0.1 fixes an installer that had lost its styling, a rollback that a page opened during an update could stop and a command-line update that ended in an error after putting the previous version back. Its manual, FAQ and QUICKSTART now cover everything 4.0 added, including two Nginx rules that keep the data folder private. Your license covers it: press Check for updates on the Updates page, or download it from your order page.
- Own It 4.0.2 — the installer opens on every host. For Onboardora, 4.0.2 fixes a fresh install on an Apache host: the one-page setup at /install/ looped back to itself and never opened, and now it opens. Your license covers it: press Check for updates on the Updates page, or download it from your order page.
Release notes in full
- Own It 4.1: client installations and your other tools. For Onboardora, 4.1 makes two changes that every app gets. An Extended license bought from October 4, 2026 covers up to ten client installations, one per client project: hand each one over to the client or host it for them, with the client's logo and colors from the app's branding settings. The API reference now shows how to connect Onboardora to Zapier, Make or n8n, using its own webhooks and API key. Your license covers the update: press Check for updates on the Updates page, or download it from your order page.
- Own It 4.0: it updates and backs itself up. For Onboardora, 4.0 means updates from inside the app: the Updates page checks for a new release with your license key, verifies Ownware's signature, takes a backup and puts the previous version back by itself if the update is interrupted or the database step or start-up check of the new version fails. A new install can start with a sample business and remove it in one click; backups run by themselves, with an optional offsite copy and a weekly check that the latest one reads back; and the Health page says whether the install is looking after itself.
- Own It 3.3: everything about a starter in one download. 3.3 puts everything held about a starter in one ZIP: their checklist, the documents list with acknowledgments, equipment and every file they uploaded. Administrators can download every starter at once, one folder each.
- Own It 3.2: the starter's own page. 3.2 gave the new starter a page of their own: one private link with their first weeks as a timeline, the tasks that are theirs to tick, the documents to upload and the policies to acknowledge by typing their name, with no account to create. It also added tags so the right tasks reach the right starter, onboarding news in your team chat, and a download of your new starters that Trainora imports.
- Own It 3.1: it writes to the people you serve. The 3.1 wave gave the catalog a way to reach the other side of the transaction: counterparty email through your own SMTP server, calendar feeds your own calendar subscribes to, attachments filed where the paperwork belongs, and export presets other people's software imports. Each outbound feature ships switched off and runs on your own credentials; a failed send is recorded, and the action that triggered it stands. For Onboardora, 3.1 meant a line-by-line check of the limitations list against the shipped code, so what this page says it does not do is exactly what the download does not do.
Browse self-hosted: Workforce management software