Self-hosted service
makeplane/plane avatar
makeplane/plane

Plane: A self-hostable project management suite that trades simplicity for control

Open-source project management platform for issues, sprint cycles, docs, and roadmaps, positioned as a self-hostable alternative to Jira, Linear, and ClickUp.

62,411 stars6,396 forksTypeScriptAGPL-3.0

At a glance

What is it?
Plane is an open-source alternative to Jira, Linear, Monday, and ClickUp, built with a Django backend and a React frontend. It offers cycles, modules, views, and pages, but its AGPL license and complex self-hosting setup demand careful evaluation.
Who is it for?
Adopt Plane if you need a self-hosted, open-source project management tool and your team can handle a Django-based stack with multiple services. Do not adopt it if you want a lightweight, single-binary installation or if AGPL-3.0 licensing is a problem for your organization.
Can I use it commercially?
Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • makeplane/plane62,411 ★ · +7,252
Star history
Repository2026-07-282026-11-13
makeplane/plane55.2k62.4k

7,252 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

What Plane solves and who it targets

Plane is a project management platform that aims to replace Jira, Linear, Monday, and ClickUp. The README describes it as a tool to 'track issues, run cycles, and manage product roadmaps without the chaos of managing the tool itself.' That last phrase is telling: the pitch is that you get the features of those commercial products without the overhead of a SaaS subscription or the lock-in. The target audience is teams that want control over their data and infrastructure, or that have compliance reasons to avoid cloud-hosted tools. The self-hosting option is a core part of the identity, not an afterthought. The README lists two deployment methods, Docker and Kubernetes, and points to separate developer documentation for each. That suggests a team that is comfortable running containers and orchestrating services, not a small group looking for a quick install.

The architecture: Django, React, and a modular frontend

The README's 'Built with' section lists React Router, Django, and Node.js. That tells you the backend is Python/Django and the frontend is a React single-page application. The repository layout, with separate directories for the web app and the API, is typical for this stack. The data flow is standard for such an architecture: the React frontend makes HTTP requests to a Django REST API, which handles authentication, business logic, and database access. The use of Django suggests a mature ORM, built-in admin, and a large ecosystem of extensions. Node.js is likely used for the frontend build tooling and possibly for some server-side utilities. For an engineer evaluating this, the key point is that you are not dealing with a single binary or a simple server. You have at least a web service, an API service, and, per docker-compose.yml and .env.example, workers, Postgres, Redis and RabbitMQ settings. The modularity is a trade-off: it gives flexibility but also increases the complexity of self-hosting.

Installation paths: Docker, Kubernetes, and Cloud

The README gives three ways to get Plane running. Plane Cloud is the fastest: sign up at app.plane.so and you are done. For self-hosting, you have Docker and Kubernetes. The documentation links point to specific guides: developers.plane.so/self-hosting/methods/docker-compose and .../kubernetes. The Kubernetes method is for larger deployments with existing cluster infrastructure. The README also mentions 'God mode' for instance admins, which is a configuration interface for instance-wide settings. However, the README does not provide the actual commands or environment variables. You must consult the developer documentation for those. That is a gap for a quick start, but it is consistent with a project that expects users to read the docs.

Feature set: cycles, modules, views, and pages

Plane's feature list is broad. Work Items are the basic tasks, with a rich text editor and file uploads. Cycles are time-boxed iterations, equivalent to sprints, with burn-down charts. Modules let you break a project into smaller parts. Views are saved filters that you can share. Pages are a note-taking feature with AI capabilities and the ability to convert notes into actionable items. Analytics provides real-time insights across all data. This is a competitive feature set compared to Jira or Linear. The terminology is slightly different: 'cycles' instead of 'sprints', 'work items' instead of 'issues'. That is a minor cognitive load for teams coming from other tools. The AI capabilities in Pages are mentioned but not detailed. The README does not specify which AI provider or how it is enabled. That is a point to verify before relying on that feature. Overall, the features are solid for a project management tool, but they are not radically different from what the commercial alternatives offer.

Licensing and its practical implications

Plane is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). This is a strong copyleft license. The key implication is that if you modify the source code and provide the software as a network service, you must make your modified source available to users of that service. This is different from the MIT or Apache licenses that many open-source tools use. For an internal deployment where you do not modify the code, the license has little practical effect. But if you plan to customize Plane for a commercial offering, or if your organization has strict policies about copyleft licenses, you need to consult a lawyer. The README also includes a security policy and an email address for reporting vulnerabilities. That is a positive sign for maintenance, but it does not change the licensing calculus. The license is a real factor in adoption, and it is worth stating clearly: AGPL is not permissive.

Limitations and failure modes

The most obvious limitation is the complexity of self-hosting. The README lists Docker and Kubernetes, but it does not give a one-line install command. You need to follow the deployment guides, and you need to manage a database and likely a reverse proxy. That is a significant operational burden for a small team. Another limitation is that the README does not mention any migration tools from Jira, Linear, or other platforms. If you are switching from a commercial tool, you will have to figure out how to import your existing issues and projects. The README also does not describe any integration with external services like Slack or GitHub. That may be in the docs, but it is not in the README. For teams that rely on such integrations, this is a gap to investigate. The 'preview' default branch suggests that the project is in active development, which means the API and features may change. That is a risk for production adoption. Finally, the AI features in Pages are opaque; you do not know what data is sent where. For privacy-sensitive teams, that is a red flag until documented.

Alternatives and how Plane differs

The obvious alternatives are the proprietary tools Plane claims to replace: Jira, Linear, Monday, and ClickUp. The key difference is that Plane is self-hostable and open source. That gives you control over data and infrastructure. A closer open-source alternative is Focalboard, which is a project management tool from Mattermost. Another alternative is OpenProject. Plane's compose file splits the product into web, admin, space, api, worker and migrator services, which is a more modular system. That modularity may make Plane more flexible for large deployments, but it also makes it harder to run. For a team that wants a quick, lightweight self-hosted tool, Plane is not the easiest choice. For a team that wants a full-featured platform and is willing to invest in operations, Plane is a strong candidate.

Maintenance and upgrade cost

The release history shows a steady cadence: v1.4.3-rc1 on 2026-10-06, v1.4.3-rc2 on 2026-10-23, and v1.4.3 on 2026-10-28. That suggests active development and regular releases. The default branch is 'preview', which means the code you clone may be ahead of the latest stable release. That is a maintenance consideration: you should use tagged releases, not the default branch, for production. The README does not mention a migration path for upgrades, but the Docker and Kubernetes guides likely cover that. The cost of maintenance includes keeping the Docker images up to date, applying security patches, and monitoring the health of the services. The AGPL license does not impose any maintenance obligations, but the project's activity level is a positive signal. However, you should not assume that the project will remain active forever. The README encourages community contributions, but that is not a guarantee. Before adopting, check the forum and the issue tracker for recent discussions about stability and upgrade issues.

Editorial conclusion

Adopt Plane if you need a self-hosted, open-source project management tool and your team can handle a Django-based stack with multiple services. Do not adopt it if you want a lightweight, single-binary installation or if AGPL-3.0 licensing is a problem for your organization. Before committing, verify your deployment path: use the Docker Compose or Kubernetes guides, test the God mode instance admin settings, and confirm that the feature set (cycles, modules, views, pages) matches your workflow. Plane is a serious alternative to commercial tools, but it is not a drop-in replacement for teams that need minimal operational overhead.

Frequently asked questions

How does Plane compare with Linear?

The project's own description names Jira, Linear, Monday and ClickUp as the tools it is an alternative to. What the repository adds is the deployment side: a self-hosting path with Docker Compose or Kubernetes, a licence of AGPL-3.0, and an instance-level admin control the project calls God mode.

How does Plane compare with Jira?

Plane presents itself as an open-source alternative to Jira and three other tools, covering work items, cycles with burn-down charts, modules, views, pages and analytics. The repository ships the deployment artefacts behind that: a compose file with web, admin, space, api, worker, beat-worker and migrator services among others, environment templates, and Kubernetes and Docker methods documented off-site.

Can I self-host Plane with Docker Compose?

Yes, Docker Compose is one of two documented self-hosting methods, the other being Kubernetes. The compose file at the repository root builds the web, admin and space front ends from their own Dockerfiles, and runs api, worker, beat-worker and migrator from the apps/api image.

What does Plane need to store file uploads?

Object storage, configured through the AWS variable names in the environment template. The example values point AWS_S3_ENDPOINT_URL at http://plane-minio:9000 with the bucket set to uploads, and FILE_SIZE_LIMIT is set to 5242880.

What licence is Plane released under?

AGPL-3.0, named both in the root README and in the license field of the root package.json. The licence text itself is in LICENSE.txt at the repository root.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
From the maintainers

Latest from the project

Release notes and posts syndicated from the project's own feed. Each link opens the original; nothing is rehosted here.

  • v1.5.0-rc2What's Changed [WEB-10027] fix: reject legacy file-asset POST and strip query from asset id by @pablohashescobar in #10216 [WEB-10025] fix: require active workspace members as project lead/assignee by @pablohashescobar in #10214 [WEB-10024] fix: restrict project entity search to…github.com · Nov 12, 2026
  • v1.5.0-rc1What's Changed chore: remove posthog integration and analytics scaffold by @sriramveeraghanta in #9634 chore: set issue type on GitHub issue templates by @sriramveeraghanta in #9559 [WEB-8789] Adopt @makeplane/propel as the design token source by @anmolsinghbhatia in #9682…github.com · Nov 10, 2026
  • v1.4.3🐞 Bug fixes Fixed voting on published work items that had no votes yet, which previously failed without registering the vote. Fixed archiving a cycle that has no end date. Fixed work item links being re-crawled on every update even when the URL had not changed. The REST API now…github.com · Oct 28, 2026
  • v1.4.3-rc2What's Changed [INFRA-1089] chore(deps): switch MinIO image to pgsty/silo (v1.4.3) by @sriramveeraghanta in #9963 [SECUR-247] fix(security): require project membership to publish (v1.4.3) by @sriramveeraghanta in #10034 Full Changelog : v1.4.3-rc1...v1.4.3-rc2github.com · Oct 23, 2026
  • v1.4.3-rc1Full Changelog : v1.4.2...v1.4.3-rc1github.com · Oct 6, 2026
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/makeplane-plane.svg)](https://hysenlabs.com/projects/makeplane-plane)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/makeplane-plane.svg)](https://hysenlabs.com/projects/makeplane-plane)

Was this useful?