Overview
Discover what makes ChiefOnboarding powerful
ChiefOnboarding is a **self‑hosted, open‑source** platform that orchestrates end‑to‑end employee onboarding workflows. From a technical standpoint, it exposes a RESTful API layer for programmatic manipulation of blueprints, hires, and sequences while simultaneously rendering an interactive dashboard and a Slack bot that consume the same underlying data model. The core business logic—timed triggers, conditional sequencing, and webhook dispatch—is encapsulated in a Go‑based service that communicates with a PostgreSQL database via an ORM. The frontend is a modern React application built with TypeScript, leveraging a component library for rapid UI composition and internationalization support.
Backend
Database
Frontend
Messaging
Overview
ChiefOnboarding is a self‑hosted, open‑source platform that orchestrates end‑to‑end employee onboarding workflows. From a technical standpoint, it exposes a RESTful API layer for programmatic manipulation of blueprints, hires, and sequences while simultaneously rendering an interactive dashboard and a Slack bot that consume the same underlying data model. The core business logic—timed triggers, conditional sequencing, and webhook dispatch—is encapsulated in a Go‑based service that communicates with a PostgreSQL database via an ORM. The frontend is a modern React application built with TypeScript, leveraging a component library for rapid UI composition and internationalization support.
Architecture
- Backend: Go (v1.22+) with the
ginframework for routing,gormfor ORM, andsqlxfor raw queries where performance is critical. The service exposes a versioned API (v1) that follows HATEOAS principles for discoverability. - Database: PostgreSQL 15+ stores all domain entities—
Blueprint,Hire,TodoItem,Badge, and integration configurations. The schema is fully normalized but includes materialized views for common queries such as upcoming tasks per hire. - Frontend: React 18 with Vite, TypeScript, and
react-queryfor data fetching. The UI is built around a drag‑and‑drop timeline component that persists changes via the API. - Messaging: Slack integration uses the Bolt framework for Go, exposing a bot that listens to slash commands and sends proactive messages. Webhook support is implemented as an HTTP endpoint that accepts POST payloads, validates a secret token, and forwards the event to configured destinations.
- Containerization: A single Docker image (
chiefonboarding/chiefonboarding) bundles the Go binary and static assets. The official Docker Compose example pulls this image, mounts a PostgreSQL container, and exposes ports 3000 (API) and 8080 (frontend). Kubernetes manifests are available underdeploy/k8s, featuring a StatefulSet for PostgreSQL and a Deployment with HorizontalPodAutoscaler for the app.
Core Capabilities
- Blueprint Builder: Drag‑and‑drop UI to assemble sequences of
TodoItem,Resource, andBadgeobjects. Each item can be time‑based or event‑driven, allowing complex onboarding flows. - Pre‑boarding: Custom landing pages that can be rendered before the employee’s first day, with form capture and email notifications.
- Webhooks & Integrations: Built‑in connectors for common SaaS platforms (Slack, GitHub, Jira) and a generic webhook endpoint. Developers can extend the integration registry by publishing new adapters in Go, following the
Integrationinterface. - Multilingual & Timezone: All string resources are stored in JSONB columns, and the UI pulls language packs via the API. Timezone offsets per hire are respected in scheduling logic.
- Badge System: Earned badges trigger additional workflow steps and can be displayed in the dashboard or sent via Slack.
Deployment & Infrastructure
ChiefOnboarding is designed for cloud‑native environments but can run on any Linux host. The Docker image supports both standalone and clustered deployments; the PostgreSQL container can be replaced with a managed database service. For high availability, replicate the PostgreSQL cluster and run multiple app replicas behind an ingress controller (NGINX/Traefik). The application’s stateless nature makes it amenable to autoscaling; the API layer can be horizontally scaled, while the database remains the single source of truth.
Integration & Extensibility
The plugin architecture is intentionally minimal: developers implement the Integration interface and register it in a central registry. The API exposes /integrations for CRUD operations on integration instances, and webhooks are discovered via a GET /webhooks endpoint. Custom Slack bot commands can be added by extending the Bolt handler map without touching core code. The platform also offers a GraphQL endpoint (experimental) for fine‑grained data retrieval, enabling third‑party tools to query onboarding state without exposing the full REST surface.
Developer Experience
- Configuration: All runtime settings are environment‑based, with sensible defaults. A
.env.examplefile illustrates the required variables (DB URL, Slack token, webhook secret). - Documentation: The public docs site (
docs.chiefonboarding.com) includes API references, integration guides, and deployment tutorials. The source repository is heavily commented; the codebase follows Go conventions withgolangci-lintenforced via CI. - Community & Support: The project is hosted on GitHub with an active issue tracker and a Discord channel for real‑time help. Licensing under AGPLv3 ensures that any derivative work remains open, fostering a collaborative ecosystem.
Use Cases
- Remote‑First HR Teams: Automate pre‑boarding emails, schedule onboarding tasks across time zones, and track completion via Slack or a web portal.
- DevOps Pipelines: Trigger account provisioning in GitHub, Jira, or cloud IAM systems via webhooks when a new hire reaches the “create accounts” milestone.
- Compliance Auditing: Export onboarding reports in CSV or JSON for audit purposes; the API supports filtering by date ranges and status.
- Custom Onboarding Flows: Build bespoke sequences for specialized roles (e.g., contractors, interns) and expose them through a single integrated dashboard.
Advantages
ChiefOnboarding delivers full control over the onboarding experience
Open SourceReady to get started?
Join the community and start self-hosting ChiefOnboarding today
Related Apps in development-tools
Hoppscotch
Fast, lightweight API development tool
code-server
Self-hosted development-tools
AppFlowy
AI-powered workspace for notes, projects, and wikis
Appwrite
All-in-one backend platform for modern apps
PocketBase
Lightweight Go backend in a single file
Gitea
Fast, lightweight self-hosted Git platform
Weekly Views
Repository Health
Information
Explore More Apps
Input
Self-hosted, no-code form builder for brandable surveys
Black Candy
Self-hosted music streaming for your personal library
Lidify
Music discovery powered by your Lidarr library
Tube
Self‑hosted video platform for personal or community sharing
Watcharr
Self-hosted watch list for movies, shows and games
Mindustry
Strategic tower‑defense with automated resource processing
