Skip to content

Introduction

Open Intranet is an open source intranet platform that brings together news, knowledge, documents, people and data from your existing systems — with full data ownership and unlimited customisation. It is free, self-hostable, and built as a Drupal distribution, which means it inherits the entire Drupal ecosystem.

Open Intranet is designed for organisations that need:

  • Full control over their data and infrastructure — on-prem, private cloud, or any hosting that supports PHP
  • No per-user licensing fees — the software itself is free and always will be
  • Enterprise features out of the box — SSO/OIDC, must-read tracking, engagement analytics, AI-assisted content, room booking, knowledge base
  • Long-term extensibility through Drupal’s ecosystem of contributed modules — built for 5+ year deployments without vendor lock-in

It scales from small teams (50–100 employees) running it as-is, to enterprises with 7,000+ users running heavily customised implementations.

Open Intranet installation is a Drupal distribution - what that means

Section titled “Open Intranet installation is a Drupal distribution - what that means”

Open Intranet is technically a Drupal install profile bundled with a curated set of contributed modules, a starter theme and a collection of recipes (reusable Drupal config + content bundles). When you install Open Intranet, you are installing a regular Drupal site that has been pre-configured to behave as an intranet.

Drupal is a fantastic foundation for intranets because it offers:

  • Fine-grained permissions — combine roles, per-entity access, per-group and per-department visibility to model any organisational structure.
  • Battle-tested security — governments, banks and public institutions have run Drupal for 20+ years; the Drupal Security Team triages CVEs and ships advisories on a fixed schedule.
  • Unlimited extensibility — pick from ~50,000 contributed modules, or write your own with Drupal’s plugin types, hooks, events and services to bend the platform to any internal process without rebuilding from scratch.

Once installed, Open Intranet behaves exactly like any other Drupal site. The administrative UI is Drupal’s, the content model uses Drupal entities (nodes, users, media, taxonomy terms, files, groups), the templating layer is Twig, the configuration system is Drupal’s YAML-based configuration management, and the command-line tooling is drush.

There is no proprietary admin layer sitting on top of Drupal. There is no closed format, no parallel data store, no SaaS API contract. Everything is in the database and the codebase that you own.

The practical consequence is that everything you can do on a Drupal site, you can do on Open Intranet:

  • Add custom content types, fields, taxonomies, views, blocks and menus through the admin UI
  • Override Twig templates and CSS in your own theme to match your brand
  • Use Drupal’s permission and role system for access control
  • Hook into events with ECA (no-code business rules) or with custom modules
  • Manage configuration in code with the standard Drupal config-export workflow
  • Run any standard Drupal contrib module alongside Open Intranet’s stack

Drupal.org has roughly 50,000 contributed modules. Most are GPL-compatible, security-tracked and trivially installed with Composer. Because Open Intranet is just a Drupal site, all of these are available to extend it.

Open Intranet ships with around 80 contributed modules pre-selected and pre-configured for an intranet workload. Names you may recognise:

AreaPre-shipped modules
AIai, ai_provider_openai, ai_agents, alpine_js
Editorial UXgin, gin_toolbar, coffee, frontend_editing, autosave_form, diff, entity_clone, book
Content authoringckeditor5_allowed_html, ckeditor_iframe, ckeditor_media_resize, smart_trim, token, pathauto, auto_entitylabel
Forms & workflowswebform, eca, bpmn_io, field_group, inline_entity_form
Permissions & accessconfig_perms, flexible_permissions, masquerade, anonymous_redirect, autologout, private_files_download_permission
Identity / SSOopenid_connect, noreqnewpass
Searchsearch_api, search_api_solr, easy_breadcrumb, simple_sitemap
Calendar & eventscalendar_view, fullcalendar_view, leaflet
Views power-upsbetter_exposed_filters, views_aggregator, views_conditional, views_kanban, views_organization_chart, views_send
Layout & themingbootstrap_sass, layout_builder_styles, layout_custom_section_classes, twig_tweak, dashboard, theme_switcher
Mediafocal_point, imagemagick, imce, iconify_field
Messagingsmsapi, flag
Engagement & socialvotingapi, votingapi_reaction, recently_read, statistics, gtm
Operationalautomatic_updates, backup_migrate, queue_ui, recipe_tracker, tour, project_browser
Open Intranet customopenintranet_access, openintranet_documents, openintranet_engagement, openintranet_messenger

The full list lives in composer.json on drupal.org.

Beyond what is already shipped, you can composer require any of the ~50,000 modules on drupal.org. Categories that come up often on intranet projects:

CategoryCommon modules to addUse case
AI extensionsadditional ai_provider_* packages, custom agents on top of ai_agentsSwap from OpenAI to Anthropic / Mistral / on-prem LLM, add domain-specific agents
Identity / SSOsimple_oidc, samlauth, ldapMicrosoft Entra ID / Azure AD, Okta, Google Workspace, Keycloak, on-prem AD
Authenticationtfa, password_policyTwo-factor auth, enterprise password rules
API / decoupledjsonapi_extras, simple_oauth, graphql, rest_api_authenticationMobile apps, headless front-ends, third-party integrations
MultilingualDrupal core + tmgmtGlobal organisations, translation workflows
Compliance / GDPRgdpr, auditfiles, auto_purgeRight-to-be-forgotten, data retention, audit logs
Searchsearch_api, search_api_solr, search_api_meilisearchSolr / Meilisearch / Elasticsearch swap-ins
Workflow / BPMworkflows, content_moderation, bpmn_ioHR approval flows, document review, change requests
Integrationsgoogle_api_client, microsoft_graph, migrate_plusMicrosoft 365, Google Workspace, HR/CRM/ERP imports
Performanceredis, memcache, big_pipeCaching layer for thousands of concurrent users
Backup / DRbackup_migrateScheduled DB + files backups

Finding modules that meet your need can be achieved by browsing drupal.org/project/project_module/ pages, but often a Google search or LLM discussion will give you what you what you need faster.

To add new modules to your isntallation run: composer require drupal/<module> then enable in the admin UI or via drush en <module>.

You can use Drupal recipes for repeatable customisation

Section titled “You can use Drupal recipes for repeatable customisation”

Open Intranet ships several optional recipes (e.g. Room Booking, Courses, FAQ, Ideas, Inventory, Kanban, Kudos, SSO Keycloak, Demo Content) that bundle config + content + dependencies for a specific use case and can be applied with one click at /admin/modules/browse/recipes.

You can author your own recipes for company-specific configuration (e.g. “internal-policies-suite” — your own content types, workflows, default permissions and demo content) and apply them to any Open Intranet instance — staging, production, a new department site — without copy-pasting configuration.

You can host Open Intranet anywhere PHP runs

Section titled “You can host Open Intranet anywhere PHP runs”

Because Open Intranet is “just” a Drupal site:

There is no SaaS lock-in: you can move between hosting providers by moving the codebase, the database and binary files.

Updates are the same as any Drupal project — composer update, run database updates with drush updb -y, clear caches with drush cr. Security advisories are tracked at drupal.org/security and apply to every component in the stack.

You can pin versions, apply patches with cweagans/composer-patches (already included), and run staging/production from the same composer.lock.

Read this documentation. It focuses on Open Intranet specifics and some Drupal basics. It specifically tries not to duplicate Drupal documentation and does so only when it is required to maintain logic and understanding. For general Drupal mechanics (entities, fields, views, plugin types, hooks, services), follow the links to drupal.org

Because Open Intranet is a regular Drupal site, the entire upstream Drupal documentation applies. Useful starting points for non-Drupal teams:

  • Installation — production install on Linux, plus a quick local-dev path with DDEV
  • Configuration — site name, email, recipes, SSO, theme
  • User Guide — how end users interact with the intranet
  • Features — deep dives into Engagement Analytics, Must-Read, Room Booking and more
  • REST API — JSON:API reference for integrating with external systems