MCPSERV.CLUB
OpenProject

OpenProject

Self-Hosted

Collaborative project management for secure, on‑premises teams

Active(100)
12.9kstars
0views
Updated 3 days ago
OpenProject screenshot 1
1 / 5

Overview

Discover what makes OpenProject powerful

OpenProject is a fully self‑hosted, open‑source platform for end‑to‑end project management. From a technical standpoint it exposes a rich REST/GraphQL API, integrates natively with GitHub and other VCS tools, and supports both classic Gantt‑style planning and Agile/Scrum workflows. The core of the application is written in Ruby on Rails, leveraging the Rails MVC paradigm for rapid feature development while maintaining a clean separation of concerns. Data persistence is handled by PostgreSQL, which offers robust ACID guarantees and advanced JSONB support for storing flexible work‑package attributes. The front end is a modern JavaScript SPA built with Vue.js, communicating via JSON over HTTPS and utilizing WebSockets for real‑time updates.

Backend

Database

Frontend

Containerization

Overview

OpenProject is a fully self‑hosted, open‑source platform for end‑to‑end project management. From a technical standpoint it exposes a rich REST/GraphQL API, integrates natively with GitHub and other VCS tools, and supports both classic Gantt‑style planning and Agile/Scrum workflows. The core of the application is written in Ruby on Rails, leveraging the Rails MVC paradigm for rapid feature development while maintaining a clean separation of concerns. Data persistence is handled by PostgreSQL, which offers robust ACID guarantees and advanced JSONB support for storing flexible work‑package attributes. The front end is a modern JavaScript SPA built with Vue.js, communicating via JSON over HTTPS and utilizing WebSockets for real‑time updates.

Architecture

  • Backend: Ruby on Rails 7.x, using the ActiveRecord ORM. The service layer is modularized into domain‑specific engines (e.g., work_packages, timesheets) that can be swapped or extended. Background jobs are processed with Sidekiq, backed by Redis for queuing and pub/sub.
  • Database: PostgreSQL 13+; schemas are versioned with Rails migrations. Large binary assets (e.g., attachments) can be stored in S3-compatible object stores via ActiveStorage.
  • Frontend: Vue.js 3 with a component library that mirrors the Rails view layer. The SPA consumes a token‑based authentication system (JWT or OAuth2) and supports server‑side rendering for SEO and performance.
  • Containerization: Official Docker images are provided; the docker-compose.yml includes services for Rails, PostgreSQL, Redis, and Nginx. Kubernetes manifests are also available, making it straightforward to deploy on any cloud provider or bare‑metal cluster.

Core Capabilities

  • Work Packages & Agile Boards: Exposes CRUD endpoints for tasks, epics, and stories. Kanban boards are rendered client‑side with drag‑and‑drop support.
  • Roadmaps & Releases: API endpoints for milestones, versions, and release notes. Webhooks can be used to trigger CI pipelines.
  • Time Tracking & Billing: Time entries are stored in a dedicated table; the API allows aggregation by project, user, or custom fields.
  • Wikis & Forums: Markdown‑based content stored in PostgreSQL; endpoints support CRUD and revision history.
  • GitHub Integration: Webhook listeners automatically link pull requests to work packages, and a REST endpoint can fetch PR status.
  • Extensibility: A plugin framework allows developers to add new modules, UI components, or modify the data model. The API is versioned and documented with OpenAPI specs.

Deployment & Infrastructure

  • Self‑Hosting: Requires a Linux host with Ruby, Node.js (for asset compilation), PostgreSQL, and Redis. The Docker images encapsulate all dependencies.
  • Scalability: Horizontal scaling is achieved by running multiple Rails workers behind a load balancer; Sidekiq can be replicated across nodes. PostgreSQL can be set up in a master‑replica configuration for read scaling.
  • High Availability: The Docker Compose setup supports clustering with Docker Swarm or Kubernetes. Health checks and rolling updates are baked into the CI pipeline.
  • Backup & Restore: PostgreSQL dumps can be automated; ActiveStorage supports external back‑ups to cloud buckets.

Integration & Extensibility

  • REST/GraphQL APIs: Fully authenticated, supporting pagination, filtering, and bulk operations. Swagger UI is available in the admin panel.
  • Webhooks: Emit events for creation, update, and deletion of work packages; consumers can subscribe to specific event types.
  • OAuth2 & SSO: Supports LDAP, SAML, and OpenID Connect for enterprise authentication.
  • Plugins: Developers can write Ruby gems that hook into the Rails engine, expose new routes, or add UI widgets. The plugin system is documented with code samples and a “Plugin Quick Start” guide.

Developer Experience

  • Configuration: Uses environment variables for all major settings; a config/settings.yml file provides defaults. The rails console gives instant access to the data model.
  • Documentation: Comprehensive online docs, including a “Developer Guide” that covers API usage, plugin development, and testing. Community forums and a public issue tracker foster rapid feedback.
  • Testing: The codebase follows RSpec conventions; integration tests cover API endpoints and background jobs. Continuous integration runs on GitHub Actions.
  • Community: Active mailing lists, Slack channels, and a quarterly conference keep contributors engaged. The project’s GPLv3 license encourages modification and redistribution.

Use Cases

  1. Enterprise PMO – Deploy on‑premises to keep all project data within corporate firewalls, while integrating with internal GitHub Enterprise and JIRA for issue tracking.
  2. Agile Studio – Spin up a Docker‑based instance for a small team; leverage the Kanban board API to build custom dashboards in React or Angular.
  3. Consulting Firm – Use the plugin system to add a custom cost‑reporting module that pulls data from external ERP systems via REST.
  4. Open Source Projects – Host a public instance that automatically links GitHub PRs to work packages, enabling community members to track progress in a self‑hosted environment.

Advantages

  • Open Source & GPLv3: Full source visibility, no vendor lock‑in, and the freedom to modify core behavior.
  • Feature‑Rich

Open SourceReady to get started?

Join the community and start self-hosting OpenProject today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
development-tools
License
GPL-3.0
Stars
12.9k
Technical Specs
Pricing
Open Source
Database
PostgreSQL
Docker
Official
Supported OS
LinuxDocker
Author
opf
opf
Last Updated
3 days ago