Skip to content

Open Source experience notes

Leantime

Open-source project management for non-project managers — goals, tasks, and strategy on a self-hosted PHP stack.

Leantime

Features, structure, and why it matters

Inside Leantime

A clear project walkthrough you can scan section by section.

Leantime is an open-source project management system aimed at non-project managers — combining strategy, planning, and execution in a UI designed to stay usable under cognitive load. The README and leantime.io position it as “as simple as Trello but as feature-rich as Jira,” built with ADHD, dyslexia, and autism in mind, and as an alternative to ClickUp, Monday, or Asana. I follow it when a team wants self-hosted PM with goals and timesheets — not only a kanban column dump — and prefers PHP/MySQL ops over another SaaS seat bill. Product depth is spelled out on Features; product thinking and release notes show up on the blog. Docs live at docs.leantime.io.

Leantime — cover placeholder
Replace with a My Work / project screenshot when you capture one from demo or a self-hosted instance

What I like most about Leantime

I reach for Leantime when PM needs to connect why (goals/strategy) to what (todos/milestones) without forcing everyone to become a Jira admin.

1. Personal “My Work” plus real projects

A personal dashboard for tasks across projects, time blocking (iCal-aware), private notes, whiteboards, and task “interest” rating for prioritization — marketed heavily on the homepage and features pages. Projects then hold todos, milestones, ideas, docs, blueprints, reports, timesheets, and retrospectives.
Why it matters: People live across many projects; a single personal view reduces tab chaos.

2. Task views that match different brains

Kanban, table, list, calendar, and gantt-style milestone timelines; unlimited subtasks and dependencies; sprint management (README feature matrix).
Why it matters: One rigid board view is why teams abandon PM tools.

3. Strategy and lean canvases in-product

Goal and metrics tracking, Lean & Business Model Canvas, SWOT, risk analysis, strategic vision / focus areas, and project blueprints (README, features).
Why it matters: “Why are we building this?” stays next to the todos instead of in a forgotten slide deck.

4. Knowledge + time in the same workspace

Wikis/docs (including embed patterns for external docs), idea boards, comments on nearly everything, file storage (local or S3), screen/webcam recording callouts, plus timetracking and timesheets for billing-friendly work.
Why it matters: Agencies and freelancers often need PM + light knowledge base + hours without three SaaS products.

5. Self-host first, extend when needed

Easy zip//install or official Docker image; LDAP and OIDC; 2FA; roles and per-project permissions; Slack/Mattermost/Discord-style integrations; JSON-RPC API; plugins (OSS + marketplace) (README).
Why it matters: You can start lean and add marketplace/plugins or API automation without rewriting the core.

6. Neurodiversity-aware product framing

Upstream messaging is explicit: reduce cognitive overload, connect goals to motivation, optional AI helpers for breakdown/prioritization/status (leantime.io, blog).
Why it matters: Most “Jira alternatives” compete on feature count; Leantime competes on whether people will open it.

TIP

README notes the listed task/planning/knowledge/admin features are included in the OSS version. Still verify AI, managed hosting, and marketplace plugins against your plan — SaaS/managed options and AGPL plugin exceptions exist beside the free self-host path. Start with docs.leantime.io install guides or leantime/leantime on Docker Hub.

Project structure

Leantime is a Laravel-based PHP application (Leantime\ PSR-4 under app/). High-level layout from the repository:

Path Role
app/ Application code (Leantime\ namespace), including plugins under app/Plugins
public/ Web document root (point the domain here)
config/ sample.env.env for DB, mail, app URL, integrations
bin/ CLI (e.g. php bin/leantime system:update)
tests/ Unit / acceptance (Codeception)
.dev/ Docker compose for local development

Mental model:

  • My Work — personal organization across projects
  • Projects — todos, milestones, docs, ideas, retros, timesheets
  • Strategy / blueprints — vision, focus areas, canvases, goals
  • Admin — users/roles, LDAP/OIDC, plugins, storage
  • Extension — plugins + JSON-RPC API (+ MCP-related packages in modern composer.json)
# Production-ish zip path (see README for release ZIP from GitHub Releases)
# 1) Empty MySQL database
# 2) Upload app; document root = public/
# 3) cp config/sample.env config/.env  # fill DB (+ mail)
# 4) Visit https://pm.example.com/install

# Official Docker (env names from README — adjust network/DB)
docker run -d --restart unless-stopped -p 8080:8080 \
  -e LEAN_DB_HOST=mysql_leantime \
  -e LEAN_DB_USER=admin \
  -e LEAN_DB_PASSWORD=secret \
  -e LEAN_DB_DATABASE=leantime \
  --name leantime leantime/leantime:latest
# Then open /install — use docker-compose if you need bundled MySQL

Requirements (README): PHP 8.2+, MySQL 8.0+ or MariaDB 10.6+, Apache/Nginx (IIS with notes), plus a long extension list (gd, pcntl, ldap, zip, …). Dev path: make build-dev / make run-dev (port 5080) with compose extras for maildev, phpMyAdmin, s3ninja.

Code analysis

Stack snapshot (from composer.json + README):

Layer Technology Notes
Framework Laravel ^11 PHP ^8.2
Database MySQL / MariaDB via PDO App data
Auth Laravel Socialite + many IdP providers; 2FA (robthree/twofactorauth) LDAP/OIDC and social/SSO options
API Laravel Sanctum; JSON-RPC docs Automation / integrations
Storage Local filesystem or S3 (AWS SDK / Flysystem) Files and media
Mail PHPMailer Notifications
AI / agents prism-php/prism, neuron-ai, laravel/mcp, qdrant client Modern AI/MCP-oriented deps in core composer
Billing-related stripe/stripe-php Present in requires (SaaS/marketplace adjacency)
Quality PHPStan, Pint/PHPCS, Codeception make phpstan, unit/acceptance targets
License AGPL-3.0-only Plugins under /app/Plugins may use other licenses

Strengths when I evaluate it:

  • Breadth in OSS — tasks, goals, canvases, docs, time, retros without buying five tools
  • Self-host + Docker — clear production and compose paths
  • Extensibility — plugins, API, marketplace when core is not enough
  • Laravel familiarity — PHP shops can reason about deploy, .env, and queues/cache options
  • Product philosophy — neurodiversity / cognitive-load messaging is unusual and useful

Trade-offs / caveats:

  • AGPL-3.0 — copyleft; understand obligations before SaaS wrapping or proprietary forks; plugin folder has explicit license exceptions
  • Not a pure “thin board” — feature richness can still overwhelm if you enable everything day one
  • Ops weight — PHP extensions (incl. pcntl), MySQL, mail, and optional S3/LDAP; Docker helps but is not zero-ops
  • Support boundaries — upstream notes limited support for unofficial distribution platforms; prefer official compose/standard installs for help
  • AI/cloud extras — treat AI and managed hosting as product-tier dependent; do not assume every marketing AI feature is free offline without checking docs

Env sketch (illustrative):

# config/.env — follow sample.env; names illustrative
LEAN_DB_HOST=127.0.0.1
LEAN_DB_USER=leantime
LEAN_DB_PASSWORD=secret
LEAN_DB_DATABASE=leantime
LEAN_APP_URL=https://pm.example.com
LEAN_EMAIL_RETURN=noreply@example.com
# Behind a reverse proxy on Docker, set LEAN_APP_URL to the public https URL

Why people use it

Audience Why Leantime fits
Small teams / agencies Self-hosted PM + timesheets without per-seat ClickUp/Jira pricing
Freelancers / solopreneurs My Work + goals without enterprise ceremony
Neurodivergent-friendly workflows Explicit UX goals around overload and motivation
PHP / Laravel shops Familiar deploy stack and extendable plugin/API surface
Privacy-conscious orgs Keep projects and docs on their own servers
Teams leaving Trello Need milestones, dependencies, and reporting without full Jira

Skip it if you need a pure engineering issue tracker deeply integrated with git (GitHub Issues / Linear-class), refuse AGPL, or want a minimal sticky-note board with zero strategy features.

Conclusion

Leantime remains one of the strongest open-source PM options I follow for teams that want goals and execution in one place — self-hosted, Laravel-based, and intentionally designed for people who are not full-time project managers (repo, site, features, blog, docs).

Honest caveat: success is workflow adoption, not install. Start with My Work + one project’s kanban and milestones; add canvases, AI, and plugins only when the team already opens the app daily. And read the AGPL terms before you productize a hosted offering on top of it.

Keep exploring

Curious about my Leantime notes?

Happy to share how I evaluate self-hosted PM like Leantime — or if you need help deploying or integrating it, tell me about your setup.