Project Browser

Provides a user interface for browsing, searching, and installing Drupal modules, themes, and recipes from within the Drupal admin interface.

project_browser
8,071 sites
80
drupal.org

Install

Drupal 11, 10 v2.0.2
composer require 'drupal/project_browser:^2.0'

Overview

Project Browser (PB) makes it possible to find and install modules, themes, and recipes directly within your Drupal installation. It removes the need to leave the admin UI and visit Drupal.org to discover and install projects, providing a more intuitive experience than the module listing on Drupal.org.

The module queries the Drupal.org API in real-time to ensure that the content is up to date, displaying only projects compatible with your site. Enhanced filtering capabilities provide a streamlined view of available projects, including filtering by category, maintenance status, security coverage, and development status.

Project Browser features a modern Svelte-based frontend with a responsive grid or list view, pagination, and detailed project information including screenshots, descriptions, and usage statistics. It supports multiple project sources through a plugin architecture, allowing browsing of contributed modules from Drupal.org, core modules, locally installed modules, and recipes.

When Package Manager (from Automatic Updates) is installed, Project Browser can also download and install modules directly from the UI, providing a complete end-to-end module discovery and installation experience without requiring command-line access.

Features

  • Browse contributed modules from Drupal.org in real-time with only compatible modules displayed
  • Browse and enable Drupal core modules with categorization by package
  • Browse locally installed modules (already downloaded via Composer)
  • Browse and apply Drupal recipes from core and custom sources
  • Browse curated recommended add-ons from configurable sources
  • Modern Svelte.js-based responsive frontend with grid and list views
  • Advanced filtering by categories, security coverage, maintenance status, and development status
  • Multiple sort options including relevance, alphabetical, newest, and popularity
  • Detailed project view with screenshots, full descriptions, and usage statistics
  • UI-based module installation when Package Manager is enabled (experimental)
  • Extensible plugin architecture for custom project sources
  • Block-based display allowing Project Browser to be placed anywhere
  • Composer command generation for manual installation
  • Integration with Drupal recipes system including input form handling
  • Drush command for clearing stored project data
  • Caching system for improved performance

Use Cases

Site Builder Module Discovery

Site builders can browse the complete Drupal.org module catalog directly from their site's admin interface. Filter by category (e.g., Commerce, SEO, Media) and security coverage to find modules that meet project requirements. View detailed descriptions, screenshots, and usage statistics without leaving the Drupal admin.

Non-Technical User Module Installation

For sites with Package Manager installed, non-technical users or content administrators can install modules through the UI without command-line access. Select modules from the browser, click Install, and Project Browser handles the Composer require and module enabling automatically.

Core Module Management

Administrators can browse all available Drupal core modules organized by package. Quickly find and enable core functionality like Views, Media, or Workflows without searching through the standard module list.

Recipe Application

Browse and apply Drupal recipes from core and contributed sources. Recipes provide pre-configured functionality bundles. Project Browser handles recipe input collection and applies recipes with proper checkpointing for rollback capability.

Custom Module Catalog

Organizations can create custom Project Browser source plugins to expose internal module catalogs, approved module lists, or third-party repositories. The plugin architecture allows integration with any data source.

Hosting Provider Recommendations

Hosting providers or Drupal distributions can configure the Recommended source to display curated module recommendations to their customers, guiding them toward tested and supported modules.

Tips

  • Use the 'Most relevant' sort option when searching to get the best matches for your search terms
  • Enable only the source plugins you need in settings to reduce clutter and improve performance
  • The grid view shows more projects at once, while list view provides more detail per project
  • For large sites, consider disabling UI installation and use Composer directly for better control
  • Project Browser caches results for 24 hours by default; use the Actions tab to force refresh if needed
  • Create custom source plugins to integrate with internal module catalogs or approved module lists
  • The Project Browser block can be placed on dashboards for quick access to project discovery

Technical Details

Admin Pages 3
Browse projects /admin/modules/browse/{source}

Main project browsing interface where users can search, filter, and discover available Drupal modules, themes, and recipes. The page displays a responsive grid or list of projects with filtering options, pagination, and detailed project information. Users can view project details in a modal, see composer commands for installation, and if Package Manager is enabled, install projects directly from the UI.

Project Browser Settings /admin/config/development/project_browser

Configure which project sources are enabled and their display order. Enable or disable UI-based installation capability. Manage the sources that Project Browser queries for projects.

Project Browser Actions /admin/config/development/project_browser/actions

Administrative actions for Project Browser including clearing cached project data from all sources.

Permissions 2
Administer modules

Required to browse and install projects via Project Browser. Users with this permission can access the Browse tab under Extend.

Administer site configuration

Required to configure Project Browser settings, including enabling/disabling source plugins and UI installation options.

Hooks 1
hook_project_browser_source_info_alter

Alter the Project Browser source plugin definitions discovered by the plugin manager.

Drush Commands 1
drush project-browser:storage-clear

Clears all stored project data from Project Browser sources. Useful for forcing fresh data retrieval or troubleshooting caching issues.

Troubleshooting 5
Project Browser shows 'Error querying data' or empty results

Check your server's ability to connect to drupal.org. Verify no firewall rules are blocking outbound HTTPS requests. Check the Drupal error log (Reports > Recent log messages) for detailed error information. Try clearing Project Browser storage at /admin/config/development/project_browser/actions.

UI Install option is disabled/grayed out

UI installation requires Package Manager version 2.5 or newer from the Automatic Updates module. Install and enable automatic_updates module, then the option will become available in Project Browser settings.

Module installation fails with sandbox lock error

Another installation process may be in progress. Wait a few minutes and try again. If the problem persists, use the unlock link provided in the error message, or visit /admin/modules/project_browser/install/unlock to manually unlock the installation process.

Categories or filters are not loading

Clear Project Browser cache by going to /admin/config/development/project_browser/actions and clicking 'Clear storage'. Also try clearing Drupal's cache via drush cr or admin/config/development/performance.

Recipes tab not showing recipes

Ensure recipes are installed in the correct location. Core recipes are in core/recipes/. Contributed recipes should be installed where Composer is configured to place them (check installer-paths in composer.json). Clear Project Browser storage after adding new recipes.

Security Notes 6
  • Project Browser respects Drupal's permission system - only users with 'administer modules' can browse and install projects
  • UI installation requires both 'administer modules' permission and Package Manager being enabled in settings
  • Security coverage filter is enabled by default to show only modules covered by Drupal's security advisory policy
  • All API requests to drupal.org are made server-side, not exposing any credentials or tokens
  • Installation sandbox is automatically cleaned up after successful or failed installations
  • Recipe application creates a checkpoint that can be used for rollback if issues occur