Configuration
After installing Open Intranet, you can customize it for your organization. This page covers the most common configuration tasks.
Site information
Section titled “Site information”Update your site name, email address, and slogan in the administration panel:
- Log in as administrator.
- Navigate to Configuration > System > Basic site settings (
/admin/config/system/site-information). - Update:
- Site name — displayed in the header and browser tab
- Site email — used as the “From” address for outgoing emails
- Slogan — optional tagline shown in the header area
- Front page — the default is
/news-homepage(the news feed); change this if you want a different landing page
User management
Section titled “User management”User registration
Section titled “User registration”By default, only administrators can create user accounts (admin_only registration). To change this:
- Go to Configuration > People > Account settings (
/admin/config/people/accounts). - Under Registration and cancellation, choose:
- Administrators only (default) — admin must create each account
- Visitors — anyone can register (useful for open intranets)
- Visitors, but administrator approval is required — users register but need admin approval
Adding users
Section titled “Adding users”To manually add users:
- Go to People (
/admin/people). - Click Add user.
- Fill in the username, email, password, and assign roles.
Open Intranet comes with these roles out of the box:
| Role | Permissions |
|---|---|
| Authenticated user | View content, comment, use reactions, bookmark, search, view documents, and access the employee directory |
| Content Editor | Create, edit, and delete content (news, events, KB pages, basic pages), manage media, and manage taxonomy |
| Administrator | Full access to all configuration, content, users, and modules |
Optional recipes may add additional roles (see Optional features below).
Email configuration
Section titled “Email configuration”Open Intranet uses Drupal’s mail system. For a production deployment, configure an SMTP server:
- Install an SMTP module (e.g. SMTP Authentication Support or Symfony Mailer) via Composer:
Terminal window ddev composer require drupal/smtpddev drush en smtp -y - Navigate to Configuration > System > SMTP Authentication Support and enter your mail server settings.
Without SMTP configuration, the site uses PHP’s built-in mail() function, which may not work reliably on all hosting environments.
Optional features
Section titled “Optional features”Open Intranet ships with optional features packaged as Drupal recipes. Each recipe adds a complete feature — content types, views, permissions, and sample content — in a single command.
Applying a recipe
Section titled “Applying a recipe”ddev drush recipe:apply recipes/<recipe_name>After applying a recipe, clear the cache:
ddev drush cache:rebuildAvailable recipes
Section titled “Available recipes”| Recipe | Command | What it adds |
|---|---|---|
| Courses | recipes/openintranet_courses | Learning management with courses, lessons, enrollment tracking, and progress indicators |
| FAQ | recipes/openintranet_faq | Frequently Asked Questions content type with a categorized listing page |
| Ideas | recipes/openintranet_ideas | Idea submission and voting system — employees can propose ideas and vote on them |
| Inventory | recipes/openintranet_inventory | Asset and inventory tracking with items, locations, and assignments |
| Kanban Board | recipes/openintranet_kanban | Kanban-style task board for visual project management (experimental) |
| Kudos | recipes/openintranet_kudos | Peer recognition system — send kudos to colleagues |
| Room Booking | recipes/openintranet_rmb | Room and resource booking with a calendar view; adds a Room Manager role |
| SSO: Keycloak | recipes/openintranet_sso_keycloak | Single Sign-On via Keycloak using OpenID Connect |
| Consultation Process | recipes/consultation_process | Structured consultation workflow with ECA automation; adds reviewer roles |
| Demo Content | recipes/default_content | Sample content (news, events, KB pages, users, groups) for evaluation and testing |
Single Sign-On (SSO)
Section titled “Single Sign-On (SSO)”To integrate with your organization’s identity provider (IdP), apply the Keycloak SSO recipe:
ddev drush recipe:apply recipes/openintranet_sso_keycloakddev drush cache:rebuildThen configure the OpenID Connect settings:
- Go to Configuration > People > OpenID Connect (
/admin/config/people/openid-connect). - Enable the Keycloak provider.
- Enter your Keycloak server details:
- Client ID
- Client secret
- Keycloak base URL
- Realm
- Save and test the login flow.
Theme customization
Section titled “Theme customization”Open Intranet uses a Bootstrap Barrio subtheme with SCSS. The starter theme is located in web/themes/custom/openintranet_theme/.
To customize the look and feel:
- Edit SCSS files in the theme’s
scss/directory. - Compile with the included Gulp setup:
Terminal window cd web/themes/custom/openintranet_themenpm installnpx gulp - Adjust theme settings at Appearance > Open Intranet Theme > Settings.
Key customization options:
- Logo — upload your company logo via the theme settings page
- Favicon — replace the default favicon
- Colors — edit SCSS variables in
scss/_variables.scss - Layout — Bootstrap Barrio supports various layout options (sidebar position, container width)
Search configuration
Section titled “Search configuration”Open Intranet uses Search API with a database backend. Search is ready to use out of the box, but you may want to adjust it:
- Go to Configuration > Search and metadata > Search API (
/admin/config/search/search-api). - The default index covers all major content types.
- To reindex content manually:
Terminal window ddev drush search-api:index
For large installations, consider replacing the database backend with Solr for better performance.
Cron and scheduled tasks
Section titled “Cron and scheduled tasks”Drupal relies on cron for background tasks (search indexing, email sending, cache cleanup). Configure cron to run regularly:
Using DDEV (local development)
Section titled “Using DDEV (local development)”DDEV includes a cron add-on. To enable it:
ddev get ddev/ddev-cronddev restartUsing system cron (production)
Section titled “Using system cron (production)”Add a cron job that runs every 15 minutes:
*/15 * * * * cd /path/to/openintranet && vendor/bin/drush cronManual cron run
Section titled “Manual cron run”ddev drush cronBackups
Section titled “Backups”Open Intranet includes the Backup and Migrate module. Configure regular backups at Administration > Configuration > Development > Backup and Migrate (/admin/config/development/backup_migrate).
For DDEV-based environments, you can also use:
ddev export-db --file=backup.sql.gzPerformance (production)
Section titled “Performance (production)”For production deployments, enable Drupal’s built-in caching:
- Go to Configuration > Development > Performance (
/admin/config/development/performance). - Enable Page caching and set a max-age (e.g. 3600 seconds).
- Enable CSS and JavaScript aggregation.
Next steps
Section titled “Next steps”- User Guide — learn how to use the intranet features
- Creating Content — how to create news, events, and knowledge base pages