Add a flag and listing page for recipes

Created on 30 March 2025, 11 days ago

Problem/Motivation

Recipes don't yet have a full spec for how they will be handled on Drupal.org, so in the meantime folks are posting them as general projects. This works functionally but there is no way to (relatively easily) search existing recipes.

Proposed resolution

Discussed with @hestenet at DrupalCon taking a minimal approach to this for now, to enable searching but without making many changes. That would be adding a flag to general projects so they can be marked as recipes, and creating a listing page similar to the Modules page where they can be searched.

This is just for finding on drupal.org, no changes are being requested for APIs.

Remaining tasks

  1. Add a flag to general projects to mark them as recipes
  2. Create a listing page showing projects flagged as recipes, similar to https://www.drupal.org/project/project_module , with filters for:
    1. Keyword search
    2. Category
Feature request
Status

Active

Version

3.0

Component

User interface

Created by

🇦🇺Australia pameeela

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @pameeela
  • 🇺🇸United States drumm NY, US

    A flag isn’t needed, we already have data on what’s a recipe since Add composer release type field Active

    Any listing will not have a chance to be good until Add tracking for when recipes from Drupal.org are applied Active moves forward. We can only sort by data we have, like alphabetical or last updated date.

  • 🇦🇺Australia pameeela

    Thanks @drumm, FWIW I definitely think there is value in having the listing page before that lands, as most recipes will be brand new for now. But I will try to move that forward as well.

  • 🇺🇸United States drumm NY, US

    @pameeela - Is there any part of 📌 Decide on naming convention on recipes Active that could move forward with this? For example, a way for recipe maintainers to select “Site starter” or “Site feature”?

    I see categories in the issue summary, does this mean they have the same https://www.drupal.org/docs/develop/managing-a-drupalorg-theme-module-or... categories as modules?

    The immediate next step will be adding a hidden field on general projects in D7 which rolls up the project’s releases’ composer types into a multivalued text field in anticipation of conditional field(s) for projects that have releases that are recipes. I initially thought this would be done only for search indexing, but we’ll likely want this data always available on general project nodes without rummaging through all releases.

    We’re tentatively planning on taking a little extra time to build the actual browsing pages on new.drupal.org from the start, rather than building it twice.

  • 🇦🇺Australia pameeela

    @drumm great question re: category, I was not even thinking, but of course the field is not on general projects.

    I'll try to get consensus on this. I do think the module categories will be applicable, as in many cases recipes are providing an optimised setup for a single module or a few modules.

    The separately, we can try to resolve the classification. I wouldn't block this on those tasks, but I think we should be able to decide at least on reusing the categories pretty quickly.

  • 🇺🇸United States drumm NY, US

    I’m thinking the same module categories would be good to have for consistency in browsing projects, whether there is a unified module & recipe search, or switching between the two modes.

  • 🇦🇺Australia pameeela

    Agreed, no objections raised on Slack either.

    • drumm committed 0afabad7 on 7.x-3.x
      Issue #3516327: Add hidden composer types field on general projects for...
    • drumm committed 5a011654 on 7.x-3.x
      Issue #3516327: Populate field_project_composer_types on release update
      
    • drumm committed 9adc2dfa on 7.x-3.x
      Issue #3516327: Add categories for general projects with drupal-recipe...
  • 🇺🇸United States drumm NY, US

    The work in D7 is done, maintainers with a release that is a recipe can select categories when they edit their project. (We are getting away from “project types” whenever we can, projects change types between releases.)

    We are building the recipe listing in new.drupal.org, so that part does not have to be built twice. The next step is Migrate new project_general fields for recipe browsing Active

Production build 0.71.5 2024