{"jsonapi":{"version":"1.0","meta":{"links":{"self":{"href":"http:\/\/jsonapi.org\/format\/1.0\/"}}}},"data":[{"type":"node--project_module","id":"4655895d-2bdb-45c1-afc5-58bd6dfcfae5","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5?resourceVersion=id%3A20006058"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":106016,"status":true,"title":"Token","created":"2006-12-31T01:44:38+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Provides placeholder variables (tokens) and an interface for browsing available tokens. As records are displayed, contextual values are replaced, such as [node:title] or [user:name].\r\n\r\nSee \u003Ca href=\u0022http:\/\/groups.drupal.org\/node\/6795\u0022\u003Efull list of modules that use or provide tokens\u003C\/a\u003E or the \u003Ca href=\u0022http:\/\/drupal.org\/project\/issues\/search?issue_tags=token\u0026status[]=Open\u0022\u003Elist of open issues tagged with \u0027token\u0027\u003C\/a\u003E.\r\n\r\n\u003Ch3\u003EPledges\u003C\/h3\u003E\r\n\r\n\u003Ca href=\u0022http:\/\/groups.drupal.org\/node\/66323\u0022\u003E#D7AX\u003C\/a\u003E - I pledge to make this module as accessible as it can be. If you find any flaws, please \u003Ca href=\u0022http:\/\/drupal.org\/node\/add\/project-issue\/token\u0022\u003Esubmit an issue and tag it D7AX\u003C\/a\u003E. Help me fix them if you can.","format":"1","processed":"\u003Cp\u003EProvides placeholder variables (tokens) and an interface for browsing available tokens. As records are displayed, contextual values are replaced, such as [node:title] or [user:name].\u003C\/p\u003E\n\u003Cp\u003ESee \u003Ca href=\u0022http:\/\/groups.drupal.org\/node\/6795\u0022 rel=\u0022nofollow\u0022\u003Efull list of modules that use or provide tokens\u003C\/a\u003E or the \u003Ca href=\u0022http:\/\/drupal.org\/project\/issues\/search?issue_tags=token\u0026amp;status[]=Open\u0022 rel=\u0022nofollow\u0022\u003Elist of open issues tagged with \u0027token\u0027\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ch3\u003EPledges\u003C\/h3\u003E\n\u003Cp\u003E\u003Ca href=\u0022http:\/\/groups.drupal.org\/node\/66323\u0022 rel=\u0022nofollow\u0022\u003E#D7AX\u003C\/a\u003E - I pledge to make this module as accessible as it can be. If you find any flaws, please \u003Ca href=\u0022http:\/\/drupal.org\/node\/add\/project-issue\/token\u0022 rel=\u0022nofollow\u0022\u003Esubmit an issue and tag it D7AX\u003C\/a\u003E. Help me fix them if you can.\u003C\/p\u003E","summary":"Provides placeholder variables (tokens) and an interface for browsing available tokens. As records are displayed, contextual values are replaced, such as [node:title] or [user:name]."},"field_active_installs":"{\u00228.x-1.x\u0022:353157}","field_active_installs_total":353157,"field_composer_namespace":"drupal\/token","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/token\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"token","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1bf99aff-4392-4ce9-bf72-e80f205b62f5","meta":{"drupal_internal__target_id":53892}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/uid?resourceVersion=id%3A20006058"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/relationships\/uid?resourceVersion=id%3A20006058"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/field_development_status?resourceVersion=id%3A20006058"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/relationships\/field_development_status?resourceVersion=id%3A20006058"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/field_maintenance_status?resourceVersion=id%3A20006058"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/relationships\/field_maintenance_status?resourceVersion=id%3A20006058"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"81212413-80b0-44d6-84fb-9078baa7ab25","meta":{"drupal_internal__target_id":198}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/field_module_categories?resourceVersion=id%3A20006058"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/relationships\/field_module_categories?resourceVersion=id%3A20006058"}}},"field_project_images":{"data":[{"type":"file--file","id":"ca6b21f7-76aa-4854-8279-f159be352dc2","meta":{"alt":"","title":null,"width":901,"height":901,"drupal_internal__target_id":17404}},{"type":"file--file","id":"f9370e41-0f06-4819-9a84-b9ca51ed6e41","meta":{"alt":"Token browser in Drupal 8","title":null,"width":2046,"height":1428,"drupal_internal__target_id":17405}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/field_project_images?resourceVersion=id%3A20006058"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/4655895d-2bdb-45c1-afc5-58bd6dfcfae5\/relationships\/field_project_images?resourceVersion=id%3A20006058"}}}}},{"type":"node--project_module","id":"74ebe8d7-c359-4e8e-a770-36bc271e89fe","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe?resourceVersion=id%3A20005268"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":17345,"status":true,"title":"Pathauto","created":"2005-02-15T00:06:25+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"The Pathauto module automatically generates URL\/path aliases for various kinds of content (nodes, taxonomy terms, users) without requiring the user to manually specify the path alias. This allows you to have URL aliases like \u003Cem\u003E\/category\/my-node-title\u003C\/em\u003E instead of \u003Cem\u003E\/node\/123\u003C\/em\u003E.  The aliases are based upon a \u0022pattern\u0022 system that uses tokens which the administrator can change.\r\n\r\n\u003C!--break--\u003E\r\n\r\n\u003Ch3\u003EDrupal 8+ Requirements\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\r\n \u003Cli\u003E\u003Cdel\u003ECTools\u003C\/del\u003E, removed in 8.x-1.11, still required in composer.json for BC reasons, see \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/pathauto\/releases\/8.x-1.11\u0022\u003Erelease notes\u003C\/a\u003E for more information.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EDrupal 7 Requirements\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EKnown issues\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003ED7: Multilingual URL alias support is still a little unstable and should be tested before used in production. See this issue in core [#269877] which is very important and needs more coders\/testers\/reviewers. There is also a list of \u003Ca href=\u0022http:\/\/drupal.org\/project\/issues\/pathauto?text=\u0026status=Open\u0026priorities=All\u0026categories=All\u0026version=All\u0026component=I18n+stuff\u0022\u003Eissues related to i18n in Pathauto\u003C\/a\u003E which needs someone to help triage, test, review, and write fixes.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ERecommended modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/redirect\u0022\u003ERedirect (D7, D8)\u003C\/a\u003E when installed Pathauto will provide a new \u0022Update Action\u0022 in case your URLs change. \u003Cem\u003EThis is the recommended update action and is considered the best practice for SEO and usability.\u003C\/em\u003E\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/subpathauto\u0022\u003ESub-pathauto (D7, D8)\u003C\/a\u003E provides a way to use one alias for multiple URLs as long as the so that \u0022node\/1\u0022 is aliased to \u0022about-my-site\u0022 then you can use \u0022about-my-site\/edit\u0022 to access \u0022node\/1\/edit\u0022. Neat!\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/globalredirect\u0022\u003EGlobal Redirect (D7)\u003C\/a\u003E ensures that your content is only visiable at the one, best URL possible (i.e. requests for node\/2 are forwarded to \u0022alias-for-node-2\u0022). This is part of Redirect in D8.\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/pathologic\u0022\u003EPathologic\u003C\/a\u003E (untested, but may help with updating outdated links in existing content)\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/transliteration\u0022\u003ETransliteration (D7)\u003C\/a\u003E is useful if your site is likely contain characters beyond ASCII 128 and you want them transliterated into ASCII 128. In Drupal 8, Pathauto uses the API provided by Drupal core.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ECo-Maintainers\u003C\/h3\u003E\r\nPathauto was originally written by \u003Ca href=\u0022http:\/\/drupal.org\/user\/4420\u0022\u003Emikeryan\u003C\/a\u003E and maintained by \u003Ca href=\u0022http:\/\/drupal.org\/user\/36762\u0022\u003EGreg Knaddison (greggles)\u003C\/a\u003E. It is currently co-maintained by \u003Ca href=\u0022http:\/\/drupal.org\/user\/27504\u0022\u003EFrederik \u0027Freso\u0027 S. Olesen\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/drupal.org\/user\/53892\u0022\u003EDave Reid\u003C\/a\u003E.\r\n\r\nThe Drupal 8 version is maintained by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/berdir\u0022\u003ESascha Grossenbacher (Berdir)\u003C\/a\u003E.\r\n\r\nCredits: Logo by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/grienauer\u0022\u003ENico Grienauer (Grienauer)\u003C\/a\u003E.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EThe Pathauto module automatically generates URL\/path aliases for various kinds of content (nodes, taxonomy terms, users) without requiring the user to manually specify the path alias. This allows you to have URL aliases like \u003Cem\u003E\/category\/my-node-title\u003C\/em\u003E instead of \u003Cem\u003E\/node\/123\u003C\/em\u003E.  The aliases are based upon a \u0022pattern\u0022 system that uses tokens which the administrator can change.\u003C\/p\u003E\n\u003Ch3 id=\u0022drupal-8-requirements\u0022\u003EDrupal 8+ Requirements\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022 rel=\u0022nofollow\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Cdel\u003ECTools\u003C\/del\u003E, removed in 8.x-1.11, still required in composer.json for BC reasons, see \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/pathauto\/releases\/8.x-1.11\u0022 rel=\u0022nofollow\u0022\u003Erelease notes\u003C\/a\u003E for more information.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022drupal-7-requirements\u0022\u003EDrupal 7 Requirements\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022 rel=\u0022nofollow\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022known-issues\u0022\u003EKnown issues\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003ED7: Multilingual URL alias support is still a little unstable and should be tested before used in production. See this issue in core [#269877] which is very important and needs more coders\/testers\/reviewers. There is also a list of \u003Ca href=\u0022http:\/\/drupal.org\/project\/issues\/pathauto?text=\u0026amp;status=Open\u0026amp;priorities=All\u0026amp;categories=All\u0026amp;version=All\u0026amp;component=I18n+stuff\u0022 rel=\u0022nofollow\u0022\u003Eissues related to i18n in Pathauto\u003C\/a\u003E which needs someone to help triage, test, review, and write fixes.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022recommended-modules\u0022\u003ERecommended modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/redirect\u0022 rel=\u0022nofollow\u0022\u003ERedirect (D7, D8)\u003C\/a\u003E when installed Pathauto will provide a new \u0022Update Action\u0022 in case your URLs change. \u003Cem\u003EThis is the recommended update action and is considered the best practice for SEO and usability.\u003C\/em\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/subpathauto\u0022 rel=\u0022nofollow\u0022\u003ESub-pathauto (D7, D8)\u003C\/a\u003E provides a way to use one alias for multiple URLs as long as the so that \u0022node\/1\u0022 is aliased to \u0022about-my-site\u0022 then you can use \u0022about-my-site\/edit\u0022 to access \u0022node\/1\/edit\u0022. Neat!\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/globalredirect\u0022 rel=\u0022nofollow\u0022\u003EGlobal Redirect (D7)\u003C\/a\u003E ensures that your content is only visiable at the one, best URL possible (i.e. requests for node\/2 are forwarded to \u0022alias-for-node-2\u0022). This is part of Redirect in D8.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/pathologic\u0022 rel=\u0022nofollow\u0022\u003EPathologic\u003C\/a\u003E (untested, but may help with updating outdated links in existing content)\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/transliteration\u0022 rel=\u0022nofollow\u0022\u003ETransliteration (D7)\u003C\/a\u003E is useful if your site is likely contain characters beyond ASCII 128 and you want them transliterated into ASCII 128. In Drupal 8, Pathauto uses the API provided by Drupal core.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022co-maintainers\u0022\u003ECo-Maintainers\u003C\/h3\u003E\n\u003Cp\u003EPathauto was originally written by \u003Ca href=\u0022http:\/\/drupal.org\/user\/4420\u0022 rel=\u0022nofollow\u0022\u003Emikeryan\u003C\/a\u003E and maintained by \u003Ca href=\u0022http:\/\/drupal.org\/user\/36762\u0022 rel=\u0022nofollow\u0022\u003EGreg Knaddison (greggles)\u003C\/a\u003E. It is currently co-maintained by \u003Ca href=\u0022http:\/\/drupal.org\/user\/27504\u0022 rel=\u0022nofollow\u0022\u003EFrederik \u0027Freso\u0027 S. Olesen\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/drupal.org\/user\/53892\u0022 rel=\u0022nofollow\u0022\u003EDave Reid\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003EThe Drupal 8 version is maintained by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/berdir\u0022 rel=\u0022nofollow\u0022\u003ESascha Grossenbacher (Berdir)\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003ECredits: Logo by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/grienauer\u0022 rel=\u0022nofollow\u0022\u003ENico Grienauer (Grienauer)\u003C\/a\u003E.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Automatically generate URL aliases for any entity (such as content and terms). Define conditional patterns for consistent aliases. Bulk generate and delete existing aliases."},"field_active_installs":"{\u00228.x-1.x\u0022:319110}","field_active_installs_total":319110,"field_composer_namespace":"drupal\/pathauto","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/pathauto\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"pathauto","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1bf99aff-4392-4ce9-bf72-e80f205b62f5","meta":{"drupal_internal__target_id":53892}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/uid?resourceVersion=id%3A20005268"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/relationships\/uid?resourceVersion=id%3A20005268"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/field_development_status?resourceVersion=id%3A20005268"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/relationships\/field_development_status?resourceVersion=id%3A20005268"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/field_maintenance_status?resourceVersion=id%3A20005268"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/relationships\/field_maintenance_status?resourceVersion=id%3A20005268"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"81212413-80b0-44d6-84fb-9078baa7ab25","meta":{"drupal_internal__target_id":198}},{"type":"taxonomy_term--module_categories","id":"01df2105-2397-4a0e-b34c-80da1c3b1208","meta":{"drupal_internal__target_id":201}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/field_module_categories?resourceVersion=id%3A20005268"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/relationships\/field_module_categories?resourceVersion=id%3A20005268"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/field_project_images?resourceVersion=id%3A20005268"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/74ebe8d7-c359-4e8e-a770-36bc271e89fe\/relationships\/field_project_images?resourceVersion=id%3A20005268"}}}}},{"type":"node--project_module","id":"34156596-e3bd-4ff5-9526-6fd7c618850b","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b?resourceVersion=id%3A20034832"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2474539,"status":true,"title":"Admin Toolbar","created":"2015-04-20T14:28:35+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Cimg style=\u0022float:right\u0022 src=\u0022\/files\/Pasted_Image_2020-06-18__11_18_PM.jpg\u0022 alt=\u0022Admin Toolbar\u0022 \/\u003E\r\n\u003Ch2\u003EWhat is the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar\u003C\/em\u003E\u003C\/strong\u003E module?\u003C\/h2\u003E\r\nThe \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar\u003C\/em\u003E\u003C\/strong\u003E module intends to improve the default Toolbar (the administration menu at the top of your site) to transform it into a drop-down menu, providing a fast access to all administration pages.\r\nThe module works on the top of the default toolbar core module and is therefore a light module and keeps all the toolbar functionalities (shortcut \/ media responsive).\r\n\r\n\u003Ch3\u003EHow to use Admin Toolbar module?\u003C\/h3\u003E\r\nGet the code like any other module.\r\n\u003Ccode\u003Ecomposer require drupal\/admin_toolbar\u003C\/code\u003E\r\nThe module has a configuration form since version 3.0.0.\r\n\r\n\u003Ch3\u003ESub-modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Cem\u003E\u003Cstrong\u003EAdmin Toolbar Extra Tools\u003C\/strong\u003E\u003C\/em\u003E adds extra links like what does \u003Cstrong\u003E\u003Cem\u003EAdmin Menu\u003C\/em\u003E\u003C\/strong\u003E module for Drupal 7 (flush caches, run cron, etc...). \u003Cstrong\u003EYou must install the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Extra Tools\u003C\/em\u003E\u003C\/strong\u003E module to benefit from lots of useful links in the toolbar menu.\u003C\/strong\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Search\u003C\/em\u003E\u003C\/strong\u003E - If you want to have the search box to look for administration pages you need to install the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Search\u003C\/em\u003E\u003C\/strong\u003E sub-module.\u003C\/li\u003E\r\n\u003Cli\u003E\u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Links Access Filter\u003C\/em\u003E\u003C\/strong\u003E - The \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_links_access_filter\u0022\u003EAdmin links Access filter\u003C\/a\u003E module that fixes the display of links user shouldn\u0027t have access to (see [#296693]) was included as the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Links Access Filter\u003C\/em\u003E\u003C\/strong\u003E submodule. Caveats: to make it work on custom menu links, you should use the route name and not the internal path. See https:\/\/www.drupal.org\/project\/admin_toolbar\/issues\/3201668 for more details.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EVersion 3\u003C\/h3\u003E\r\nThe 3.x version introduce a configuration form to limit the number of bundles to display in the drop-down menu.\r\n\r\n\u003Ch3\u003EDevelopment version status\u003C\/h3\u003E\r\nThe development versions (-dev) are where the newest stuff is, including any bug fixes and new features. We try to make sure it is tested before we commit anything, but occasionally a bug will get from us. Your help in testing this code is greatly appreciated. The translation templates may not always be up-to-date in the dev releases.\r\n\r\n\u003Ch2\u003EComplementary modules\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_menu\u0022\u003EToolbar Menu\u003C\/a\u003E allows you to add easily any menu to your toolbar and plays nicely with Admin toolbar making them dropdown menus.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_anti_flicker\u0022\u003EToolbar Anti-flicker\u003C\/a\u003E removes the impact of the admin toolbar sub-menu on the rest of the page.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/coffee\u0022\u003ECoffee\u003C\/a\u003E is a good module to look for admin paths.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/adminimal_admin_toolbar\u0022\u003EAdminimal Admin toolbar\u003C\/a\u003E provides a black theming, recommended for the \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/adminimal_theme\u0022\u003EAdminimal theme\u003C\/a\u003E.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_toolbar_content_languages\u0022\u003EAdmin toolbar content language\u003C\/a\u003E adds links for creation of content in any active language.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_themes\u0022\u003EToolbar Themes\u003C\/a\u003E provides nice UI themes.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_toolbar_tools_confirm\u0022\u003EAdmin Toolbar Extra Tools Confirmations\u003C\/a\u003E shows a JavaScript confirmation dialog when clicking links relating to flushing caches, but only when on a production site.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003EIssues\u003C\/h2\u003E\r\nIf you love the Kanban Boards we have \u003Ca href=\u0022https:\/\/contribkanban.com\/board\/admin_toolbar\u0022\u003Eone thanks to ContribKanban.\u003C\/a\u003E\r\nAs with all contributed modules, when considering submitting an issue:\r\n\u003Col type=\u0022a\u0022\u003E\u003Cli\u003ERead the documentation (two or three times is better). Don\u0027t forget the \u003Ca href=\u0022\/project\/admin_toolbar\u0022 rel=\u0022nofollow\u0022\u003Ehome page\u003C\/a\u003E.\u003C\/li\u003E\r\n  \u003Cli\u003EReview the existing \u003Ca href=\u0022\/project\/issues\/admin_toolbar?text=\u0026status=All\u0026priorities=All\u0026categories=All\u0026version=All\u0026component=All\u0022 rel=\u0022nofollow\u0022\u003Eissues list\u003C\/a\u003E. (Don\u0027t forget to select \u0022\u0026lt;- Any -\u0026gt;\u0022 for the \u0022Status\u0022 field.)\u003C\/li\u003E\r\n  \u003Cli\u003EGather all the appropriate information. This may include (but is not limited to):\r\n    \u003Cul\u003E\u003Cli\u003EDrupal version.\u003C\/li\u003E\r\n      \u003Cli\u003EBrowser type and version.\u003C\/li\u003E\r\n      \u003Cli\u003EDatabase type and version.\u003C\/li\u003E\r\n      \u003Cli\u003EError messages, if any.\u003C\/li\u003E\r\n      \u003Cli\u003EModule settings.\u003C\/li\u003E\r\n    \u003C\/ul\u003E\r\n  \u003C\/li\u003E\r\n  \u003Cli\u003ESubmit the issue. If other modules are involved, you may need to submit the issue to those modules as well.\u003C\/li\u003E\r\n  \u003Cli\u003EIf you go to provide a patch use the following \u003Ca href=\u0022\/patch\/submit#patch_naming\u0022\u003Enaming convention\u003C\/a\u003E:\r\n    \u003Ccode class=\u0022 language-php\u0022\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E[\u003C\/span\u003Eadmin_toolbar\u003Cspan class=\u0022token punctuation\u0022\u003E]\u003C\/span\u003E\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E[\u003C\/span\u003Eshort\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003Edescription\u003Cspan class=\u0022token punctuation\u0022\u003E]\u003C\/span\u003E\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E[\u003C\/span\u003Eissue\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003Enumber\u003Cspan class=\u0022token punctuation\u0022\u003E]\u003C\/span\u003E\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E[\u003C\/span\u003Ecomment\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003Enumber\u003Cspan class=\u0022token punctuation\u0022\u003E]\u003C\/span\u003E\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E[\u003C\/span\u003Edrupal\u003Cspan class=\u0022token operator\u0022\u003E-\u003C\/span\u003Eversion\u003Cspan class=\u0022token punctuation\u0022\u003E]\u003C\/span\u003E\u003Cspan class=\u0022token punctuation\u0022\u003E.\u003C\/span\u003Epatch\u003C\/code\u003E\r\n  \u003C\/li\u003E\r\n\u003C\/ol\u003E\r\nAnd please \u003Cb\u003Edon\u0027t forget to use the \u003Ca href=\u0022\/node\/1155816\u0022\u003EIssue Summary Template\u003C\/a\u003E\u003C\/b\u003E to report an issue, if you need help to understand how the issue queue works, \u003Cb\u003Esee the \u003Ca href=\u0022https:\/\/drupalize.me\/videos\/getting-started-issue-queue?p=1176\u0022\u003EGetting Started in the Issue Queue\u003C\/a\u003E video\u003C\/b\u003E.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022what-is-the-admin-toolbar-module\u0022\u003EWhat is the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar\u003C\/em\u003E\u003C\/strong\u003E module?\u003C\/h2\u003E\n\u003Cp\u003EThe \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar\u003C\/em\u003E\u003C\/strong\u003E module intends to improve the default Toolbar (the administration menu at the top of your site) to transform it into a drop-down menu, providing a fast access to all administration pages.\u003Cbr\u003E\nThe module works on the top of the default toolbar core module and is therefore a light module and keeps all the toolbar functionalities (shortcut \/ media responsive).\u003C\/p\u003E\n\u003Ch3 id=\u0022how-to-use-admin-toolbar-module\u0022\u003EHow to use Admin Toolbar module?\u003C\/h3\u003E\n\u003Cp\u003EGet the code like any other module.\u003Cbr\u003E\n\u003Ccode\u003Ecomposer require drupal\/admin_toolbar\u003C\/code\u003E\u003Cbr\u003E\nThe module has a configuration form since version 3.0.0.\u003C\/p\u003E\n\u003Ch3 id=\u0022sub-modules\u0022\u003ESub-modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Cem\u003E\u003Cstrong\u003EAdmin Toolbar Extra Tools\u003C\/strong\u003E\u003C\/em\u003E adds extra links like what does \u003Cstrong\u003E\u003Cem\u003EAdmin Menu\u003C\/em\u003E\u003C\/strong\u003E module for Drupal 7 (flush caches, run cron, etc...). \u003Cstrong\u003EYou must install the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Extra Tools\u003C\/em\u003E\u003C\/strong\u003E module to benefit from lots of useful links in the toolbar menu.\u003C\/strong\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Search\u003C\/em\u003E\u003C\/strong\u003E - If you want to have the search box to look for administration pages you need to install the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Search\u003C\/em\u003E\u003C\/strong\u003E sub-module.\u003C\/li\u003E\n\u003Cli\u003E\u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Links Access Filter\u003C\/em\u003E\u003C\/strong\u003E - The \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_links_access_filter\u0022 rel=\u0022nofollow\u0022\u003EAdmin links Access filter\u003C\/a\u003E module that fixes the display of links user shouldn\u0027t have access to (see [#296693]) was included as the \u003Cstrong\u003E\u003Cem\u003EAdmin Toolbar Links Access Filter\u003C\/em\u003E\u003C\/strong\u003E submodule. Caveats: to make it work on custom menu links, you should use the route name and not the internal path. See \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_toolbar\/issues\/3201668\u0022 rel=\u0022nofollow\u0022\u003Ehttps:\/\/www.drupal.org\/project\/admin_toolbar\/issues\/3201668\u003C\/a\u003E for more details.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022version-3\u0022\u003EVersion 3\u003C\/h3\u003E\n\u003Cp\u003EThe 3.x version introduce a configuration form to limit the number of bundles to display in the drop-down menu.\u003C\/p\u003E\n\u003Ch3 id=\u0022development-version-status\u0022\u003EDevelopment version status\u003C\/h3\u003E\n\u003Cp\u003EThe development versions (-dev) are where the newest stuff is, including any bug fixes and new features. We try to make sure it is tested before we commit anything, but occasionally a bug will get from us. Your help in testing this code is greatly appreciated. The translation templates may not always be up-to-date in the dev releases.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022complementary-modules\u0022\u003EComplementary modules\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_menu\u0022 rel=\u0022nofollow\u0022\u003EToolbar Menu\u003C\/a\u003E allows you to add easily any menu to your toolbar and plays nicely with Admin toolbar making them dropdown menus.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_anti_flicker\u0022 rel=\u0022nofollow\u0022\u003EToolbar Anti-flicker\u003C\/a\u003E removes the impact of the admin toolbar sub-menu on the rest of the page.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/coffee\u0022 rel=\u0022nofollow\u0022\u003ECoffee\u003C\/a\u003E is a good module to look for admin paths.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/adminimal_admin_toolbar\u0022 rel=\u0022nofollow\u0022\u003EAdminimal Admin toolbar\u003C\/a\u003E provides a black theming, recommended for the \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/adminimal_theme\u0022 rel=\u0022nofollow\u0022\u003EAdminimal theme\u003C\/a\u003E.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_toolbar_content_languages\u0022 rel=\u0022nofollow\u0022\u003EAdmin toolbar content language\u003C\/a\u003E adds links for creation of content in any active language.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/toolbar_themes\u0022 rel=\u0022nofollow\u0022\u003EToolbar Themes\u003C\/a\u003E provides nice UI themes.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/admin_toolbar_tools_confirm\u0022 rel=\u0022nofollow\u0022\u003EAdmin Toolbar Extra Tools Confirmations\u003C\/a\u003E shows a JavaScript confirmation dialog when clicking links relating to flushing caches, but only when on a production site.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022issues\u0022\u003EIssues\u003C\/h2\u003E\n\u003Cp\u003EIf you love the Kanban Boards we have \u003Ca href=\u0022https:\/\/contribkanban.com\/board\/admin_toolbar\u0022 rel=\u0022nofollow\u0022\u003Eone thanks to ContribKanban.\u003C\/a\u003E\u003Cbr\u003E\nAs with all contributed modules, when considering submitting an issue:\u003C\/p\u003E\n\u003Col type=\u0022a\u0022\u003E\n\u003Cli\u003ERead the documentation (two or three times is better). Don\u0027t forget the \u003Ca href=\u0022\/project\/admin_toolbar\u0022 rel=\u0022nofollow\u0022\u003Ehome page\u003C\/a\u003E.\u003C\/li\u003E\n\u003Cli\u003EReview the existing \u003Ca href=\u0022\/project\/issues\/admin_toolbar?text=\u0026amp;status=All\u0026amp;priorities=All\u0026amp;categories=All\u0026amp;version=All\u0026amp;component=All\u0022 rel=\u0022nofollow\u0022\u003Eissues list\u003C\/a\u003E. (Don\u0027t forget to select \u0022\u0026lt;- Any -\u0026gt;\u0022 for the \u0022Status\u0022 field.)\u003C\/li\u003E\n\u003Cli\u003EGather all the appropriate information. This may include (but is not limited to):\n\u003Cul\u003E\n\u003Cli\u003EDrupal version.\u003C\/li\u003E\n\u003Cli\u003EBrowser type and version.\u003C\/li\u003E\n\u003Cli\u003EDatabase type and version.\u003C\/li\u003E\n\u003Cli\u003EError messages, if any.\u003C\/li\u003E\n\u003Cli\u003EModule settings.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/li\u003E\n\u003Cli\u003ESubmit the issue. If other modules are involved, you may need to submit the issue to those modules as well.\u003C\/li\u003E\n\u003Cli\u003EIf you go to provide a patch use the following \u003Ca href=\u0022\/patch\/submit#patch_naming\u0022 rel=\u0022nofollow\u0022\u003Enaming convention\u003C\/a\u003E:\u003Cbr\u003E\n    \u003Ccode class=\u0022language-php\u0022\u003E[admin_toolbar]-[short-description]-[issue-number]-[comment-number]-[drupal-version].patch\u003C\/code\u003E\n  \u003C\/li\u003E\n\u003C\/ol\u003E\n\u003Cp\u003EAnd please \u003Cb\u003Edon\u0027t forget to use the \u003Ca href=\u0022\/node\/1155816\u0022 rel=\u0022nofollow\u0022\u003EIssue Summary Template\u003C\/a\u003E\u003C\/b\u003E to report an issue, if you need help to understand how the issue queue works, \u003Cb\u003Esee the \u003Ca href=\u0022https:\/\/drupalize.me\/videos\/getting-started-issue-queue?p=1176\u0022 rel=\u0022nofollow\u0022\u003EGetting Started in the Issue Queue\u003C\/a\u003E video\u003C\/b\u003E.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Improves the default administration toolbar menu by turning it into a drop-down, for fast access to all administration pages. Can also provide access to additional tools from the admin menu."},"field_active_installs":"{\u00228.x-1.x\u0022:9143,\u00228.x-2.x\u0022:18501,\u00223.0.x\u0022:5062,\u00223.x\u0022:116,\u00223.1.x\u0022:5804,\u00223.2.x\u0022:3067,\u00223.3.x\u0022:7045,\u00223.4.x\u0022:30745,\u00223.5.x\u0022:36609,\u00223.6.x\u0022:170796}","field_active_installs_total":286888,"field_composer_namespace":"drupal\/admin_toolbar","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/admin_toolbar\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"admin_toolbar","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"f649de13-0b8c-4422-90fd-33781d7ec04e","meta":{"drupal_internal__target_id":542492}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/uid?resourceVersion=id%3A20034832"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/relationships\/uid?resourceVersion=id%3A20034832"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/field_development_status?resourceVersion=id%3A20034832"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/relationships\/field_development_status?resourceVersion=id%3A20034832"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/field_maintenance_status?resourceVersion=id%3A20034832"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/relationships\/field_maintenance_status?resourceVersion=id%3A20034832"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","meta":{"drupal_internal__target_id":186}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/field_module_categories?resourceVersion=id%3A20034832"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/relationships\/field_module_categories?resourceVersion=id%3A20034832"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/field_project_images?resourceVersion=id%3A20034832"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/34156596-e3bd-4ff5-9526-6fd7c618850b\/relationships\/field_project_images?resourceVersion=id%3A20034832"}}}}},{"type":"node--project_module","id":"7718b4a1-37fd-40ba-a487-097e60c411c7","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7?resourceVersion=id%3A20008464"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":343333,"status":true,"title":"Chaos Tool Suite (ctools)","created":"2008-12-05T19:37:50+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"This suite is primarily a set of APIs and tools to improve the developer experience. It also contains a module called the Page Manager whose job is to manage pages. In particular it manages panel pages, but as it grows it will be able to manage far more than just Panels.\r\n\r\nFor the moment, it includes the following tools:\r\n\r\n\u003Cul\u003E\r\n\u003Cli\u003E Plugins -- tools to make it easy for modules to let other modules implement plugins from .inc files.\u003C\/li\u003E\r\n\u003Cli\u003E Exportables -- tools to make it easier for modules to have objects that live in database or live in code, such as \u0027default views\u0027.\u003C\/li\u003E\r\n\u003Cli\u003E AJAX responder -- tools to make it easier for the server to handle AJAX requests and tell the client what to do with them.\u003C\/li\u003E\r\n\u003Cli\u003E Form tools -- tools to make it easier for forms to deal with AJAX.\u003C\/li\u003E\r\n\u003Cli\u003E Object caching -- tool to make it easier to edit an object across multiple page requests and cache the editing work.\u003C\/li\u003E\r\n\u003Cli\u003E Contexts -- the notion of wrapping objects in a unified wrapper and providing an API to create and accept these contexts as input.\u003C\/li\u003E\r\n\u003Cli\u003E Modal dialog -- tool to make it simple to put a form in a modal dialog.\u003C\/li\u003E\r\n\u003Cli\u003E Dependent -- a simple form widget to make form items appear and disappear based upon the selections in another item.\u003C\/li\u003E\r\n\u003Cli\u003E Content -- pluggable content types used as panes in Panels and other modules like Dashboard.\u003C\/li\u003E\r\n\u003Cli\u003E Form wizard -- an API to make multi-step forms much easier.\u003C\/li\u003E\r\n\u003Cli\u003E CSS tools -- tools to cache and sanitize CSS easily to make user-input CSS safe.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003ECTools for Drupal 8 \/ 9 \/ 10\u003C\/h2\u003E\r\nThe \u003Cstrong\u003E8.x-3.x branch\u003C\/strong\u003E is the most current version of ctools, designed for Drupal 9 and 10. Once Drupal 10 is released, this module will be compatible with the LTS version of Drupal 9. \r\n\u003Cstrong\u003EDependent modules should rely on 4.0.0+ release.\u003C\/strong\u003E\r\nAll 4.0.x and 8.x-3.x releases \u003Cstrong\u003Eare the same\u003C\/strong\u003E and based off of the 8.x-3.x branch. When new breaking changes occur, they will be committed to 5.x.","format":"1","processed":"\u003Cp\u003EThis suite is primarily a set of APIs and tools to improve the developer experience. It also contains a module called the Page Manager whose job is to manage pages. In particular it manages panel pages, but as it grows it will be able to manage far more than just Panels.\u003C\/p\u003E\n\u003Cp\u003EFor the moment, it includes the following tools:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E Plugins -- tools to make it easy for modules to let other modules implement plugins from .inc files.\u003C\/li\u003E\n\u003Cli\u003E Exportables -- tools to make it easier for modules to have objects that live in database or live in code, such as \u0027default views\u0027.\u003C\/li\u003E\n\u003Cli\u003E AJAX responder -- tools to make it easier for the server to handle AJAX requests and tell the client what to do with them.\u003C\/li\u003E\n\u003Cli\u003E Form tools -- tools to make it easier for forms to deal with AJAX.\u003C\/li\u003E\n\u003Cli\u003E Object caching -- tool to make it easier to edit an object across multiple page requests and cache the editing work.\u003C\/li\u003E\n\u003Cli\u003E Contexts -- the notion of wrapping objects in a unified wrapper and providing an API to create and accept these contexts as input.\u003C\/li\u003E\n\u003Cli\u003E Modal dialog -- tool to make it simple to put a form in a modal dialog.\u003C\/li\u003E\n\u003Cli\u003E Dependent -- a simple form widget to make form items appear and disappear based upon the selections in another item.\u003C\/li\u003E\n\u003Cli\u003E Content -- pluggable content types used as panes in Panels and other modules like Dashboard.\u003C\/li\u003E\n\u003Cli\u003E Form wizard -- an API to make multi-step forms much easier.\u003C\/li\u003E\n\u003Cli\u003E CSS tools -- tools to cache and sanitize CSS easily to make user-input CSS safe.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch2\u003ECTools for Drupal 8 \/ 9 \/ 10\u003C\/h2\u003E\n\u003Cp\u003EThe \u003Cstrong\u003E8.x-3.x branch\u003C\/strong\u003E is the most current version of ctools, designed for Drupal 9 and 10. Once Drupal 10 is released, this module will be compatible with the LTS version of Drupal 9.\u003Cbr\u003E\n\u003Cstrong\u003EDependent modules should rely on 4.0.0+ release.\u003C\/strong\u003E\u003Cbr\u003E\nAll 4.0.x and 8.x-3.x releases \u003Cstrong\u003Eare the same\u003C\/strong\u003E and based off of the 8.x-3.x branch. When new breaking changes occur, they will be committed to 5.x.\u003C\/p\u003E","summary":"CTools is a developer toolkit that provides APIs, etc. to improve the developer experience. Most often you don\u0027t install this directly; it\u0027s a dependency of some other module you want."},"field_active_installs":"{\u00228.x-3.x\u0022:88840,\u00224.x\u0022:14,\u00224.0.x\u0022:18154,\u00224.1.x\u0022:163691}","field_active_installs_total":270699,"field_composer_namespace":"drupal\/ctools","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/ctools\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"ctools","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"f2d46924-1ffd-4142-a0cb-41175f806046","meta":{"drupal_internal__target_id":26979}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/uid?resourceVersion=id%3A20008464"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/relationships\/uid?resourceVersion=id%3A20008464"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/field_development_status?resourceVersion=id%3A20008464"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/relationships\/field_development_status?resourceVersion=id%3A20008464"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/field_maintenance_status?resourceVersion=id%3A20008464"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/relationships\/field_maintenance_status?resourceVersion=id%3A20008464"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","meta":{"drupal_internal__target_id":186}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/field_module_categories?resourceVersion=id%3A20008464"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/relationships\/field_module_categories?resourceVersion=id%3A20008464"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/field_project_images?resourceVersion=id%3A20008464"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/7718b4a1-37fd-40ba-a487-097e60c411c7\/relationships\/field_project_images?resourceVersion=id%3A20008464"}}}}},{"type":"node--project_module","id":"356bbb2f-02fe-4a68-bda5-e47e70b5ee80","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80?resourceVersion=id%3A20010253"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":640498,"status":true,"title":"Metatag","created":"2009-11-23T13:48:07+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"The \u003Cem\u003EMetatag\u003C\/em\u003E module allows you to automatically provide structured metadata, aka \u0022meta tags\u0022, about a website. In the context of search engine optimization, when people refer to meta tags they are usually referring to the meta description tag and the meta keywords tag that may help improve the rankings and display of a site in search engine results. In addition, the module provides support for meta tags (\u003Ca href=\u0022http:\/\/ogp.me\/\u0022\u003EOpen Graph Protocol\u003C\/a\u003E from Facebook, \u003Ca href=\u0022https:\/\/dev.twitter.com\/docs\/cards\u0022\u003ETwitter Cards\u003C\/a\u003E from Twitter) that allow control of how content appears when shared on social networks.\r\n\u003C!--break--\u003E\r\nThis project is the offical successor of the \u003Ca href=\u0022\/project\/nodewords\u0022\u003ENodewords\u003C\/a\u003E module.\r\n\r\n\u003Ch3\u003EDependencies\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EFeatures\u003C\/h3\u003E\r\n\u003Cul class=\u0022clearfix\u0022\u003E\r\n  \u003Cli\u003ESupports a large number of commonly used meta tags, including the page title, canonical URL, description, etc, and for Facebook\u0027s \u003Ca href=\u0022http:\/\/ogp.me\/\u0022\u003EOpen Graph\u003C\/a\u003E, \u003Ca href=\u0022https:\/\/dev.twitter.com\/docs\/cards\u0022\u003ETwitter Cards\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/dublincore.org\/documents\/dces\/\u0022\u003EDublin Core\u003C\/a\u003E via included submodules.\u003C\/li\u003E\r\n  \u003Cli\u003EGlobal settings to control meta tags on all pages.\u003C\/li\u003E\r\n  \u003Cli\u003EPer entity and per entity bundle to control default meta tags for all items of a certain type, e.g. all nodes of a certain content type.\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to override meta tags on each entity object, e.g. to override meta tags on an individual node.\u003C\/li\u003E\r\n  \u003Cli\u003EFull support for entity revisions and workflows based upon revision editing.\u003C\/li\u003E\r\n  \u003Cli\u003ECustomize meta tags for custom pages built using Views using included submodules.\u003C\/li\u003E\r\n  \u003Cli\u003EIndividual permissions for each meta tag can be added via the Metatag Advanced Permissions.\u003C\/li\u003E\r\n  \u003Cli\u003EExtendable and flexible API for defining new meta tags.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EResources\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003EFull documentation is available: \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/metatag\u0022\u003EMetatag for Drupal\u003C\/a\u003E\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/mark.ie\/blog\/adding-tokens-for-metatag-image-fields-when-using-drupal-media-entity\/\u0022\u003EA blog post from \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/markconroy\u0022\u003Emarkconroy\u003C\/a\u003E on how to use tokens to use core\u0027s Media fields with Metatag.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.morpht.com\/blog\/unleashing-power-metatag-custom-tags\u0022\u003EHow to create custom meta tags\u003C\/a\u003E in 2.1.0; excellent blog post by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/naveenvalecha\u0022\u003ENaveen Valecha\u003C\/a\u003E.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ERecommended \/ related modules\u003C\/h3\u003E\r\nSome modules are available that extend Metatag with additional or complimentary functionality. Many related modules are available from the \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag\/ecosystem\u0022\u003EMetatag ecosystem page\u003C\/a\u003E and that is the best place to find them.\r\n\r\nThe following are a noteworthy additions to Metatag\u0027s main functionality:\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/context_metadata\u0022\u003EContext Metadata\u003C\/a\u003E:\r\n  Allow assignment of meta tags based upon different system contexts, e.g. per\r\n  path.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/eca_metatag\u0022\u003EECA Metatag\u003C\/a\u003E:\r\n  Use Event-Condition-Action rules to dynamically set meta tags.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/maxlength\u0022\u003EMaxlength\u003C\/a\u003E:\r\n  If this module is installed, meta tags that have a maximum length defined in\r\n  the settings will have that maximum length enforced; this may be disabled in\r\n  the settings if it proves to be problematic.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_ai\u0022\u003EMetatag AI\u003C\/a\u003E:\r\n  AI-powered metadata generation and suggestions.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_async_widget\u0022\u003EMetatag Async Widget\u003C\/a\u003E:\r\n  Provides an asynchronous widget for editing meta tags.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_page_heading\u0022\u003EMetatag Page Heading\u003C\/a\u003E:\r\n  Automatically generates meta tags using page headings.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_webform\u0022\u003EMetatag Webform\u003C\/a\u003E:\r\n  Adds meta tag support to Webform pages.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/yoast_seo\u0022\u003EReal-time SEO for Drupal\u003C\/a\u003E:\r\n  Uses the [YoastSEO.js library and service](https:\/\/yoast.com\/) to provide\r\n  realtime feedback on the meta tags.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_custom\u0022\u003EToken Custom\u003C\/a\u003E:\r\n  Allows creation of custom tokens without writing code.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_modifier\u0022\u003EToken Modifier\u003C\/a\u003E:\r\n  Modify or transform token output before being used in metadata.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_or\u0022\u003EToken OR\u003C\/a\u003E:\r\n  Provides a means to output a second token if the first one is empty, which can\r\n  be very useful for complex content architectures.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\nThe following modules make additional meta tags available:\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_cxense\u0022\u003EMetatag Cxense\u003C\/a\u003E:\r\n  Adds support for the Cxense meta tags used by their DMP and Insight services.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_google_scholar\u0022\u003EMetatag Google Scholar\u003C\/a\u003E:\r\n  Adds support for a number of meta tags used with the Google Scholar system.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/schema_metatag\u0022\u003ESchema.org Metatag\u003C\/a\u003E:\r\n  Extensive solution for adding schema.org \/ JSON-LD support to Metatag.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ECredits\u003C\/h3\u003E\r\nMaintained since 2012 by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/damienmckenna\u0022\u003EDamien McKenna\u003C\/a\u003E; initial development (2010-2012) by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/dave-reid\u0022\u003EDave Reid\u003C\/a\u003E.\r\n\r\n\u003Ch3\u003EPast sponsors\u003C\/h3\u003E\r\n\u003Cul\u003E\u003Cli\u003EMediacurrent\u003C\/li\u003E\u003Cli\u003ELullabot\u003C\/li\u003E\u003Cli\u003EPalantir\u003C\/li\u003E\u003Cli\u003EAcquia\u003C\/li\u003E\u003C\/ul\u003E","format":"3","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EThe \u003Cem\u003EMetatag\u003C\/em\u003E module allows you to automatically provide structured metadata, aka \u0022meta tags\u0022, about a website. In the context of search engine optimization, when people refer to meta tags they are usually referring to the meta description tag and the meta keywords tag that may help improve the rankings and display of a site in search engine results. In addition, the module provides support for meta tags (\u003Ca href=\u0022http:\/\/ogp.me\/\u0022\u003EOpen Graph Protocol\u003C\/a\u003E from Facebook, \u003Ca href=\u0022https:\/\/dev.twitter.com\/docs\/cards\u0022\u003ETwitter Cards\u003C\/a\u003E from Twitter) that allow control of how content appears when shared on social networks.\u003C\/p\u003E\n\u003C!--break--\u003E\u003Cp\u003EThis project is the offical successor of the \u003Ca href=\u0022\/project\/nodewords\u0022\u003ENodewords\u003C\/a\u003E module.\u003C\/p\u003E\n\u003Ch3 id=\u0022dependencies\u0022\u003EDependencies\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/token\u0022\u003EToken\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022features\u0022\u003EFeatures\u003C\/h3\u003E\n\u003Cul class=\u0022clearfix\u0022\u003E\n\u003Cli\u003ESupports a large number of commonly used meta tags, including the page title, canonical URL, description, etc, and for Facebook\u0027s \u003Ca href=\u0022http:\/\/ogp.me\/\u0022\u003EOpen Graph\u003C\/a\u003E, \u003Ca href=\u0022https:\/\/dev.twitter.com\/docs\/cards\u0022\u003ETwitter Cards\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/dublincore.org\/documents\/dces\/\u0022\u003EDublin Core\u003C\/a\u003E via included submodules.\u003C\/li\u003E\n\u003Cli\u003EGlobal settings to control meta tags on all pages.\u003C\/li\u003E\n\u003Cli\u003EPer entity and per entity bundle to control default meta tags for all items of a certain type, e.g. all nodes of a certain content type.\u003C\/li\u003E\n\u003Cli\u003EAbility to override meta tags on each entity object, e.g. to override meta tags on an individual node.\u003C\/li\u003E\n\u003Cli\u003EFull support for entity revisions and workflows based upon revision editing.\u003C\/li\u003E\n\u003Cli\u003ECustomize meta tags for custom pages built using Views using included submodules.\u003C\/li\u003E\n\u003Cli\u003EIndividual permissions for each meta tag can be added via the Metatag Advanced Permissions.\u003C\/li\u003E\n\u003Cli\u003EExtendable and flexible API for defining new meta tags.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022resources\u0022\u003EResources\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003EFull documentation is available: \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/metatag\u0022\u003EMetatag for Drupal\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/mark.ie\/blog\/adding-tokens-for-metatag-image-fields-when-using-drupal-media-entity\/\u0022\u003EA blog post from \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/markconroy\u0022\u003Emarkconroy\u003C\/a\u003E on how to use tokens to use core\u0027s Media fields with Metatag.\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.morpht.com\/blog\/unleashing-power-metatag-custom-tags\u0022\u003EHow to create custom meta tags\u003C\/a\u003E in 2.1.0; excellent blog post by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/naveenvalecha\u0022\u003ENaveen Valecha\u003C\/a\u003E.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022recommended-related-modules\u0022\u003ERecommended \/ related modules\u003C\/h3\u003E\n\u003Cp\u003ESome modules are available that extend Metatag with additional or complimentary functionality. Many related modules are available from the \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag\/ecosystem\u0022\u003EMetatag ecosystem page\u003C\/a\u003E and that is the best place to find them.\u003C\/p\u003E\n\u003Cp\u003EThe following are a noteworthy additions to Metatag\u0027s main functionality:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/context_metadata\u0022\u003EContext Metadata\u003C\/a\u003E:\u003Cbr\u003E\n  Allow assignment of meta tags based upon different system contexts, e.g. per\u003Cbr\u003E\n  path.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/eca_metatag\u0022\u003EECA Metatag\u003C\/a\u003E:\u003Cbr\u003E\n  Use Event-Condition-Action rules to dynamically set meta tags.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/maxlength\u0022\u003EMaxlength\u003C\/a\u003E:\u003Cbr\u003E\n  If this module is installed, meta tags that have a maximum length defined in\u003Cbr\u003E\n  the settings will have that maximum length enforced; this may be disabled in\u003Cbr\u003E\n  the settings if it proves to be problematic.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_ai\u0022\u003EMetatag AI\u003C\/a\u003E:\u003Cbr\u003E\n  AI-powered metadata generation and suggestions.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_async_widget\u0022\u003EMetatag Async Widget\u003C\/a\u003E:\u003Cbr\u003E\n  Provides an asynchronous widget for editing meta tags.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_page_heading\u0022\u003EMetatag Page Heading\u003C\/a\u003E:\u003Cbr\u003E\n  Automatically generates meta tags using page headings.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_webform\u0022\u003EMetatag Webform\u003C\/a\u003E:\u003Cbr\u003E\n  Adds meta tag support to Webform pages.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/yoast_seo\u0022\u003EReal-time SEO for Drupal\u003C\/a\u003E:\u003Cbr\u003E\n  Uses the [YoastSEO.js library and service](\u003Ca href=\u0022https:\/\/yoast.com\/\u0022\u003Ehttps:\/\/yoast.com\/\u003C\/a\u003E) to provide\u003Cbr\u003E\n  realtime feedback on the meta tags.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_custom\u0022\u003EToken Custom\u003C\/a\u003E:\u003Cbr\u003E\n  Allows creation of custom tokens without writing code.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_modifier\u0022\u003EToken Modifier\u003C\/a\u003E:\u003Cbr\u003E\n  Modify or transform token output before being used in metadata.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/token_or\u0022\u003EToken OR\u003C\/a\u003E:\u003Cbr\u003E\n  Provides a means to output a second token if the first one is empty, which can\u003Cbr\u003E\n  be very useful for complex content architectures.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EThe following modules make additional meta tags available:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_cxense\u0022\u003EMetatag Cxense\u003C\/a\u003E:\u003Cbr\u003E\n  Adds support for the Cxense meta tags used by their DMP and Insight services.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/metatag_google_scholar\u0022\u003EMetatag Google Scholar\u003C\/a\u003E:\u003Cbr\u003E\n  Adds support for a number of meta tags used with the Google Scholar system.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/schema_metatag\u0022\u003ESchema.org Metatag\u003C\/a\u003E:\u003Cbr\u003E\n  Extensive solution for adding schema.org \/ JSON-LD support to Metatag.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022credits\u0022\u003ECredits\u003C\/h3\u003E\n\u003Cp\u003EMaintained since 2012 by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/damienmckenna\u0022\u003EDamien McKenna\u003C\/a\u003E; initial development (2010-2012) by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/dave-reid\u0022\u003EDave Reid\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ch3 id=\u0022past-sponsors\u0022\u003EPast sponsors\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003EMediacurrent\u003C\/li\u003E\n\u003Cli\u003ELullabot\u003C\/li\u003E\n\u003Cli\u003EPalantir\u003C\/li\u003E\n\u003Cli\u003EAcquia\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Allows generating meta tags for site content, from simpler tags like \u0022description\u0022 and \u0022image_src\u0022, to more advanced tags like OpenGraph (for Facebook, LinkedIn, etc), Twitter Cards and Dublin Core."},"field_active_installs":"{\u00228.x-1.x\u0022:63594,\u00222.0.x\u0022:12888,\u00222.1.x\u0022:45764,\u00222.2.x\u0022:131091}","field_active_installs_total":253337,"field_composer_namespace":"drupal\/metatag","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/metatag\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"metatag","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1bf99aff-4392-4ce9-bf72-e80f205b62f5","meta":{"drupal_internal__target_id":53892}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/uid?resourceVersion=id%3A20010253"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/relationships\/uid?resourceVersion=id%3A20010253"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/field_development_status?resourceVersion=id%3A20010253"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/relationships\/field_development_status?resourceVersion=id%3A20010253"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/field_maintenance_status?resourceVersion=id%3A20010253"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/relationships\/field_maintenance_status?resourceVersion=id%3A20010253"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"01df2105-2397-4a0e-b34c-80da1c3b1208","meta":{"drupal_internal__target_id":201}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/field_module_categories?resourceVersion=id%3A20010253"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/relationships\/field_module_categories?resourceVersion=id%3A20010253"}}},"field_project_images":{"data":[{"type":"file--file","id":"f1f609ff-95ca-411c-a705-80f57905b642","meta":{"alt":"Metatag config interface on Drupal 8.","title":null,"width":991,"height":820,"drupal_internal__target_id":20179}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/field_project_images?resourceVersion=id%3A20010253"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/356bbb2f-02fe-4a68-bda5-e47e70b5ee80\/relationships\/field_project_images?resourceVersion=id%3A20010253"}}}}},{"type":"node--project_module","id":"0df11c4b-c0da-4c0f-ace3-fd2df9098523","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523?resourceVersion=id%3A20033788"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2411903,"status":true,"title":"Entity Reference Revisions","created":"2015-01-21T23:05:25+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Ch2\u003EOverview\u003C\/h2\u003E\r\nAdds an Entity Reference field type with revision support, allowing specific entity revisions to be references. This is useful for modules like \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs\u0022\u003EParagraphs\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/inline_entity_form\u0022\u003EInline Entity Form\u003C\/a\u003E.\r\n\r\nA common use case is where an entity is actually part of a parent entity (with an embedded entity form). When the parent entity is updated, the referenced entity is also updated, thus the previous revision of the parent entity should still be pointing to the previous version of the entity to fully support revision diff and rollback.","format":"1","processed":"\u003Ch2\u003EOverview\u003C\/h2\u003E\n\u003Cp\u003EAdds an Entity Reference field type with revision support, allowing specific entity revisions to be references. This is useful for modules like \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs\u0022 rel=\u0022nofollow\u0022\u003EParagraphs\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/inline_entity_form\u0022 rel=\u0022nofollow\u0022\u003EInline Entity Form\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003EA common use case is where an entity is actually part of a parent entity (with an embedded entity form). When the parent entity is updated, the referenced entity is also updated, thus the previous revision of the parent entity should still be pointing to the previous version of the entity to fully support revision diff and rollback.\u003C\/p\u003E","summary":"Adds an Entity Reference field type with revision support, allowing specific entity revisions to be references. This is useful for modules like Paragraphs and Inline Entity Form."},"field_active_installs":"{\u00228.x-1.x\u0022:246660}","field_active_installs_total":246660,"field_composer_namespace":"drupal\/entity_reference_revisions","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":null,"field_project_has_releases":true,"field_project_machine_name":"entity_reference_revisions","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"6e8de75f-6809-4565-ba55-f3feef07403d","meta":{"drupal_internal__target_id":1853532}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/uid?resourceVersion=id%3A20033788"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/relationships\/uid?resourceVersion=id%3A20033788"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/field_development_status?resourceVersion=id%3A20033788"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/relationships\/field_development_status?resourceVersion=id%3A20033788"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/field_maintenance_status?resourceVersion=id%3A20033788"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/relationships\/field_maintenance_status?resourceVersion=id%3A20033788"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/field_module_categories?resourceVersion=id%3A20033788"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/relationships\/field_module_categories?resourceVersion=id%3A20033788"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/field_project_images?resourceVersion=id%3A20033788"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0df11c4b-c0da-4c0f-ace3-fd2df9098523\/relationships\/field_project_images?resourceVersion=id%3A20033788"}}}}},{"type":"node--project_module","id":"5db22367-a233-4066-9295-416bb06cb03a","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a?resourceVersion=id%3A20028646"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2130961,"status":true,"title":"Paragraphs","created":"2013-11-08T13:34:08+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Ch2\u003EOverview\u003C\/h2\u003E\r\nParagraphs is the new way of content creation!\r\nIt allows you \u2014 Site Builders \u2014 to make things cleaner so that you can give more editing power to your end-users.\r\n\r\nInstead of putting all their content in one WYSIWYG body field including images and videos, end-users can now choose on-the-fly between pre-defined Paragraph Types independent from one another. Paragraph Types can be anything you want from a simple text block or image to a complex and configurable slideshow.\r\n\r\nParagraphs module comes with a new \u0022paragraphs\u0022 field type that works like Entity Reference\u0027s. Simply add a new paragraphs field on any Content Type you want and choose which Paragraph Types should be available to end-users. They can then add as many Paragraph items as you allowed them to and reorder them at will.\r\n\r\nParagraphs module does not come with any default Paragraph Types but since they are basic Drupal Entities you can have complete control over what fields they should be composed of and what they should look like through the typical Drupal Manage Fields and Manage Display screens.\r\n\r\nYou can also add custom option fields and do conditional coding in your CSS, JS and preprocess functions so that end-users can have more control over the look and feel of each item. This is way much cleaner and stable than adding inline CSS or classes inside the body field\u0027s source.\r\n\r\nSo... what\u0027s it gonna be? Accordions, Tabs, Slideshows, Masonry galleries, Parallax backgrounds...? Think big!\r\n\r\nSome more examples:\r\n\u003Cul\u003E\r\n\u003Cli\u003EAdd a block of text with an image left to it\u003C\/li\u003E\r\n\u003Cli\u003EAdd a slideshow between blocks of text\u003C\/li\u003E\r\n\u003Cli\u003EAdd a youtube embed between your text\u003C\/li\u003E\r\n\u003Cli\u003EAdd quotes between your content blocks\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Cimg src=\u0022https:\/\/drupal.org\/files\/project-images\/Selection_272.png\u0022 alt=\u0022Example form\u0022 \/\u003E\r\n\r\n\u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/project-images\/paragraphs_abstract_0.png\u0022 alt=\u0022Paragraphs abstraction\u0022 \/\u003E\r\n\r\n\u003Ch2\u003EFeatures\u003C\/h2\u003E\r\nThis module has some overlapping functionality with field_collection, but this module has some advantages over field_collection.\r\n\u003Cul\u003E\r\n\u003Cli\u003EDifferent fields per paragraph bundle\u003C\/li\u003E\r\n\u003Cli\u003EUsing different paragraph bundles in a single paragraph field\u003C\/li\u003E\r\n\u003Cli\u003EDisplays per paragraph bundle\u003C\/li\u003E\r\n\u003Cli\u003EBundles are exportable with features.\u003C\/li\u003E\r\n\u003Cli\u003EEntities, so: exportable field bases\/instances, usable in Search API, usable in Views\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003ERelated modules\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_pack\u0022\u003EParagraphs pack\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/classy_paragraphs\u0022\u003EClassy paragraphs\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/edgy\u0022\u003EEdgy\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_background\u0022\u003EEntity background\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_defaults\u0022\u003EParagraphs Defaults\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/apachesolr_paragraphs\u0022\u003EApachesolr Paragraphs\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_id\u0022\u003EParagraphs ID\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_behaviors\u0022\u003EEntity behaviors\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003EDemo sites\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003ECreate a \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/add\/project-issue\/paragraphs\u0022\u003Enew task\u003C\/a\u003E to get your site in here\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Cbr \/\u003E\u003Cbr \/\u003E\u003Cbr \/\u003E\r\n\r\n\u003Ch2\u003EDrupal 8\u003C\/h2\u003E\r\n\u003Cp\u003EParagraphs evolved significantly since its full feature port of Drupal 7.\r\n\r\nThe module currently offers two widgets:\r\n\u003Ch3\u003EClassic widget\u003C\/h3\u003E\r\nThis widget offers a stable UI with limited features that will not be changed or updated. Bugfixing only.\r\n\r\n\u003Ch3\u003EEXPERIMENTAL widget\u003C\/h3\u003E\r\nThis widget provides many new features like duplicating paragraphs and a drag \u0026 drop mode as well as an improved decluttered user experience. It is in heavy use but major changes between versions are to be expected.\r\n\r\nThis widget functionality can be extended through Paragraphs Behavior Plugins.\r\n\r\n\u003Ch3\u003ERequirements\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_reference_revisions\u0022\u003EEntity Reference Revisions\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\nUse \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/diff\u0022\u003EDiff\u003C\/a\u003E to indicate changes between revision.\r\n\r\n\u003Ch2\u003EDrupal 7\u003C\/h2\u003E\r\nSee \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2444885\u0022\u003Ethis\u003C\/a\u003E page for the Drupal 7 information and documentation. It requires \u003Ca href=\u0022http:\/\/drupal.org\/project\/entity\u0022\u003EEntity \u003E= 1.2\u003C\/a\u003E.\r\n\r\nCredits: Paragraphs logo by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/grienauer\u0022\u003ENico Grienauer (Grienauer)\u003C\/a\u003E.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022overview\u0022\u003EOverview\u003C\/h2\u003E\n\u003Cp\u003EParagraphs is the new way of content creation!\u003Cbr\u003E\nIt allows you \u2014 Site Builders \u2014 to make things cleaner so that you can give more editing power to your end-users.\u003C\/p\u003E\n\u003Cp\u003EInstead of putting all their content in one WYSIWYG body field including images and videos, end-users can now choose on-the-fly between pre-defined Paragraph Types independent from one another. Paragraph Types can be anything you want from a simple text block or image to a complex and configurable slideshow.\u003C\/p\u003E\n\u003Cp\u003EParagraphs module comes with a new \u0022paragraphs\u0022 field type that works like Entity Reference\u0027s. Simply add a new paragraphs field on any Content Type you want and choose which Paragraph Types should be available to end-users. They can then add as many Paragraph items as you allowed them to and reorder them at will.\u003C\/p\u003E\n\u003Cp\u003EParagraphs module does not come with any default Paragraph Types but since they are basic Drupal Entities you can have complete control over what fields they should be composed of and what they should look like through the typical Drupal Manage Fields and Manage Display screens.\u003C\/p\u003E\n\u003Cp\u003EYou can also add custom option fields and do conditional coding in your CSS, JS and preprocess functions so that end-users can have more control over the look and feel of each item. This is way much cleaner and stable than adding inline CSS or classes inside the body field\u0027s source.\u003C\/p\u003E\n\u003Cp\u003ESo... what\u0027s it gonna be? Accordions, Tabs, Slideshows, Masonry galleries, Parallax backgrounds...? Think big!\u003C\/p\u003E\n\u003Cp\u003ESome more examples:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EAdd a block of text with an image left to it\u003C\/li\u003E\n\u003Cli\u003EAdd a slideshow between blocks of text\u003C\/li\u003E\n\u003Cli\u003EAdd a youtube embed between your text\u003C\/li\u003E\n\u003Cli\u003EAdd quotes between your content blocks\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003E\u003Cimg src=\u0022\/files\/project-images\/Selection_272.png\u0022 alt=\u0022Example form\u0022\u003E\u003C\/p\u003E\n\u003Cp\u003E\u003Cimg src=\u0022\/files\/project-images\/paragraphs_abstract_0.png\u0022 alt=\u0022Paragraphs abstraction\u0022\u003E\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022features\u0022\u003EFeatures\u003C\/h2\u003E\n\u003Cp\u003EThis module has some overlapping functionality with field_collection, but this module has some advantages over field_collection.\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EDifferent fields per paragraph bundle\u003C\/li\u003E\n\u003Cli\u003EUsing different paragraph bundles in a single paragraph field\u003C\/li\u003E\n\u003Cli\u003EDisplays per paragraph bundle\u003C\/li\u003E\n\u003Cli\u003EBundles are exportable with features.\u003C\/li\u003E\n\u003Cli\u003EEntities, so: exportable field bases\/instances, usable in Search API, usable in Views\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_pack\u0022 rel=\u0022nofollow\u0022\u003EParagraphs pack\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/classy_paragraphs\u0022 rel=\u0022nofollow\u0022\u003EClassy paragraphs\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/edgy\u0022 rel=\u0022nofollow\u0022\u003EEdgy\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_background\u0022 rel=\u0022nofollow\u0022\u003EEntity background\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_defaults\u0022 rel=\u0022nofollow\u0022\u003EParagraphs Defaults\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/apachesolr_paragraphs\u0022 rel=\u0022nofollow\u0022\u003EApachesolr Paragraphs\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/paragraphs_id\u0022 rel=\u0022nofollow\u0022\u003EParagraphs ID\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_behaviors\u0022 rel=\u0022nofollow\u0022\u003EEntity behaviors\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022demo-sites\u0022\u003EDemo sites\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003ECreate a \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/add\/project-issue\/paragraphs\u0022 rel=\u0022nofollow\u0022\u003Enew task\u003C\/a\u003E to get your site in here\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003E\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022drupal-8\u0022\u003EDrupal 8\u003C\/h2\u003E\n\u003Cp\u003EParagraphs evolved significantly since its full feature port of Drupal 7.\u003C\/p\u003E\n\u003Cp\u003EThe module currently offers two widgets:\u003C\/p\u003E\n\u003Ch3 id=\u0022classic-widget\u0022\u003EClassic widget\u003C\/h3\u003E\n\u003Cp\u003EThis widget offers a stable UI with limited features that will not be changed or updated. Bugfixing only.\u003C\/p\u003E\n\u003Ch3 id=\u0022experimental-widget\u0022\u003EEXPERIMENTAL widget\u003C\/h3\u003E\n\u003Cp\u003EThis widget provides many new features like duplicating paragraphs and a drag \u0026amp; drop mode as well as an improved decluttered user experience. It is in heavy use but major changes between versions are to be expected.\u003C\/p\u003E\n\u003Cp\u003EThis widget functionality can be extended through Paragraphs Behavior Plugins.\u003C\/p\u003E\n\u003Ch3 id=\u0022requirements\u0022\u003ERequirements\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/entity_reference_revisions\u0022 rel=\u0022nofollow\u0022\u003EEntity Reference Revisions\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EUse \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/diff\u0022 rel=\u0022nofollow\u0022\u003EDiff\u003C\/a\u003E to indicate changes between revision.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022drupal-7\u0022\u003EDrupal 7\u003C\/h2\u003E\n\u003Cp\u003ESee \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2444885\u0022 rel=\u0022nofollow\u0022\u003Ethis\u003C\/a\u003E page for the Drupal 7 information and documentation. It requires \u003Ca href=\u0022http:\/\/drupal.org\/project\/entity\u0022 rel=\u0022nofollow\u0022\u003EEntity \u0026gt;= 1.2\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003ECredits: Paragraphs logo by \u003Ca href=\u0022https:\/\/www.drupal.org\/u\/grienauer\u0022 rel=\u0022nofollow\u0022\u003ENico Grienauer (Grienauer)\u003C\/a\u003E.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:224458}","field_active_installs_total":224458,"field_composer_namespace":"drupal\/paragraphs","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/paragraphs\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"paragraphs","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"6e8de75f-6809-4565-ba55-f3feef07403d","meta":{"drupal_internal__target_id":1853532}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/uid?resourceVersion=id%3A20028646"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/relationships\/uid?resourceVersion=id%3A20028646"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/field_development_status?resourceVersion=id%3A20028646"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/relationships\/field_development_status?resourceVersion=id%3A20028646"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/field_maintenance_status?resourceVersion=id%3A20028646"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/relationships\/field_maintenance_status?resourceVersion=id%3A20028646"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}},{"type":"taxonomy_term--module_categories","id":"dcb48e9f-6afa-4842-8ef6-44b90b083fcc","meta":{"drupal_internal__target_id":200}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/field_module_categories?resourceVersion=id%3A20028646"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/relationships\/field_module_categories?resourceVersion=id%3A20028646"}}},"field_project_images":{"data":[{"type":"file--file","id":"243188f2-63b9-4b59-b159-203e9040743d","meta":{"alt":"","title":null,"width":718,"height":185,"drupal_internal__target_id":11311}},{"type":"file--file","id":"4bff5cef-aa9b-4867-85db-0256128ef414","meta":{"alt":"","title":null,"width":715,"height":199,"drupal_internal__target_id":11312}},{"type":"file--file","id":"f56f69fd-e1db-4f36-b185-0a9fe195a99d","meta":{"alt":"","title":null,"width":1907,"height":1056,"drupal_internal__target_id":11309}},{"type":"file--file","id":"e08368de-c1ac-4024-99b4-dae7388b73a1","meta":{"alt":"","title":null,"width":1907,"height":1036,"drupal_internal__target_id":11310}},{"type":"file--file","id":"e9e1cd0d-8fe4-453b-9330-de2d0ccd755c","meta":{"alt":"","title":null,"width":1480,"height":1280,"drupal_internal__target_id":19583}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/field_project_images?resourceVersion=id%3A20028646"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/5db22367-a233-4066-9295-416bb06cb03a\/relationships\/field_project_images?resourceVersion=id%3A20028646"}}}}},{"type":"node--project_module","id":"aae26432-89cb-4d95-ac62-6b6fbb74f8d6","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6?resourceVersion=id%3A20005148"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":7404,"status":true,"title":"Webform","created":"2004-04-26T20:54:31+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Cp\u003EThe Webform module allows you to build any type of form to collect any type of data, which can be submitted to any application or system. Every single behavior and aspect of your forms and their inputs are customizable. Whether you need a multi-page form containing a multi-column input layout with conditional logic or a simple contact form that pushes data to a SalesForce\/CRM, it is all possible using the Webform module for Drupal 10+.\u003C\/p\u003E\r\n\u003Cp align=\u0022center\u0022\u003E\r\n\u003Ca class=\u0022action-button\u0022 href=\u0022https:\/\/youtu.be\/VncMRSwjVto\u0022\u003E\u25b6 Watch an introduction to Webform\u003C\/a\u003E\u003Cbr\/\u003E\r\n\u003Ca href=\u0022https:\/\/simplytest.me\/project\/webform\/6.x\u0022\u003ETry Webform\u003C\/a\u003E\r\n\u003C\/p\u003E\r\n\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022100%\u0022\u003E\r\n  \u003Ctr\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\u003Cdiv class=\u0022note\u0022\u003E\u003Ca href=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-example.png\u0022 title=\u0022Wizard example\u0022 class=\u0022colorbox\u0022 data-colorbox-gallery=\u0022gallery-node-7404\u0022 rel=\u0022nofollow\u0022\u003E\u003Cimg src=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-example.png\u0022 alt=\u0022Webform wizard example\u0022 \/\u003E\u003Cbr\/\u003E\u003Cstrong\u003EWizard example\u003C\/strong\u003E\u003C\/a\u003E\u003C\/div\u003E\u003C\/td\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\u003Cdiv class=\u0022note\u0022\u003E\u003Ca href=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-admin.png\u0022 title=\u0022Form builder\u0022 class=\u0022colorbox\u0022 data-colorbox-gallery=\u0022gallery-node-7404\u0022 rel=\u0022nofollow\u0022\u003E\u003Cimg src=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-admin.png\u0022 alt=\u0022Webform builder\u0022 \/\u003E\u003Cbr\/\u003E\u003Cstrong\u003EForm builder\u003C\/strong\u003E\u003C\/a\u003E\u003C\/div\u003E\u003C\/td\u003E\r\n  \u003C\/tr\u003E\r\n\u003C\/table\u003E\r\n\r\n\u003Ch2\u003EFeatures\u003C\/h2\u003E\r\n\r\n\u003Cblockquote\u003EThe Webform module provides all the features expected from an enterprise proprietary form builder combined with the flexibility and openness of Drupal.\u003C\/blockquote\u003E\r\n\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022100%\u0022\u003E\r\n  \u003Ctr\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\r\n      \u003Cstrong\u003EForms\u003C\/strong\u003E\r\n      \u003Cul\u003E\r\n        \u003Cli\u003EDrafts\u003C\/li\u003E\r\n        \u003Cli\u003EPreview\u003C\/li\u003E\r\n        \u003Cli\u003EScheduling\u003C\/li\u003E\r\n        \u003Cli\u003ESharing\u003C\/li\u003E\r\n        \u003Cli\u003EConfirmations\u003C\/li\u003E\r\n        \u003Cli\u003EModal dialogs\u003C\/li\u003E\r\n        \u003Cli\u003EAccess controls\u003C\/li\u003E\r\n        \u003Cli\u003EPrepopulation\u003C\/li\u003E\r\n        \u003Cli\u003EMultistep\u003C\/li\u003E\r\n      \u003C\/ul\u003E\r\n    \u003C\/td\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\r\n      \u003Cstrong\u003ESubmissions\u003C\/strong\u003E\r\n      \u003Cul\u003E\r\n        \u003Cli\u003EEmail notifications\u003C\/li\u003E\r\n        \u003Cli\u003ERemote post\u003C\/li\u003E\r\n        \u003Cli\u003ECustomizable results view\u003C\/li\u003E\r\n        \u003Cli\u003ESubmission flagging\u003C\/li\u003E\r\n        \u003Cli\u003ESubmission export\/import\u003C\/li\u003E\r\n        \u003Cli\u003ESubmission upload\u003C\/li\u003E\r\n        \u003Cli\u003ESubmission limits\u003C\/li\u003E\r\n        \u003Cli\u003EPDF generation\u003C\/li\u003E\r\n        \u003Cli\u003EAutomatic purging\u003C\/li\u003E\r\n      \u003C\/ul\u003E\r\n    \u003C\/td\u003E\r\n  \u003C\/tr\u003E\r\n  \u003Ctr\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\r\n      \u003Cstrong\u003EElements\u003C\/strong\u003E\r\n      \u003Cul\u003E\r\n        \u003Cli\u003EStandard inputs\u003C\/li\u003E\r\n        \u003Cli\u003EDate\/time inputs\u003C\/li\u003E\r\n        \u003Cli\u003EFile uploads\u003C\/li\u003E\r\n        \u003Cli\u003EComputed elements\u003C\/li\u003E\r\n        \u003Cli\u003EComposite elements\u003C\/li\u003E\r\n        \u003Cli\u003ECustom elements\u003C\/li\u003E\r\n        \u003Cli\u003EEntity references\u003C\/li\u003E\r\n        \u003Cli\u003EScales and Likerts\u003C\/li\u003E\r\n        \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-features\u0022\u003Emore....\u003C\/a\u003E\u003C\/li\u003E\r\n      \u003C\/ul\u003E\r\n    \u003C\/td\u003E\r\n    \u003Ctd width=\u002250%\u0022\u003E\r\n      \u003Cstrong\u003EAdd-ons\u003C\/strong\u003E\r\n      \u003Cul\u003E\r\n        \u003Cli\u003ESPAM protection\u003C\/li\u003E\r\n        \u003Cli\u003ECRM integration\u003C\/li\u003E\r\n        \u003Cli\u003EData encryption\u003C\/li\u003E\r\n        \u003Cli\u003ESubmission analysis\u003C\/li\u003E\r\n        \u003Cli\u003EMail handling\u003C\/li\u003E\r\n        \u003Cli\u003ETranslations\u003C\/li\u003E\r\n        \u003Cli\u003EHeadless support\u003C\/li\u003E\r\n        \u003Cli\u003EWorkflow\u003C\/li\u003E\r\n        \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/webform\/webform-add-ons\u0022\u003Emore...\u003C\/a\u003E\u003C\/li\u003E\r\n      \u003C\/ul\u003E\r\n    \u003C\/td\u003E\r\n  \u003C\/tr\u003E\r\n\u003C\/table\u003E\r\n\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022100%\u0022 bgcolor=\u0022#F5F5F5\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd width=\u002248\u0022 valign=\u0022middle\u0022\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/updates\/webform-module-for-drupal-8-diy-accessibility\u0022\u003E\u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2019-01-24\/accessible-forward.png\u0022 width=\u002248\u0022 height=\u002248\u0022 alt=\u0022Handicapped Accessible sign\u0022 \/\u003E\u003C\/a\u003E\u003C\/td\u003E\r\n\u003Ctd valign=\u0022middle\u0022\u003E\r\n\u003Cstrong\u003EThe Webform module is committed to being accessible to everyone\u003C\/strong\u003E\u003Cbr \/\u003E\r\nView our \u003Ca href=\u0022https:\/\/docs.google.com\/spreadsheets\/d\/19OJCDet7RF6pXmnSEq1-5EVvQPpU8VFFuD0ADxRtKb4\u0022\u003Eaccessibility self-assessment\u003C\/a\u003E | Learn more \u003Ca href=\u0022https:\/\/opencollective.com\/webform\/updates\/webform-module-for-drupal-8-diy-accessibility\u0022\u003E about our commitment\u003C\/a\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\r\n\u003Ch2\u003EGetting involved and support options\u003C\/h2\u003E\r\n\r\n\u003Ctable class=\u0022views-view-grid\u0022\u003E\r\n  \u003Ctr\u003E\r\n    \u003Ctd with=\u002233%\u0022\u003E\r\n    \u003Cdiv class=\u0022note\u0022\u003E\r\n      \u003Cdiv align=\u0022center\u0022\u003E\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022150\u0022\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/drupal_225.png\u0022 \/\u003E\u003C\/td\u003E\u003C\/tr\u003E\u003C\/table\u003E\u003C\/div\u003E\r\n      \u003Ch3\u003EGet involved\u003C\/h3\u003E\r\n      \u003Cp\u003EGet involved in the Drupal community and the Webform module. Review a patch, write documentation, contribute code, volunteer, and more...\u003C\/p\u003E\r\n      \u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022action-button\u0022 href=\u0022https:\/\/www.drupal.org\/contribute\u0022\u003EContribute\u003C\/a\u003E\u003C\/p\u003E\r\n      \u003Cp\u003E\u003Cem\u003EFree for all\u003C\/em\u003E\u003C\/p\u003E\r\n    \u003C\/div\u003E\r\n    \u003C\/td\u003E\r\n    \u003Ctd with=\u002233%\u0022\u003E\r\n    \u003Cdiv class=\u0022note\u0022\u003E\r\n      \u003Cdiv align=\u0022center\u0022\u003E\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022150\u0022\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/drupal-association.png\u0022 \/\u003E\u003C\/td\u003E\u003C\/tr\u003E\u003C\/table\u003E\u003C\/div\u003E\r\n      \u003Ch3\u003EDrupal Association\u003C\/h3\u003E\r\n      \u003Cp\u003EThe Drupal Association is an educational non-profit organization that fosters and supports the Drupal software project, the community and its growth.\u003C\/p\u003E\r\n      \u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022action-button\u0022 href=\u0022https:\/\/www.drupal.org\/association\u0022\u003EJoin\u003C\/a\u003E\u003C\/p\u003E\r\n      \u003Cp\u003E\u003Cem\u003EStarting at $5 a month\u003C\/em\u003E\u003C\/p\u003E\r\n    \u003C\/div\u003E\r\n    \u003C\/td\u003E\r\n    \u003Ctd with=\u002233%\u0022\u003E\r\n    \u003Cdiv class=\u0022note\u0022\u003E\r\n      \u003Cdiv align=\u0022center\u0022\u003E\u003Ctable class=\u0022views-view-grid\u0022 width=\u0022150\u0022\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/webform_225.png\u0022 \/\u003E\u003C\/td\u003E\u003C\/tr\u003E\u003C\/table\u003E\u003C\/div\u003E\r\n      \u003Ch3\u003EFund development\u003C\/h3\u003E\r\n      \u003Cp\u003EHelp fund the day-to-day tasks required to maintain the Webform module. Funds are used to triage issues, resolve security issues, and tag new releases.\u003C\/p\u003E\r\n      \u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022action-button\u0022 href=\u0022https:\/\/opencollective.com\/webform\u0022\u003EFund\u003C\/a\u003E\u003C\/p\u003E\r\n      \u003Cp\u003E\u003Cem\u003EStarting at $5 a month\u003C\/em\u003E\u003C\/p\u003E\r\n    \u003C\/div\u003E\r\n    \u003C\/td\u003E\r\n  \u003C\/tr\u003E\r\n\u003C\/table\u003E\r\n\r\n\u003Ch2\u003EGetting the most out of the Webform module\u003C\/h2\u003E\r\n\r\n\u003Ch3\u003EDiscovering the Webform module\u003C\/h3\u003E\r\n\u003Cp\u003EThe best way to understand how the Webform module works is to try it out by \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-introduction\u0022\u003Einstalling the module\u003C\/a\u003E. The Webform module\u0027s user interface includes inline help videos, which are also available on\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-videos\u0022\u003E Drupal.org\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/www.youtube.com\/channel\/UCuNY72GurNzdzXMsffs4VZw\u0022\u003EYouTube\u003C\/a\u003E. I recommend watching the \u003Ca href=\u0022https:\/\/www.youtube.com\/watch?v=VncMRSwjVto\u0022\u003EWebform module introduction\u003C\/a\u003E and exploring videos about advanced features, including \u003Ca href=\u0022https:\/\/youtu.be\/Zj1HQNGTHFI\u0022\u003EPDF generation\u003C\/a\u003E, \u003Ca href=\u0022https:\/\/youtu.be\/08Ze1eACM48\u0022\u003Ecustom elements\u003C\/a\u003E, and \u003Ca href=\u0022https:\/\/youtu.be\/oMgOprfJTWA\u0022\u003Esharing forms\u003C\/a\u003E.\u003C\/p\u003E\r\n\u003Cp\u003EThe Webform module provides a great deal of functionality out of the box. It includes example modules that show all the available form elements and commonly used form features, including multi-step forms. There are also demo modules that walk you through how to build advanced applications, including an event registration system and an application evaluation workflow.\u003C\/p\u003E\r\n\u003Cp\u003EOnce you have determined what \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-features\u0022\u003Efeatures\u003C\/a\u003E are available, you can start exploring \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-add-ons\u0022\u003Eadd-ons\u003C\/a\u003E, which are Drupal modules that provide additional features and integrations.\u003C\/p\u003E\r\n\u003Chr\/\u003E\r\n\r\n\u003Ch3\u003EFinding help with the Webform module\u003C\/h3\u003E\r\n\u003Cp\u003EThe Webform module\u0027s \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/issues\/webform\u0022\u003Eissue queue\u003C\/a\u003E is for bugs, feature requests, and planning. Please post general support questions to \u003Ca href=\u0022https:\/\/drupal.stackexchange.com\/questions\/tagged\/webforms\u0022\u003EDrupal Answers\u003C\/a\u003E. You can also ask questions or help answer questions on the \u003Ca href=\u0022https:\/\/drupal.slack.com\/messages\/C78MFLN9K\u0022\u003E#webform\u003C\/a\u003E channel on \u003Ca href=\u0022https:\/\/www.drupal.org\/slack\u0022\u003EDrupal Slack\u003C\/a\u003E.\u003C\/p\u003E\r\n\u003Chr\/\u003E\r\n\r\n\u003Ch3\u003EGetting involved with the Webform module and the Drupal community\u003C\/h3\u003E\r\n\u003Cp\u003EThe Webform module is part of Drupal\u0027s contributed module ecosystem. The Webform module and Drupal are \u003Ca href=\u0022https:\/\/www.drupal.org\/about\u0022\u003Eopen source\u003C\/a\u003E and built by a collaboration of people worldwide that make up the Drupal community. By installing and using Drupal, you are a member of this community. I encourage you and your organization to \u003Ca href=\u0022https:\/\/www.drupal.org\/contribute\u0022\u003Econtribute something\u003C\/a\u003E; sometimes, simply reporting and maybe fixing a minor bug can make a difference.\u003C\/p\u003E\r\n\u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022secondary-button\u0022 href=\u0022https:\/\/www.drupal.org\/contribute\u0022\u003EGet involved in the Drupal community\u003C\/a\u003E\u003C\/p\u003E\r\n\u003Chr\/\u003E\r\n\r\n\u003Ch3\u003ESupporting the Drupal Association\u003C\/h3\u003E\r\n\u003Cp\u003EThe Drupal Association provides the infrastructure for hosting and distributing the Webform module. Being a member of the Drupal Association ensures that our collaboration and community are supported and sustainable.\u003C\/p\u003E\r\n\u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022secondary-button\u0022 href=\u0022https:\/\/www.drupal.org\/association\u0022\u003EJoin the Drupal Association\u003C\/a\u003E\u003C\/p\u003E\r\n\u003Chr\/\u003E\r\n\r\n\u003Ch3\u003EFunding ongoing development of the Webform module\u003C\/h3\u003E\r\n\u003Cp\u003EThe Webform module uses an Open Collective to transparently collect funds that support the day-to-day tasks around the Webform module and ensure stable and reliable releases. Backing the Webform module\u0027s Open Collective helps guarantee that no tasks fall through the cracks.\u003C\/p\u003E\r\n\u003Cp align=\u0022center\u0022\u003E\u003Ca class=\u0022secondary-button\u0022 href=\u0022https:\/\/opencollective.com\/webform\u0022\u003EBack the Webform module\u0027s Open Collective\u003C\/a\u003E\u003C\/p\u003E\r\n\u003Chr\/\u003E\r\n\r\n\u003Ch2\u003EAbout the Webform module\u003C\/h2\u003E\r\n\r\n\u003Cdiv class=\u0022note-version\u0022\u003E\r\n  \u003Ch4\u003EAbout the Webform module for Drupal 10+\u003C\/h4\u003E\r\n  \u003Cp\u003E\u003Cstrong\u003EWebform for Drupal 10+\u003C\/strong\u003E is a completely new code base that takes a different but familiar approach to solve the challenges of building rich, flexible, and maintainable client-facing forms for a Drupal website. Webform for Drupal 10+ includes many new features.\u003C\/p\u003E\r\n\r\n\u003Cp\u003E\u003Cstrong\u003EUnder development: Webform 6.3.x\u003C\/strong\u003E (for Drupal 10.3.x+\/11.x) has new features, bug fixes, and performance improvements with \u003Cstrong\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/webform_deprecated\u0022\u003Edeprecated sub-modules moved to a dedicated project\u003C\/a\u003E\u003C\/strong\u003E and only for Drupal 10.3.x+ and Drupal 11.\u003C\/p\u003E\r\n\r\n\u003Cp\u003E\u003Cstrong\u003EWebform 6.2.x\u003C\/strong\u003E (for Drupal 10.2.x+) is the same as Webform 6.1.x with deprecated code removed and only for Drupal 10.2.x+. This branch will receive minimal bug fixes until some time after 6.3.x has a full release. Further changes currently held up because \u003Ca href=\u0022\/project\/webform\/issues\/3500571\u0022\u003Etests are not passing\u003C\/a\u003E.\u003C\/p\u003E\r\n\r\n\u003Cp\u003ENo other versions are supported.\u003C\/p\u003E\r\n\r\n  \u003Cp\u003EPlease visit the Webform documentation pages for an \u003Ca href=\u0022\/node\/2834423\u0022\u003Eintroduction\u003C\/a\u003E, \u003Ca href=\u0022\/node\/2837024\u0022\u003Efeatures overview\u003C\/a\u003E, \u003Ca href=\u0022\/node\/2834424\u0022\u003Evideo tutorials\u003C\/a\u003E, and more.\u003C\/p\u003E\r\n\r\n\u003C\/div\u003E\r\n\r\n\u003Cdiv class=\u0022help\u0022\u003E\r\n  \u003Cdiv\u003E\u003Cstrong\u003EMigrating from Drupal 6\/7 to Drupal 10+.\u003C\/strong\u003E\u003C\/div\u003E\r\n  \u003Cp\u003EPlease see the \u003Ca href=\u0022\/project\/webform_migrate\u0022\u003EWebform: Migrate module\u003C\/a\u003E, which provides webform and submission migration routines from Drupal 6\/7  to Drupal 10+.\u003C\/p\u003E\r\n\u003C\/div\u003E\r\n\r\n\u003Cdiv align=\u0022center\u0022\u003E\r\n\u003Ch2\u003EThank you to the Webform module\u0027s\u003Cbr\/\u003EOpen Collective Sponsors\u003C\/h2\u003E\r\n\u003Ch3\u003EImpact Sponsor\u003C\/h3\u003E\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u002225%\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/drupal_225.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-impact-sponsor-27747\/checkout\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-impact-sponsor-27747\/checkout\u0022 class=\u0022action-button\u0022\u003EBecome an Impact Sponsor\u003C\/a\u003E\r\n\r\n\r\n\u003Ch3\u003ESupporting Sponsors\u003C\/h3\u003E\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u002240%\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd width=\u002250%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/drupal_225.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002250%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/drupal_225.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022 class=\u0022action-button\u0022\u003EBecome a Supporting Sponsor\u003C\/a\u003E\r\n\r\n\u003Ch3\u003EGrowth Backers\u003C\/h3\u003E\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u002260%\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/acquia.png\u0022 alt=\u0022Acquia\u0022\/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/acquia.com\u0022\u003EAcquia\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/new-relic.png\u0022 alt=\u0022\u0022New Relic\u0022\/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/newrelic.com\u0022\u003ENew Relic\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/next-tide.png\u0022 alt=\u0022nextide\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022http:\/\/www.nextide.ca\/\u0022\u003Enextide\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/intranet_solutions.png\u0022 alt=\u0022Intranet Solutions\u0022\/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/www.intranets.com.au\/\u0022\u003EIntranet Solutions\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u002260%\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/techreviewer.png\u0022 alt=\u0022TechReviewer\u0022\/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/techreviewer.co\/\u0022\u003ETechReviewer\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/instinctools-logo.png\u0022 alt=\u0022*instinctools\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/www.instinctools.com\/\u0022\u003E*instinctools\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/surebet.png\u0022 alt=\u0022SureBet\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/sure.bet\u0022\u003ESureBet\u003C\/a\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/morris-animal-foundation.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/www.morrisanimalfoundation.org\/\u0022\u003EMorris Animal Foundation\u003C\/a\u003E\u003C\/div\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\u003Ctable class=\u0022views-view-grid\u0022 width=\u002260%\u0022\u003E\u003Ctr\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/not-on-gamstop-casinos-logo.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/www.notongamstopcasinos.com\u0022\u003ENotOn\u003Cbr\/\u003EGamstop\u003Cbr\/\u003ECasinos.com\u003C\/a\u003E\u003C\/div\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/justuk-club-logo.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/justuk.club\/\u0022\u003Ejustuk.club\u003C\/a\u003E\u003C\/div\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/zoocha.jpeg\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/www.zoocha.com\/\u0022\u003EZoocha\u003C\/a\u003E\u003C\/div\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003Ctd width=\u002225%\u0022\u003E\r\n  \u003Cimg src=\u0022https:\/\/www.drupal.org\/files\/issues\/2021-04-03\/drupal_225.png\u0022 \/\u003E\r\n  \u003Cdiv align=\u0022center\u0022\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-growth-backer-7569\/checkout\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\u003C\/div\u003E\r\n\u003C\/td\u003E\r\n\u003C\/tr\u003E\u003C\/table\u003E\r\n\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-growth-backer-7569\/checkout\u0022 class=\u0022action-button\u0022\u003EBecome a Growth Backer\u003C\/a\u003E\r\n\r\n\u003Chr\/\u003E\r\n\r\n\u003Cp\u003E\u003Cstrong\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform#section-contributors\u0022\u003EView all the contributors to the Webform module\u0027s Open Collective\u003C\/a\u003E\u003C\/strong\u003E\u003C\/p\u003E\r\n\r\n\u003Chr\/\u003E\r\n\r\n\u003C\/div\u003E\r\n\r\n\u003Cbr clear=\u0022both\u0022\/\u003E\r\n","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EThe Webform module allows you to build any type of form to collect any type of data, which can be submitted to any application or system. Every single behavior and aspect of your forms and their inputs are customizable. Whether you need a multi-page form containing a multi-column input layout with conditional logic or a simple contact form that pushes data to a SalesForce\/CRM, it is all possible using the Webform module for Drupal 10+.\u003C\/p\u003E\n\u003Cp\u003E\n\u003Ca href=\u0022https:\/\/youtu.be\/VncMRSwjVto\u0022 rel=\u0022nofollow\u0022\u003E\u25b6 Watch an introduction to Webform\u003C\/a\u003E\u003Cbr\u003E\u003Cbr\u003E\n\u003Ca href=\u0022https:\/\/simplytest.me\/project\/webform\/6.x\u0022 rel=\u0022nofollow\u0022\u003ETry Webform\u003C\/a\u003E\n\u003C\/p\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n\u003Cdiv class=\u0022note\u0022\u003E\u003Ca href=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-example.png\u0022 rel=\u0022nofollow\u0022\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003Cbr\u003E\u003Cstrong\u003EWizard example\u003C\/strong\u003E\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n\u003Cdiv class=\u0022note\u0022\u003E\u003Ca href=\u0022\/files\/issues\/2018-05-19\/webfork-wizard-admin.png\u0022 rel=\u0022nofollow\u0022\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003Cbr\u003E\u003Cstrong\u003EForm builder\u003C\/strong\u003E\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022features\u0022\u003EFeatures\u003C\/h2\u003E\n\u003Cblockquote\u003E\u003Cp\u003EThe Webform module provides all the features expected from an enterprise proprietary form builder combined with the flexibility and openness of Drupal.\u003C\/p\u003E\u003C\/blockquote\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n      \u003Cstrong\u003EForms\u003C\/strong\u003E\n\u003Cul\u003E\n\u003Cli\u003EDrafts\u003C\/li\u003E\n\u003Cli\u003EPreview\u003C\/li\u003E\n\u003Cli\u003EScheduling\u003C\/li\u003E\n\u003Cli\u003ESharing\u003C\/li\u003E\n\u003Cli\u003EConfirmations\u003C\/li\u003E\n\u003Cli\u003EModal dialogs\u003C\/li\u003E\n\u003Cli\u003EAccess controls\u003C\/li\u003E\n\u003Cli\u003EPrepopulation\u003C\/li\u003E\n\u003Cli\u003EMultistep\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n      \u003Cstrong\u003ESubmissions\u003C\/strong\u003E\n\u003Cul\u003E\n\u003Cli\u003EEmail notifications\u003C\/li\u003E\n\u003Cli\u003ERemote post\u003C\/li\u003E\n\u003Cli\u003ECustomizable results view\u003C\/li\u003E\n\u003Cli\u003ESubmission flagging\u003C\/li\u003E\n\u003Cli\u003ESubmission export\/import\u003C\/li\u003E\n\u003Cli\u003ESubmission upload\u003C\/li\u003E\n\u003Cli\u003ESubmission limits\u003C\/li\u003E\n\u003Cli\u003EPDF generation\u003C\/li\u003E\n\u003Cli\u003EAutomatic purging\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n      \u003Cstrong\u003EElements\u003C\/strong\u003E\n\u003Cul\u003E\n\u003Cli\u003EStandard inputs\u003C\/li\u003E\n\u003Cli\u003EDate\/time inputs\u003C\/li\u003E\n\u003Cli\u003EFile uploads\u003C\/li\u003E\n\u003Cli\u003EComputed elements\u003C\/li\u003E\n\u003Cli\u003EComposite elements\u003C\/li\u003E\n\u003Cli\u003ECustom elements\u003C\/li\u003E\n\u003Cli\u003EEntity references\u003C\/li\u003E\n\u003Cli\u003EScales and Likerts\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-features\u0022 rel=\u0022nofollow\u0022\u003Emore....\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n      \u003Cstrong\u003EAdd-ons\u003C\/strong\u003E\n\u003Cul\u003E\n\u003Cli\u003ESPAM protection\u003C\/li\u003E\n\u003Cli\u003ECRM integration\u003C\/li\u003E\n\u003Cli\u003EData encryption\u003C\/li\u003E\n\u003Cli\u003ESubmission analysis\u003C\/li\u003E\n\u003Cli\u003EMail handling\u003C\/li\u003E\n\u003Cli\u003ETranslations\u003C\/li\u003E\n\u003Cli\u003EHeadless support\u003C\/li\u003E\n\u003Cli\u003EWorkflow\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/webform\/webform-add-ons\u0022 rel=\u0022nofollow\u0022\u003Emore...\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/updates\/webform-module-for-drupal-8-diy-accessibility\u0022 rel=\u0022nofollow\u0022\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 width=\u002216\u0022 height=\u002216\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/a\u003E\u003C\/td\u003E\n\u003Ctd\u003E\n\u003Cstrong\u003EThe Webform module is committed to being accessible to everyone\u003C\/strong\u003E\u003Cbr\u003E\nView our \u003Ca href=\u0022https:\/\/docs.google.com\/spreadsheets\/d\/19OJCDet7RF6pXmnSEq1-5EVvQPpU8VFFuD0ADxRtKb4\u0022 rel=\u0022nofollow\u0022\u003Eaccessibility self-assessment\u003C\/a\u003E | Learn more \u003Ca href=\u0022https:\/\/opencollective.com\/webform\/updates\/webform-module-for-drupal-8-diy-accessibility\u0022 rel=\u0022nofollow\u0022\u003E about our commitment\u003C\/a\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022getting-involved-and-support-options\u0022\u003EGetting involved and support options\u003C\/h2\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n\u003Cdiv class=\u0022note\u0022\u003E\n\u003Cdiv\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003C\/div\u003E\n\u003Ch3 id=\u0022get-involved\u0022\u003EGet involved\u003C\/h3\u003E\n\u003Cp\u003EGet involved in the Drupal community and the Webform module. Review a patch, write documentation, contribute code, volunteer, and more...\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/contribute\u0022 rel=\u0022nofollow\u0022\u003EContribute\u003C\/a\u003E\u003C\/p\u003E\n\u003Cp\u003E\u003Cem\u003EFree for all\u003C\/em\u003E\u003C\/p\u003E\n\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n\u003Cdiv class=\u0022note\u0022\u003E\n\u003Cdiv\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003C\/div\u003E\n\u003Ch3 id=\u0022drupal-association\u0022\u003EDrupal Association\u003C\/h3\u003E\n\u003Cp\u003EThe Drupal Association is an educational non-profit organization that fosters and supports the Drupal software project, the community and its growth.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/association\u0022 rel=\u0022nofollow\u0022\u003EJoin\u003C\/a\u003E\u003C\/p\u003E\n\u003Cp\u003E\u003Cem\u003EStarting at $5 a month\u003C\/em\u003E\u003C\/p\u003E\n\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n\u003Cdiv class=\u0022note\u0022\u003E\n\u003Cdiv\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003C\/div\u003E\n\u003Ch3 id=\u0022fund-development\u0022\u003EFund development\u003C\/h3\u003E\n\u003Cp\u003EHelp fund the day-to-day tasks required to maintain the Webform module. Funds are used to triage issues, resolve security issues, and tag new releases.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\u0022 rel=\u0022nofollow\u0022\u003EFund\u003C\/a\u003E\u003C\/p\u003E\n\u003Cp\u003E\u003Cem\u003EStarting at $5 a month\u003C\/em\u003E\u003C\/p\u003E\n\u003C\/div\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022getting-the-most-out-of-the-webform-module\u0022\u003EGetting the most out of the Webform module\u003C\/h2\u003E\n\u003Ch3 id=\u0022discovering-the-webform-module\u0022\u003EDiscovering the Webform module\u003C\/h3\u003E\n\u003Cp\u003EThe best way to understand how the Webform module works is to try it out by \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-introduction\u0022 rel=\u0022nofollow\u0022\u003Einstalling the module\u003C\/a\u003E. The Webform module\u0027s user interface includes inline help videos, which are also available on\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-videos\u0022 rel=\u0022nofollow\u0022\u003E Drupal.org\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/www.youtube.com\/channel\/UCuNY72GurNzdzXMsffs4VZw\u0022 rel=\u0022nofollow\u0022\u003EYouTube\u003C\/a\u003E. I recommend watching the \u003Ca href=\u0022https:\/\/www.youtube.com\/watch?v=VncMRSwjVto\u0022 rel=\u0022nofollow\u0022\u003EWebform module introduction\u003C\/a\u003E and exploring videos about advanced features, including \u003Ca href=\u0022https:\/\/youtu.be\/Zj1HQNGTHFI\u0022 rel=\u0022nofollow\u0022\u003EPDF generation\u003C\/a\u003E, \u003Ca href=\u0022https:\/\/youtu.be\/08Ze1eACM48\u0022 rel=\u0022nofollow\u0022\u003Ecustom elements\u003C\/a\u003E, and \u003Ca href=\u0022https:\/\/youtu.be\/oMgOprfJTWA\u0022 rel=\u0022nofollow\u0022\u003Esharing forms\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003EThe Webform module provides a great deal of functionality out of the box. It includes example modules that show all the available form elements and commonly used form features, including multi-step forms. There are also demo modules that walk you through how to build advanced applications, including an event registration system and an application evaluation workflow.\u003C\/p\u003E\n\u003Cp\u003EOnce you have determined what \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-features\u0022 rel=\u0022nofollow\u0022\u003Efeatures\u003C\/a\u003E are available, you can start exploring \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/8\/modules\/webform\/webform-add-ons\u0022 rel=\u0022nofollow\u0022\u003Eadd-ons\u003C\/a\u003E, which are Drupal modules that provide additional features and integrations.\u003C\/p\u003E\n\u003Chr\u003E\n\u003Ch3 id=\u0022finding-help-with-the-webform-module\u0022\u003EFinding help with the Webform module\u003C\/h3\u003E\n\u003Cp\u003EThe Webform module\u0027s \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/issues\/webform\u0022 rel=\u0022nofollow\u0022\u003Eissue queue\u003C\/a\u003E is for bugs, feature requests, and planning. Please post general support questions to \u003Ca href=\u0022https:\/\/drupal.stackexchange.com\/questions\/tagged\/webforms\u0022 rel=\u0022nofollow\u0022\u003EDrupal Answers\u003C\/a\u003E. You can also ask questions or help answer questions on the \u003Ca href=\u0022https:\/\/drupal.slack.com\/messages\/C78MFLN9K\u0022 rel=\u0022nofollow\u0022\u003E#webform\u003C\/a\u003E channel on \u003Ca href=\u0022https:\/\/www.drupal.org\/slack\u0022 rel=\u0022nofollow\u0022\u003EDrupal Slack\u003C\/a\u003E.\u003C\/p\u003E\n\u003Chr\u003E\n\u003Ch3 id=\u0022getting-involved-with-the-webform-module-and-the-drupal-community\u0022\u003EGetting involved with the Webform module and the Drupal community\u003C\/h3\u003E\n\u003Cp\u003EThe Webform module is part of Drupal\u0027s contributed module ecosystem. The Webform module and Drupal are \u003Ca href=\u0022https:\/\/www.drupal.org\/about\u0022 rel=\u0022nofollow\u0022\u003Eopen source\u003C\/a\u003E and built by a collaboration of people worldwide that make up the Drupal community. By installing and using Drupal, you are a member of this community. I encourage you and your organization to \u003Ca href=\u0022https:\/\/www.drupal.org\/contribute\u0022 rel=\u0022nofollow\u0022\u003Econtribute something\u003C\/a\u003E; sometimes, simply reporting and maybe fixing a minor bug can make a difference.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/contribute\u0022 rel=\u0022nofollow\u0022\u003EGet involved in the Drupal community\u003C\/a\u003E\u003C\/p\u003E\n\u003Chr\u003E\n\u003Ch3 id=\u0022supporting-the-drupal-association\u0022\u003ESupporting the Drupal Association\u003C\/h3\u003E\n\u003Cp\u003EThe Drupal Association provides the infrastructure for hosting and distributing the Webform module. Being a member of the Drupal Association ensures that our collaboration and community are supported and sustainable.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/association\u0022 rel=\u0022nofollow\u0022\u003EJoin the Drupal Association\u003C\/a\u003E\u003C\/p\u003E\n\u003Chr\u003E\n\u003Ch3 id=\u0022funding-ongoing-development-of-the-webform-module\u0022\u003EFunding ongoing development of the Webform module\u003C\/h3\u003E\n\u003Cp\u003EThe Webform module uses an Open Collective to transparently collect funds that support the day-to-day tasks around the Webform module and ensure stable and reliable releases. Backing the Webform module\u0027s Open Collective helps guarantee that no tasks fall through the cracks.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\u0022 rel=\u0022nofollow\u0022\u003EBack the Webform module\u0027s Open Collective\u003C\/a\u003E\u003C\/p\u003E\n\u003Chr\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022about-the-webform-module\u0022\u003EAbout the Webform module\u003C\/h2\u003E\n\u003Cdiv class=\u0022note-version\u0022\u003E\n\u003Ch4 id=\u0022about-the-webform-module-for-drupal-10\u0022\u003EAbout the Webform module for Drupal 10+\u003C\/h4\u003E\n\u003Cp\u003E\u003Cstrong\u003EWebform for Drupal 10+\u003C\/strong\u003E is a completely new code base that takes a different but familiar approach to solve the challenges of building rich, flexible, and maintainable client-facing forms for a Drupal website. Webform for Drupal 10+ includes many new features.\u003C\/p\u003E\n\u003Cp\u003E\u003Cstrong\u003EUnder development: Webform 6.3.x\u003C\/strong\u003E (for Drupal 10.3.x+\/11.x) has new features, bug fixes, and performance improvements with \u003Cstrong\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/webform_deprecated\u0022 rel=\u0022nofollow\u0022\u003Edeprecated sub-modules moved to a dedicated project\u003C\/a\u003E\u003C\/strong\u003E and only for Drupal 10.3.x+ and Drupal 11.\u003C\/p\u003E\n\u003Cp\u003E\u003Cstrong\u003EWebform 6.2.x\u003C\/strong\u003E (for Drupal 10.2.x+) is the same as Webform 6.1.x with deprecated code removed and only for Drupal 10.2.x+. This branch will receive minimal bug fixes until some time after 6.3.x has a full release. Further changes currently held up because \u003Ca href=\u0022\/project\/webform\/issues\/3500571\u0022 rel=\u0022nofollow\u0022\u003Etests are not passing\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003ENo other versions are supported.\u003C\/p\u003E\n\u003Cp\u003EPlease visit the Webform documentation pages for an \u003Ca href=\u0022\/node\/2834423\u0022 rel=\u0022nofollow\u0022\u003Eintroduction\u003C\/a\u003E, \u003Ca href=\u0022\/node\/2837024\u0022 rel=\u0022nofollow\u0022\u003Efeatures overview\u003C\/a\u003E, \u003Ca href=\u0022\/node\/2834424\u0022 rel=\u0022nofollow\u0022\u003Evideo tutorials\u003C\/a\u003E, and more.\u003C\/p\u003E\n\u003C\/div\u003E\n\u003Cdiv\u003E\n\u003Cdiv\u003E\u003Cstrong\u003EMigrating from Drupal 6\/7 to Drupal 10+.\u003C\/strong\u003E\u003C\/div\u003E\n\u003Cp\u003EPlease see the \u003Ca href=\u0022\/project\/webform_migrate\u0022 rel=\u0022nofollow\u0022\u003EWebform: Migrate module\u003C\/a\u003E, which provides webform and submission migration routines from Drupal 6\/7  to Drupal 10+.\u003C\/p\u003E\n\u003C\/div\u003E\n\u003Cdiv\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022thank-you-to-the-webform-module-sopen-collective-sponsors\u0022\u003EThank you to the Webform module\u0027sOpen Collective Sponsors\u003C\/h2\u003E\n\u003Ch3 id=\u0022impact-sponsor\u0022\u003EImpact Sponsor\u003C\/h3\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-impact-sponsor-27747\/checkout\u0022 rel=\u0022nofollow\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-impact-sponsor-27747\/checkout\u0022 rel=\u0022nofollow\u0022\u003EBecome an Impact Sponsor\u003C\/a\u003E\u003C\/p\u003E\n\u003Ch3 id=\u0022supporting-sponsors\u0022\u003ESupporting Sponsors\u003C\/h3\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022 rel=\u0022nofollow\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022 rel=\u0022nofollow\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-supporting-sponsor-27748\/checkout\u0022 rel=\u0022nofollow\u0022\u003EBecome a Supporting Sponsor\u003C\/a\u003E\u003C\/p\u003E\n\u003Ch3 id=\u0022growth-backers\u0022\u003EGrowth Backers\u003C\/h3\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/acquia.com\u0022 rel=\u0022nofollow\u0022\u003EAcquia\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/newrelic.com\u0022 rel=\u0022nofollow\u0022\u003ENew Relic\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022http:\/\/www.nextide.ca\/\u0022 rel=\u0022nofollow\u0022\u003Enextide\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/www.intranets.com.au\/\u0022 rel=\u0022nofollow\u0022\u003EIntranet Solutions\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/techreviewer.co\/\u0022 rel=\u0022nofollow\u0022\u003ETechReviewer\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/www.instinctools.com\/\u0022 rel=\u0022nofollow\u0022\u003E*instinctools\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/sure.bet\u0022 rel=\u0022nofollow\u0022\u003ESureBet\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/www.morrisanimalfoundation.org\/\u0022 rel=\u0022nofollow\u0022\u003EMorris Animal Foundation\u003C\/a\u003E\u003C\/div\u003E\n\u003C\/td\u003E\u003C\/tr\u003E\u003C\/table\u003E\u003C\/div\u003E\n\n\n\n\u003Ctable\u003E\n\u003Ctr\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/www.notongamstopcasinos.com\u0022 rel=\u0022nofollow\u0022\u003ENotOn\u003Cbr\u003EGamstop\u003Cbr\u003ECasinos.com\u003C\/a\u003E\u003C\/div\u003E\n\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/justuk.club\/\u0022 rel=\u0022nofollow\u0022\u003Ejustuk.club\u003C\/a\u003E\u003C\/div\u003E\n\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/www.zoocha.com\/\u0022 rel=\u0022nofollow\u0022\u003EZoocha\u003C\/a\u003E\u003C\/div\u003E\n\n\u003C\/td\u003E\n\u003Ctd\u003E\n  \u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\n\u003Cdiv\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-growth-backer-7569\/checkout\u0022 rel=\u0022nofollow\u0022\u003EYour Company\u003C\/a\u003E\u003C\/div\u003E\n\n\u003C\/td\u003E\n\u003C\/tr\u003E\n\u003C\/table\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform\/contribute\/organization-growth-backer-7569\/checkout\u0022 rel=\u0022nofollow\u0022\u003EBecome a Growth Backer\u003C\/a\u003E\u003C\/p\u003E\n\u003Chr\u003E\n\u003Cp\u003E\u003Cstrong\u003E\u003Ca href=\u0022https:\/\/opencollective.com\/webform#section-contributors\u0022 rel=\u0022nofollow\u0022\u003EView all the contributors to the Webform module\u0027s Open Collective\u003C\/a\u003E\u003C\/strong\u003E\u003C\/p\u003E\n\u003Chr\u003E\n\n\u003Cp\u003E\u003Cbr\u003E\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Build forms to collect data from site visitors. Create everything from a simple contact form to a multi-page form with many fields, conditional logic, and email notifications."},"field_active_installs":"{\u00228.x-4.x\u0022:2,\u00228.x-5.x\u0022:15094,\u00226.x\u0022:216,\u00226.0.x\u0022:4255,\u00226.1.x\u0022:20203,\u00226.2.x\u0022:118789,\u00226.3.x\u0022:63070}","field_active_installs_total":221629,"field_composer_namespace":"drupal\/webform","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/webform\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"webform","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0","meta":{"drupal_internal__target_id":371407}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/uid?resourceVersion=id%3A20005148"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/relationships\/uid?resourceVersion=id%3A20005148"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/field_development_status?resourceVersion=id%3A20005148"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/relationships\/field_development_status?resourceVersion=id%3A20005148"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/field_maintenance_status?resourceVersion=id%3A20005148"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/relationships\/field_maintenance_status?resourceVersion=id%3A20005148"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"3322058a-a158-4806-ac5b-9bcabc95edac","meta":{"drupal_internal__target_id":185}},{"type":"taxonomy_term--module_categories","id":"7c5db130-79b8-4130-a09c-c197333e7d13","meta":{"drupal_internal__target_id":190}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/field_module_categories?resourceVersion=id%3A20005148"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/relationships\/field_module_categories?resourceVersion=id%3A20005148"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/field_project_images?resourceVersion=id%3A20005148"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/aae26432-89cb-4d95-ac62-6b6fbb74f8d6\/relationships\/field_project_images?resourceVersion=id%3A20005148"}}}}},{"type":"node--project_module","id":"8c07b80d-39fb-4a76-8a1d-41ad992813bd","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd?resourceVersion=id%3A20011928"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":948488,"status":true,"title":"Field Group","created":"2010-10-21T15:14:11+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Fieldgroup will, as the name implies, group fields together. All fieldable entities will have the possibility to add groups to wrap their fields together. Fieldgroup comes with default HTML wrappers like vertical tabs, horizontal tabs, accordions, fieldsets or div wrappers. \r\n\r\nThe field group project is a follow-up on the field group module in \u003Ca href=\u0022http:\/\/drupal.org\/project\/cck\u0022\u003ECCK\u003C\/a\u003E.\r\n\r\n\u003Ch3\u003EAvailable group types\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003EFieldsets\u003C\/li\u003E\r\n\u003Cli\u003EHorizontal tabs\u003C\/li\u003E\r\n\u003Cli\u003EVertical tabs\u003C\/li\u003E\r\n\u003Cli\u003EDetails\u003C\/li\u003E\r\n\u003Cli\u003EAccordions\u003C\/li\u003E\r\n\u003Cli\u003EDivs\u003C\/li\u003E\r\n\u003Cli\u003EMultipage steps: \u003Cstrong\u003ENote: This is only client side and removed in drupal 8 version.\u003C\/strong\u003E\u003C\/li\u003E\r\n\u003Cli\u003EHTML5 elements\u003C\/li\u003E\r\n\u003Cli\u003EHtml elements\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ENotes\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003EThis project will NOT include the multigroup feature as it existed for drupal6. Use \u003Ca href=\u0022http:\/\/drupal.org\/project\/field_collection\u0022\u003Ehttp:\/\/drupal.org\/project\/field_collection\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003EIn Drupal 8, the old Collapsible fieldsets with default open or closed state are now called \u0022Details\u0022.\r\nTick \u0022Display element open by default.\u0022 if you want the fieldset open by default, otherwise it will be closed by default.\u003C\/li\u003E\r\n\u003Cli\u003EIn the Drupal 8 version, Horizontal and vertical tabs are merged into 1 type: \u0027Tabs\u0027\u003C\/li\u003E\r\n\u003Cli\u003EFor Drupal 8.3 and higher, use the fieldgroup 8.3 branch. When you still use a Drupal version lower then 8.3, use the fieldgroup 8.1 branch\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EModules that depend on fieldgroup\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_views\u0022\u003EFieldgroup views\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_multiple\u0022\u003EFieldgroup multiple\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/multistep\u0022\u003EMultistep\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_table\u0022\u003EField group table\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/foundation_group\u0022\u003EFoundation group\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/field_group_link\u0022\u003EField group link\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_colorbox\u0022\u003EField group colorbox\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/field_group_background_image\u0022\u003EField group background image\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/popup_field_group\u0022\u003EField group Popup\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/bootstrap_fieldgroup\u0022\u003EField group Bootstrap\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_layout\u0022\u003EField group Layout\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_label\u0022\u003EField group Label\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\u003Cp\u003EOpen an issue if you want to add another module in thie list!\u003C\/p\u003E\r\n\r\n\u003Ch3\u003ERelated modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/ds\u0022\u003EDisplay suite\u003C\/a\u003E: DS will define a layout resulting in a Fields UI with regions and groups.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EExtra screenshots and video\u0027s\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/www.youtube.com\/watch?v=vhA5b5KpHZw\u0022\u003EVideo with Multipage feature in field_group\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EFieldgroup will, as the name implies, group fields together. All fieldable entities will have the possibility to add groups to wrap their fields together. Fieldgroup comes with default HTML wrappers like vertical tabs, horizontal tabs, accordions, fieldsets or div wrappers. \u003C\/p\u003E\n\u003Cp\u003EThe field group project is a follow-up on the field group module in \u003Ca href=\u0022http:\/\/drupal.org\/project\/cck\u0022 rel=\u0022nofollow\u0022\u003ECCK\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ch3 id=\u0022available-group-types\u0022\u003EAvailable group types\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003EFieldsets\u003C\/li\u003E\n\u003Cli\u003EHorizontal tabs\u003C\/li\u003E\n\u003Cli\u003EVertical tabs\u003C\/li\u003E\n\u003Cli\u003EDetails\u003C\/li\u003E\n\u003Cli\u003EAccordions\u003C\/li\u003E\n\u003Cli\u003EDivs\u003C\/li\u003E\n\u003Cli\u003EMultipage steps: \u003Cstrong\u003ENote: This is only client side and removed in drupal 8 version.\u003C\/strong\u003E\u003C\/li\u003E\n\u003Cli\u003EHTML5 elements\u003C\/li\u003E\n\u003Cli\u003EHtml elements\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022notes\u0022\u003ENotes\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003EThis project will NOT include the multigroup feature as it existed for drupal6. Use \u003Ca href=\u0022http:\/\/drupal.org\/project\/field_collection\u0022 rel=\u0022nofollow\u0022\u003Ehttp:\/\/drupal.org\/project\/field_collection\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003EIn Drupal 8, the old Collapsible fieldsets with default open or closed state are now called \u0022Details\u0022.\u003Cbr\u003E\nTick \u0022Display element open by default.\u0022 if you want the fieldset open by default, otherwise it will be closed by default.\u003C\/li\u003E\n\u003Cli\u003EIn the Drupal 8 version, Horizontal and vertical tabs are merged into 1 type: \u0027Tabs\u0027\u003C\/li\u003E\n\u003Cli\u003EFor Drupal 8.3 and higher, use the fieldgroup 8.3 branch. When you still use a Drupal version lower then 8.3, use the fieldgroup 8.1 branch\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022modules-that-depend-on-fieldgroup\u0022\u003EModules that depend on fieldgroup\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_views\u0022 rel=\u0022nofollow\u0022\u003EFieldgroup views\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_multiple\u0022 rel=\u0022nofollow\u0022\u003EFieldgroup multiple\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/multistep\u0022 rel=\u0022nofollow\u0022\u003EMultistep\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/field_group_table\u0022 rel=\u0022nofollow\u0022\u003EField group table\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/foundation_group\u0022 rel=\u0022nofollow\u0022\u003EFoundation group\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/field_group_link\u0022 rel=\u0022nofollow\u0022\u003EField group link\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_colorbox\u0022 rel=\u0022nofollow\u0022\u003EField group colorbox\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/field_group_background_image\u0022 rel=\u0022nofollow\u0022\u003EField group background image\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/popup_field_group\u0022 rel=\u0022nofollow\u0022\u003EField group Popup\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/bootstrap_fieldgroup\u0022 rel=\u0022nofollow\u0022\u003EField group Bootstrap\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_layout\u0022 rel=\u0022nofollow\u0022\u003EField group Layout\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/field_group_label\u0022 rel=\u0022nofollow\u0022\u003EField group Label\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EOpen an issue if you want to add another module in thie list!\u003C\/p\u003E\n\u003Ch3 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/ds\u0022 rel=\u0022nofollow\u0022\u003EDisplay suite\u003C\/a\u003E: DS will define a layout resulting in a Fields UI with regions and groups.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022extra-screenshots-and-video-s\u0022\u003EExtra screenshots and video\u0027s\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/www.youtube.com\/watch?v=vhA5b5KpHZw\u0022 rel=\u0022nofollow\u0022\u003EVideo with Multipage feature in field_group\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Allows fields to be grouped together in multiple group types, such as fieldsets, horizontal\/vertical tabs, details, accordions, div wrappers, or HTML elements"},"field_active_installs":"{\u00228.x-1.x\u0022:2800,\u00228.x-3.x\u0022:145066,\u00224.x\u0022:83,\u00224.0.x\u0022:72836}","field_active_installs_total":220785,"field_composer_namespace":"drupal\/field_group","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/field_group\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"field_group","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"5b62a101-9140-466e-ba38-fc4964536f53","meta":{"drupal_internal__target_id":322618}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/uid?resourceVersion=id%3A20011928"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/relationships\/uid?resourceVersion=id%3A20011928"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"219c1cf2-dd7f-474b-9dd5-a26643fbc699","meta":{"drupal_internal__target_id":27276}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/field_development_status?resourceVersion=id%3A20011928"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/relationships\/field_development_status?resourceVersion=id%3A20011928"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"cee844e2-68b5-489d-bafa-6a0ade2b6dfd","meta":{"drupal_internal__target_id":27273}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/field_maintenance_status?resourceVersion=id%3A20011928"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/relationships\/field_maintenance_status?resourceVersion=id%3A20011928"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}},{"type":"taxonomy_term--module_categories","id":"dcb48e9f-6afa-4842-8ef6-44b90b083fcc","meta":{"drupal_internal__target_id":200}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/field_module_categories?resourceVersion=id%3A20011928"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/relationships\/field_module_categories?resourceVersion=id%3A20011928"}}},"field_project_images":{"data":[{"type":"file--file","id":"d98fffa5-651b-4d49-9187-60ffa8741832","meta":{"alt":"fieldgroup_03.png","title":null,"width":700,"height":323,"drupal_internal__target_id":3362}},{"type":"file--file","id":"8405eab4-7661-4045-8028-f93dfa75c98c","meta":{"alt":"drupal-rocks blogpost D7 fieldgroup","title":null,"width":700,"height":437,"drupal_internal__target_id":3361}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/field_project_images?resourceVersion=id%3A20011928"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8c07b80d-39fb-4a76-8a1d-41ad992813bd\/relationships\/field_project_images?resourceVersion=id%3A20011928"}}}}},{"type":"node--project_module","id":"eb23afe2-14f1-4869-b51b-73e1a26f3567","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567?resourceVersion=id%3A20005077"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":3287,"status":true,"title":"Redirect","created":"2003-09-28T16:45:00+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Provides the ability to create manual redirects and maintain a canonical URL for all content, redirecting all other requests to that path.\r\n\r\n\u003Ch3\u003EFeatures\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003ECommon API for loading, saving, and deleting redirects.\u003C\/li\u003E\r\n \u003Cli\u003ECase-insensitive redirect matching with a hook to allow other modules to narrow-down the candidate redirects.\u003C\/li\u003E\r\n \u003Cli\u003ERedirect counter and last used timestamp, with automatic cleanup of inactive redirects. (Provided by \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/redirect_metrics\u0022\u003ERedirect Metrics\u003C\/a\u003E in D8)\u003C\/li\u003E\r\n \u003Cli\u003EIntegration with Drupal\u0027s page cache to optimize redirects and performance.\u003C\/li\u003E\r\n \u003Cli\u003EComplete individual redirect access API.\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022\/project\/views\u0022\u003EViews\u003C\/a\u003E API integration.\u003C\/li\u003E\r\n \u003Cli\u003ED8: Maintaining a canonical path and redirecting alternative URL\u0027s like non-aliased path, path without language prefixes and so on (Previously provided by \u003Ca href=\u0022http:\/\/drupal.org\/project\/globalredirect\u0022\u003EGlobal redirect\u003C\/a\u003E)\u003C\/li\u003E\r\n\u003Cli\u003ED8: Separate Redirect 404 module that logs aggregated 404 request (can suppress them in the default log) and allows to create redirects from them\u003C\/i\u003E\r\n\u003Cli\u003ED8: Separate Redirect Domain module allows wildcard and domain redirects\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\u003C!--break--\u003E\r\n\r\n\u003Ch3\u003ERecommended Modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022\/project\/pathauto\u0022\u003EPathauto\u003C\/a\u003E can be configured to automatically generate path redirects to ensure that URL alias changes do not break existing links.\u003C\/li\u003E\r\n \u003Cli\u003ED7: \u003Ca href=\u0022\/project\/mpac\u0022\u003EMulti-path autocomplete\u003C\/a\u003E helps provide auto-complete listings for the destination textfield on the redirect form. D8 uses the available link autocomplete field (supports only nodes).\u003C\/li\u003E\r\n \u003Cli\u003E\u003Ca href=\u0022\/project\/pathologic\u0022\u003EPathologic\u003C\/a\u003E helps transform relative links in content to absolute URLs. Most helpful when you move your site to a new domain or different folder.\u003C\/li\u003E\r\n \u003Cli\u003ED7: \u003Ca href=\u0022\/project\/match_redirect\u0022\u003EMatch Redirect\u003C\/a\u003E provides redirecting based on path patterns with wildcards. Does not extend or require the Redirect module itself.\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EProvides the ability to create manual redirects and maintain a canonical URL for all content, redirecting all other requests to that path.\u003C\/p\u003E\n\u003Ch3 id=\u0022features\u0022\u003EFeatures\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003ECommon API for loading, saving, and deleting redirects.\u003C\/li\u003E\n\u003Cli\u003ECase-insensitive redirect matching with a hook to allow other modules to narrow-down the candidate redirects.\u003C\/li\u003E\n\u003Cli\u003ERedirect counter and last used timestamp, with automatic cleanup of inactive redirects. (Provided by \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/redirect_metrics\u0022 rel=\u0022nofollow\u0022\u003ERedirect Metrics\u003C\/a\u003E in D8)\u003C\/li\u003E\n\u003Cli\u003EIntegration with Drupal\u0027s page cache to optimize redirects and performance.\u003C\/li\u003E\n\u003Cli\u003EComplete individual redirect access API.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/views\u0022 rel=\u0022nofollow\u0022\u003EViews\u003C\/a\u003E API integration.\u003C\/li\u003E\n\u003Cli\u003ED8: Maintaining a canonical path and redirecting alternative URL\u0027s like non-aliased path, path without language prefixes and so on (Previously provided by \u003Ca href=\u0022http:\/\/drupal.org\/project\/globalredirect\u0022 rel=\u0022nofollow\u0022\u003EGlobal redirect\u003C\/a\u003E)\u003C\/li\u003E\n\u003Cli\u003ED8: Separate Redirect 404 module that logs aggregated 404 request (can suppress them in the default log) and allows to create redirects from them\n\u003C\/li\u003E\u003Cli\u003ED8: Separate Redirect Domain module allows wildcard and domain redirects\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022recommended-modules\u0022\u003ERecommended Modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/pathauto\u0022 rel=\u0022nofollow\u0022\u003EPathauto\u003C\/a\u003E can be configured to automatically generate path redirects to ensure that URL alias changes do not break existing links.\u003C\/li\u003E\n\u003Cli\u003ED7: \u003Ca href=\u0022\/project\/mpac\u0022 rel=\u0022nofollow\u0022\u003EMulti-path autocomplete\u003C\/a\u003E helps provide auto-complete listings for the destination textfield on the redirect form. D8 uses the available link autocomplete field (supports only nodes).\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/pathologic\u0022 rel=\u0022nofollow\u0022\u003EPathologic\u003C\/a\u003E helps transform relative links in content to absolute URLs. Most helpful when you move your site to a new domain or different folder.\u003C\/li\u003E\n\u003Cli\u003ED7: \u003Ca href=\u0022\/project\/match_redirect\u0022 rel=\u0022nofollow\u0022\u003EMatch Redirect\u003C\/a\u003E provides redirecting based on path patterns with wildcards. Does not extend or require the Redirect module itself.\u003C\/li\u003E\n\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:216249}","field_active_installs_total":216249,"field_composer_namespace":"drupal\/redirect","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/redirect\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"redirect","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1bf99aff-4392-4ce9-bf72-e80f205b62f5","meta":{"drupal_internal__target_id":53892}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/uid?resourceVersion=id%3A20005077"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/relationships\/uid?resourceVersion=id%3A20005077"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/field_development_status?resourceVersion=id%3A20005077"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/relationships\/field_development_status?resourceVersion=id%3A20005077"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"09a378d2-fd35-41f3-bff0-10d9801741a4","meta":{"drupal_internal__target_id":27269}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/field_maintenance_status?resourceVersion=id%3A20005077"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/relationships\/field_maintenance_status?resourceVersion=id%3A20005077"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","meta":{"drupal_internal__target_id":186}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/field_module_categories?resourceVersion=id%3A20005077"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/relationships\/field_module_categories?resourceVersion=id%3A20005077"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/field_project_images?resourceVersion=id%3A20005077"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/eb23afe2-14f1-4869-b51b-73e1a26f3567\/relationships\/field_project_images?resourceVersion=id%3A20005077"}}}}},{"type":"node--project_module","id":"e055d408-b151-4581-92f1-f1530bb332e3","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3?resourceVersion=id%3A20007634"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":260942,"status":true,"title":"jQuery UI","created":"2008-05-21T05:16:54+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"A wrapper module around the \u003Ca href=\u0022http:\/\/jqueryui.com\u0022\u003EjQuery UI\u003C\/a\u003E effects library that lets module developers add swooshy, swishy effects to their code.\r\n\r\nSee http:\/\/jqueryui.com\/demos for some examples of what jQuery UI can do.\r\nSee http:\/\/jqueryui.com\/docs for documentation on how to use it.\r\nSee http:\/\/jqueryui.com\/support if you need help getting jQuery UI to work, once it\u0027s being added to your pages.\r\n\r\nThis is a utility module that won\u0027t do anything on its own. See README.txt for how your module can use it to add jQuery UI effects to your pages.\r\n\r\n\u003Ch2\u003EDrupal 7+\u003C\/h2\u003E\r\n\r\nSince Drupal 7 ships with jQuery UI, the jQuery UI module has been deprecated and moved to the \u003Ca href=\u0022http:\/\/drupal.org\/project\/jquery_update\u0022\u003EjQuery Update\u003C\/a\u003E module.\r\n\r\n\u003Ch2\u003EDrupal 8\u003C\/h2\u003E\r\njQuery UI was \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/315035\u0022\u003Eadded to Drupal core in 2009\u003C\/a\u003E, but jQuery UI has been minimally maintained since 2017 and listed as an \u003Cstrong\u003EEmeritus project\u003C\/strong\u003E in https:\/\/openjsf.org\/projects\/ which is described as:\r\n\r\n\u003Cblockquote\u003EEmeritus projects are those which the maintainers feel \u003Cstrong\u003Ehave reached or are nearing end-of-life\u003C\/strong\u003E\u003C\/blockquote\u003E\r\n\r\njQuery UI is \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/3064015\u0022\u003Edeprecated in Drupal core\u003C\/a\u003E and considered internal from Drupal 9.\r\n\r\nThis contrib project now has an 8.x branch to provide the asset libraries which are no longer provided as an API by Drupal core .\r\n\r\nThe individual jQuery UI asset libraries are \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/3067969\u0022\u003Eprovided in separate modules\u003C\/a\u003E.\r\n\r\n\u003Cul\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_accordion\u0022\u003EjQuery UI Accordion\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_autocomplete\u0022\u003EjQuery UI Autocomplete\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_button\u0022\u003EjQuery UI Button\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_checkboxradio\u0022\u003EjQuery UI Checkboxradio\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_controlgroup\u0022\u003EjQuery UI Controlgroup\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_datepicker\u0022\u003EjQuery UI Datepicker\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_dialog\u0022\u003EjQuery UI Dialog\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_draggable\u0022\u003EjQuery UI Draggable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_droppable\u0022\u003EjQuery UI Droppable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_effects\u0022\u003EjQuery UI Effects\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_menu\u0022\u003EjQuery UI Menu\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_progressbar\u0022\u003EjQuery UI Progressbar\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_resizable\u0022\u003EjQuery UI Resizable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectable\u0022\u003EjQuery UI Selectable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectmenu\u0022\u003EjQuery UI Selectmenu\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_slider\u0022\u003EjQuery UI Slider\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_spinner\u0022\u003EjQuery UI Spinner\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_tooltip\u0022\u003EjQuery UI Tooltip\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EA wrapper module around the \u003Ca href=\u0022http:\/\/jqueryui.com\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI\u003C\/a\u003E effects library that lets module developers add swooshy, swishy effects to their code.\u003C\/p\u003E\n\u003Cp\u003ESee \u003Ca href=\u0022http:\/\/jqueryui.com\/demos\u0022 rel=\u0022nofollow\u0022\u003Ehttp:\/\/jqueryui.com\/demos\u003C\/a\u003E for some examples of what jQuery UI can do.\u003Cbr\u003E\nSee \u003Ca href=\u0022http:\/\/jqueryui.com\/docs\u0022 rel=\u0022nofollow\u0022\u003Ehttp:\/\/jqueryui.com\/docs\u003C\/a\u003E for documentation on how to use it.\u003Cbr\u003E\nSee \u003Ca href=\u0022http:\/\/jqueryui.com\/support\u0022 rel=\u0022nofollow\u0022\u003Ehttp:\/\/jqueryui.com\/support\u003C\/a\u003E if you need help getting jQuery UI to work, once it\u0027s being added to your pages.\u003C\/p\u003E\n\u003Cp\u003EThis is a utility module that won\u0027t do anything on its own. See README.txt for how your module can use it to add jQuery UI effects to your pages.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022drupal-7\u0022\u003EDrupal 7+\u003C\/h2\u003E\n\u003Cp\u003ESince Drupal 7 ships with jQuery UI, the jQuery UI module has been deprecated and moved to the \u003Ca href=\u0022http:\/\/drupal.org\/project\/jquery_update\u0022 rel=\u0022nofollow\u0022\u003EjQuery Update\u003C\/a\u003E module.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022drupal-8\u0022\u003EDrupal 8\u003C\/h2\u003E\n\u003Cp\u003EjQuery UI was \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/315035\u0022 rel=\u0022nofollow\u0022\u003Eadded to Drupal core in 2009\u003C\/a\u003E, but jQuery UI has been minimally maintained since 2017 and listed as an \u003Cstrong\u003EEmeritus project\u003C\/strong\u003E in \u003Ca href=\u0022https:\/\/openjsf.org\/projects\/\u0022 rel=\u0022nofollow\u0022\u003Ehttps:\/\/openjsf.org\/projects\/\u003C\/a\u003E which is described as:\u003C\/p\u003E\n\u003Cblockquote\u003E\u003Cp\u003EEmeritus projects are those which the maintainers feel \u003Cstrong\u003Ehave reached or are nearing end-of-life\u003C\/strong\u003E\u003C\/p\u003E\u003C\/blockquote\u003E\n\u003Cp\u003EjQuery UI is \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/3064015\u0022 rel=\u0022nofollow\u0022\u003Edeprecated in Drupal core\u003C\/a\u003E and considered internal from Drupal 9.\u003C\/p\u003E\n\u003Cp\u003EThis contrib project now has an 8.x branch to provide the asset libraries which are no longer provided as an API by Drupal core .\u003C\/p\u003E\n\u003Cp\u003EThe individual jQuery UI asset libraries are \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/3067969\u0022 rel=\u0022nofollow\u0022\u003Eprovided in separate modules\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_accordion\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Accordion\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_autocomplete\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Autocomplete\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_button\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Button\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_checkboxradio\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Checkboxradio\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_controlgroup\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Controlgroup\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_datepicker\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Datepicker\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_dialog\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Dialog\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_draggable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Draggable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_droppable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Droppable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_effects\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Effects\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_menu\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Menu\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_progressbar\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Progressbar\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_resizable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Resizable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Selectable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectmenu\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Selectmenu\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_slider\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Slider\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_spinner\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Spinner\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_tooltip\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Tooltip\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:205159}","field_active_installs_total":205159,"field_composer_namespace":"drupal\/jquery_ui","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/jquery_ui\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"jquery_ui","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"efd49201-6351-4da6-a26c-67aa7ec84b7d","meta":{"drupal_internal__target_id":54136}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/uid?resourceVersion=id%3A20007634"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/relationships\/uid?resourceVersion=id%3A20007634"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"219c1cf2-dd7f-474b-9dd5-a26643fbc699","meta":{"drupal_internal__target_id":27276}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/field_development_status?resourceVersion=id%3A20007634"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/relationships\/field_development_status?resourceVersion=id%3A20007634"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"cee844e2-68b5-489d-bafa-6a0ade2b6dfd","meta":{"drupal_internal__target_id":27273}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/field_maintenance_status?resourceVersion=id%3A20007634"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/relationships\/field_maintenance_status?resourceVersion=id%3A20007634"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/field_module_categories?resourceVersion=id%3A20007634"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/relationships\/field_module_categories?resourceVersion=id%3A20007634"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/field_project_images?resourceVersion=id%3A20007634"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/e055d408-b151-4581-92f1-f1530bb332e3\/relationships\/field_project_images?resourceVersion=id%3A20007634"}}}}},{"type":"node--project_module","id":"0a40c537-6aa7-463c-a400-9cff9e5ae48a","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a?resourceVersion=id%3A20037367"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2643614,"status":true,"title":"Twig Tweak","created":"2016-01-03T19:55:40+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Twig Tweak is a small module which provides a Twig extension with some useful functions and filters that can improve development experience.\r\n\u003Ch3\u003E\u2727 \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/twig_tweak\/-\/blob\/3.x\/docs\/cheat-sheet.md\u0022\u003ECheat sheet\u003C\/a\u003E \u003C\/h3\u003E","format":"1","processed":"\u003Cp\u003ETwig Tweak is a small module which provides a Twig extension with some useful functions and filters that can improve development experience.\u003C\/p\u003E\n\u003Ch3\u003E\u2727 \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/twig_tweak\/-\/blob\/3.x\/docs\/cheat-sheet.md\u0022 rel=\u0022nofollow\u0022\u003ECheat sheet\u003C\/a\u003E \u003C\/h3\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:1219,\u00228.x-2.x\u0022:12625,\u00223.x\u0022:50,\u00223.0.x\u0022:220,\u00223.1.x\u0022:2852,\u00223.2.x\u0022:10367,\u00223.3.x\u0022:10045,\u00223.4.x\u0022:134690}","field_active_installs_total":172068,"field_composer_namespace":"drupal\/twig_tweak","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/twig_tweak\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"twig_tweak","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"872745bc-7439-42f1-ba40-64b168f10a85","meta":{"drupal_internal__target_id":556138}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/uid?resourceVersion=id%3A20037367"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/relationships\/uid?resourceVersion=id%3A20037367"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/field_development_status?resourceVersion=id%3A20037367"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/relationships\/field_development_status?resourceVersion=id%3A20037367"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/field_maintenance_status?resourceVersion=id%3A20037367"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/relationships\/field_maintenance_status?resourceVersion=id%3A20037367"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"754c04cb-6da2-42ba-9032-d64307f68f45","meta":{"drupal_internal__target_id":188}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/field_module_categories?resourceVersion=id%3A20037367"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/relationships\/field_module_categories?resourceVersion=id%3A20037367"}}},"field_project_images":{"data":[{"type":"file--file","id":"f85f8174-9bc5-4b3a-b6dc-ff181d3f019b","meta":{"alt":"","title":null,"width":158,"height":224,"drupal_internal__target_id":29189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/field_project_images?resourceVersion=id%3A20037367"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/0a40c537-6aa7-463c-a400-9cff9e5ae48a\/relationships\/field_project_images?resourceVersion=id%3A20037367"}}}}},{"type":"node--project_module","id":"382b0e03-5b05-4681-9eea-1b845157f1a3","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3?resourceVersion=id%3A20005162"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":8404,"status":true,"title":"CAPTCHA","created":"2004-06-09T18:31:31+00:00","changed":"2026-04-09T09:57:31+00:00","moderation_state":null,"body":{"value":"\u003Cem\u003EAdd challenge-response tests to user-facing forms on your site to protect against spambot submissions. Other CAPTCHA types are supported via additional modules.\u003C\/em\u003E\r\n\r\nA CAPTCHA is a challenge-response test most often placed within web forms to determine whether the user is human. The purpose of CAPTCHA is to block form submissions by spambots, which are automated scripts that post spam content everywhere they can. The CAPTCHA module provides this feature to virtually any user facing web form on a Drupal site.  \r\n\r\n\u003C!--break--\u003E\r\n\u003Ch3\u003EAdditional CAPTCHA Modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/friendlycaptcha\u0022\u003EFriendly Captcha\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/altcha\u0022\u003EALTCHA Captcha\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/turnstile\u0022 rel=\u0022nofollow\u0022\u003ECloudflare turnstile\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/recaptcha\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/riddler\u0022 rel=\u0022nofollow\u0022\u003ECaptcha Riddler\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/captcha_after\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA after\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/nocaptcha_recaptcha\u0022 rel=\u0022nofollow\u0022\u003ENocaptcha Recaptcha\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/draggable_captcha\u0022 rel=\u0022nofollow\u0022\u003EDraggable CAPTCHA\u003C\/a\u003E\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/captcha_pack\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA Pack\u003C\/a\u003E Only for Drupal 7 and Not maintained after 23 October 2011.\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/textcaptcha\u0022 rel=\u0022nofollow\u0022\u003EText CAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 24 November 2014.\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/hidden_captcha\u0022 rel=\u0022nofollow\u0022\u003EHidden CAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 29 Mar 2018.\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/keycaptcha\u0022 rel=\u0022nofollow\u0022\u003EKeyCAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 5 May 2012.\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/image_captcha_refresh\u0022 rel=\u0022nofollow\u0022\u003EImage CAPTCHA refresh\u003C\/a\u003E Only for Drupal 7 and Not maintained after 9 November 2015.\r\n\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/egglue_captcha\u0022 rel=\u0022nofollow\u0022\u003EEgglue Semantic CAPTCHA\u003C\/a\u003E Only for Drupal 6 and Not maintained after 19 April 2017.\r\n\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\u003Csmall\u003E(Last update: 2025-09-23)\u003C\/small\u003E\r\n\r\n\u003Ch2\u003EVersion Information\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Cstrong\u003EBranch 2.x\u003C\/strong\u003E: Actively maintained version with bug fixes and general improvements, e.g. twig templates). Drupal 9.4+ only! Upgrade path from 8.x-1.x, but please check your output and move custom template overwrites into twig.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Cstrong\u003EBranch 8.x-1.x\u003C\/strong\u003E. Legacy branch and a mirror of the 2.x branch. Last version to support Drupal 8 is 8.x-1.10.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Cstrong\u003EBranch 7.x-1.x\u003C\/strong\u003E: \u003Cstrong\u003EDrupal 7 only\u003C\/strong\u003E, replaced by Branch 8.x-1.x for Drupal 9 compatibility - no further development.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003EAlternative modules\u003C\/h2\u003E\r\nYou could also consider spam filtering or hybrid solutions like:\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/antispam\u0022\u003EThe AntiSpam module\u003C\/a\u003E, is the successor of the Akismet module, and it provides spam protection to your Drupal site using external antispam service like Akismet, TypePad and Defensio.\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/spam\u0022\u003EThe spam module\u003C\/a\u003E provides spam filtering and related tools\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/honeypot\u0022\u003EThe honeypot module\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003E\u003Cem\u003EAdd challenge-response tests to user-facing forms on your site to protect against spambot submissions. Other CAPTCHA types are supported via additional modules.\u003C\/em\u003E\u003C\/p\u003E\n\u003Cp\u003EA CAPTCHA is a challenge-response test most often placed within web forms to determine whether the user is human. The purpose of CAPTCHA is to block form submissions by spambots, which are automated scripts that post spam content everywhere they can. The CAPTCHA module provides this feature to virtually any user facing web form on a Drupal site.  \u003C\/p\u003E\n\u003Ch3 id=\u0022additional-captcha-modules\u0022\u003EAdditional CAPTCHA Modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/friendlycaptcha\u0022 rel=\u0022nofollow\u0022\u003EFriendly Captcha\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/altcha\u0022 rel=\u0022nofollow\u0022\u003EALTCHA Captcha\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/turnstile\u0022 rel=\u0022nofollow\u0022\u003ECloudflare turnstile\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/recaptcha\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/riddler\u0022 rel=\u0022nofollow\u0022\u003ECaptcha Riddler\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/captcha_after\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA after\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/nocaptcha_recaptcha\u0022 rel=\u0022nofollow\u0022\u003ENocaptcha Recaptcha\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/draggable_captcha\u0022 rel=\u0022nofollow\u0022\u003EDraggable CAPTCHA\u003C\/a\u003E\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/captcha_pack\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA Pack\u003C\/a\u003E Only for Drupal 7 and Not maintained after 23 October 2011.\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/textcaptcha\u0022 rel=\u0022nofollow\u0022\u003EText CAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 24 November 2014.\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/hidden_captcha\u0022 rel=\u0022nofollow\u0022\u003EHidden CAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 29 Mar 2018.\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/keycaptcha\u0022 rel=\u0022nofollow\u0022\u003EKeyCAPTCHA\u003C\/a\u003E Only for Drupal 7 and Not maintained after 5 May 2012.\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/image_captcha_refresh\u0022 rel=\u0022nofollow\u0022\u003EImage CAPTCHA refresh\u003C\/a\u003E Only for Drupal 7 and Not maintained after 9 November 2015.\n\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/egglue_captcha\u0022 rel=\u0022nofollow\u0022\u003EEgglue Semantic CAPTCHA\u003C\/a\u003E Only for Drupal 6 and Not maintained after 19 April 2017.\n\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003E\u003Csmall\u003E(Last update: 2025-09-23)\u003C\/small\u003E\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022version-information\u0022\u003EVersion Information\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Cstrong\u003EBranch 2.x\u003C\/strong\u003E: Actively maintained version with bug fixes and general improvements, e.g. twig templates). Drupal 9.4+ only! Upgrade path from 8.x-1.x, but please check your output and move custom template overwrites into twig.\u003C\/li\u003E\n\u003Cli\u003E\u003Cstrong\u003EBranch 8.x-1.x\u003C\/strong\u003E. Legacy branch and a mirror of the 2.x branch. Last version to support Drupal 8 is 8.x-1.10.\u003C\/li\u003E\n\u003Cli\u003E\u003Cstrong\u003EBranch 7.x-1.x\u003C\/strong\u003E: \u003Cstrong\u003EDrupal 7 only\u003C\/strong\u003E, replaced by Branch 8.x-1.x for Drupal 9 compatibility - no further development.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022alternative-modules\u0022\u003EAlternative modules\u003C\/h2\u003E\n\u003Cp\u003EYou could also consider spam filtering or hybrid solutions like:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/antispam\u0022 rel=\u0022nofollow\u0022\u003EThe AntiSpam module\u003C\/a\u003E, is the successor of the Akismet module, and it provides spam protection to your Drupal site using external antispam service like Akismet, TypePad and Defensio.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/spam\u0022 rel=\u0022nofollow\u0022\u003EThe spam module\u003C\/a\u003E provides spam filtering and related tools\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022http:\/\/drupal.org\/project\/honeypot\u0022 rel=\u0022nofollow\u0022\u003EThe honeypot module\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Add challenge-response tests to user-facing forms on your site to protect against spambot submissions. Further CAPTCHA types are supported via contrib modules."},"field_active_installs":"{\u00228.x-1.x\u0022:45908,\u00222.x\u0022:58,\u00222.0.x\u0022:120536}","field_active_installs_total":166502,"field_composer_namespace":"drupal\/captcha","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/captcha\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"captcha","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"c7047c8f-c3cc-4139-bee4-6561bce7eb73","meta":{"drupal_internal__target_id":25523}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/uid?resourceVersion=id%3A20005162"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/relationships\/uid?resourceVersion=id%3A20005162"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"219c1cf2-dd7f-474b-9dd5-a26643fbc699","meta":{"drupal_internal__target_id":27276}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/field_development_status?resourceVersion=id%3A20005162"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/relationships\/field_development_status?resourceVersion=id%3A20005162"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"cee844e2-68b5-489d-bafa-6a0ade2b6dfd","meta":{"drupal_internal__target_id":27273}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/field_maintenance_status?resourceVersion=id%3A20005162"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/relationships\/field_maintenance_status?resourceVersion=id%3A20005162"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"24830916-5c07-4446-89de-960915f87bf6","meta":{"drupal_internal__target_id":199}},{"type":"taxonomy_term--module_categories","id":"8117d8b0-f171-414d-b384-0bafa81bef9f","meta":{"drupal_internal__target_id":193}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/field_module_categories?resourceVersion=id%3A20005162"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/relationships\/field_module_categories?resourceVersion=id%3A20005162"}}},"field_project_images":{"data":[{"type":"file--file","id":"01777060-f8c3-44bc-84e3-46383fd85c9e","meta":{"alt":"Drupal CAPTCHA module","title":null,"width":512,"height":512,"drupal_internal__target_id":16801}},{"type":"file--file","id":"d6c4296c-a6be-44bb-9932-2bc46ef698ba","meta":{"alt":"Image CAPTCHA example","title":null,"width":239,"height":290,"drupal_internal__target_id":1904}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/field_project_images?resourceVersion=id%3A20005162"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/382b0e03-5b05-4681-9eea-1b845157f1a3\/relationships\/field_project_images?resourceVersion=id%3A20005162"}}}}},{"type":"node--project_module","id":"b99d3921-8160-4361-8455-cddacf9a60ba","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba?resourceVersion=id%3A20010257"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":640962,"status":true,"title":"Better Exposed Filters","created":"2009-11-23T22:19:09+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"The Better Exposed Filters module replaces the Views\u0027 default single- or multi-select boxes with radio buttons or checkboxes, respectively. Description fields and Select All\/None links can be added to exposed filters to make for a better user experience.\r\nViews Filters is a powerful tool to refine the results returned by a given view. When you expose a filter, you allow the user to interact with the view making it easy to build a customized, advanced search. For example, exposing the node type field as a filter lets your site visitor limit their search queries to just blog entries. Better Exposed Filters gives you greater control over the rendering of exposed filters.\r\n\r\nWhy use this module? Because it provides a better user experience than the default option. Try telling a client that they should click on an option, then scroll to the next option and ctrl+click on it. Don\u0027t just click \u0027cause you\u0027ll lose your first selection. Oh, and ctrl+click again to unselect an option... Yeah, not user-friendly.\r\n\r\n\u003Cstrong\u003EPeople understand checkboxes and radio buttons.\u003C\/strong\u003E\r\n\r\nPLEASE RUN THIS ON A LOCAL\/TEST ENVIRONMENT FIRST.\r\n\r\n\u003Ch3\u003EBranch support\u003C\/h3\u003E\r\n\u003Cdiv class=\u0022note-warning\u0022\u003E\r\n\u003Cp\u003E7.1.x = Active development branch, all fixes need to land here first\u003C\/p\u003E\r\n\u003Cp\u003E7.0.x = Still supported, bug fixes mainly\u003C\/p\u003E\r\n\u003Cp\u003E6.0.x = Security fixes only\u003C\/p\u003E\r\n\u003C\/div\u003E\r\n\r\n\u003Ch3\u003EIntegrations\u003C\/h3\u003E\r\nModules that provide additional BEF widgets or support for exposed filters in general:\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/select2\u0022\u003ESelect2\u003C\/a\u003E\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/selective_better_exposed_filters\u0022\u003ESelect Better Exposed Filters\u003C\/a\u003E\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/configurable_views_filter_block\u0022\u003EConfigurable Views Filter Block\u003C\/a\u003E\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/views_dependent_filters\u0022\u003EViews Dependent Filters\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003EWhat else can I do with BEF?\u003C\/h2\u003E\r\nThe BEF handbook page provides some basic recipes making exposed filters a much better user experience.\r\n\u003Cul\u003E\r\n  \u003Cli\u003EAdd help text for each exposed filter\u003C\/li\u003E\r\n  \u003Cli\u003ETame long lists with scrollable checkbox\/radio button lists or select all\/none links\u003C\/li\u003E\r\n  \u003Cli\u003EProvide instant feedback by updating the View using AJAX whenever an exposed filter is changed\u003C\/li\u003E\r\n  \u003Cli\u003EUse the jQuery Slider widget for greater-than, less-than or in-between types of filters\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\nIf you\u0027ve got any ideas not covered on the handbook page, add a feature request to the issue queue. You can also rate this module on DrupalModules.\r\n\r\n\r\n\u003Ch2\u003E\u003Ca name =\u0022note\u0022 \/\u003ERemembering mikeker - A note on module ownership \u0026 maintenance.\u003C\/h2\u003E\r\nIn November of 2017, the original author and long-time maintainer of the Better Exposed Filters module Mike Keran (mikeker) was diagnosed with inoperable cancer. He died on January 1st, 2018. Mike was an amazing human, and his death is a great loss to us all. He gave selflessly of his time to several communities including Drupal, and he brought his joy and passion with him everywhere. In honor of his memory, and in order to ensure that Mike\u2019s contributions to Drupal are maintained, several members of the Seattle Drupal community have gotten together and offered to be the maintainers of BEF. We intend to advance the D8 branch where we can and to manage bug fixes and security patches for D7 as needed. Please be patient with us while we work to understand Mike\u2019s intent and the code he left behind.\r\n","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EThe Better Exposed Filters module replaces the Views\u0027 default single- or multi-select boxes with radio buttons or checkboxes, respectively. Description fields and Select All\/None links can be added to exposed filters to make for a better user experience.\u003Cbr\u003E\nViews Filters is a powerful tool to refine the results returned by a given view. When you expose a filter, you allow the user to interact with the view making it easy to build a customized, advanced search. For example, exposing the node type field as a filter lets your site visitor limit their search queries to just blog entries. Better Exposed Filters gives you greater control over the rendering of exposed filters.\u003C\/p\u003E\n\u003Cp\u003EWhy use this module? Because it provides a better user experience than the default option. Try telling a client that they should click on an option, then scroll to the next option and ctrl+click on it. Don\u0027t just click \u0027cause you\u0027ll lose your first selection. Oh, and ctrl+click again to unselect an option... Yeah, not user-friendly.\u003C\/p\u003E\n\u003Cp\u003E\u003Cstrong\u003EPeople understand checkboxes and radio buttons.\u003C\/strong\u003E\u003C\/p\u003E\n\u003Cp\u003EPLEASE RUN THIS ON A LOCAL\/TEST ENVIRONMENT FIRST.\u003C\/p\u003E\n\u003Ch3 id=\u0022branch-support\u0022\u003EBranch support\u003C\/h3\u003E\n\u003Cdiv class=\u0022note-warning\u0022\u003E\n\u003Cp\u003E7.1.x = Active development branch, all fixes need to land here first\u003C\/p\u003E\n\u003Cp\u003E7.0.x = Still supported, bug fixes mainly\u003C\/p\u003E\n\u003Cp\u003E6.0.x = Security fixes only\u003C\/p\u003E\n\u003C\/div\u003E\n\u003Ch3 id=\u0022integrations\u0022\u003EIntegrations\u003C\/h3\u003E\n\u003Cp\u003EModules that provide additional BEF widgets or support for exposed filters in general:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/select2\u0022 rel=\u0022nofollow\u0022\u003ESelect2\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/selective_better_exposed_filters\u0022 rel=\u0022nofollow\u0022\u003ESelect Better Exposed Filters\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/configurable_views_filter_block\u0022 rel=\u0022nofollow\u0022\u003EConfigurable Views Filter Block\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/views_dependent_filters\u0022 rel=\u0022nofollow\u0022\u003EViews Dependent Filters\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022what-else-can-i-do-with-bef\u0022\u003EWhat else can I do with BEF?\u003C\/h2\u003E\n\u003Cp\u003EThe BEF handbook page provides some basic recipes making exposed filters a much better user experience.\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EAdd help text for each exposed filter\u003C\/li\u003E\n\u003Cli\u003ETame long lists with scrollable checkbox\/radio button lists or select all\/none links\u003C\/li\u003E\n\u003Cli\u003EProvide instant feedback by updating the View using AJAX whenever an exposed filter is changed\u003C\/li\u003E\n\u003Cli\u003EUse the jQuery Slider widget for greater-than, less-than or in-between types of filters\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EIf you\u0027ve got any ideas not covered on the handbook page, add a feature request to the issue queue. You can also rate this module on DrupalModules.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022remembering-mikeker-a-note-on-module-ownership-amp-maintenance\u0022\u003ERemembering mikeker - A note on module ownership \u0026amp; maintenance.\u003C\/h2\u003E\n\u003Cp\u003EIn November of 2017, the original author and long-time maintainer of the Better Exposed Filters module Mike Keran (mikeker) was diagnosed with inoperable cancer. He died on January 1st, 2018. Mike was an amazing human, and his death is a great loss to us all. He gave selflessly of his time to several communities including Drupal, and he brought his joy and passion with him everywhere. In honor of his memory, and in order to ensure that Mike\u2019s contributions to Drupal are maintained, several members of the Seattle Drupal community have gotten together and offered to be the maintainers of BEF. We intend to advance the D8 branch where we can and to manage bug fixes and security patches for D7 as needed. Please be patient with us while we work to understand Mike\u2019s intent and the code he left behind.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Replaces Views\u0027 default single\/multi-select boxes with radio buttons or checkboxes, respectively. You can add fields to the exposed filters to improve the user experience."},"field_active_installs":"{\u00228.x-3.x\u0022:3581,\u00228.x-4.x\u0022:1905,\u00228.x-5.x\u0022:12180,\u00226.0.x\u0022:53865,\u00227.0.x\u0022:24573,\u00227.1.x\u0022:52836}","field_active_installs_total":148940,"field_composer_namespace":"drupal\/better_exposed_filters","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/better_exposed_filters\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"better_exposed_filters","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"697a4f51-935c-4e22-9998-0b9e77f384b6","meta":{"drupal_internal__target_id":352283}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/uid?resourceVersion=id%3A20010257"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/relationships\/uid?resourceVersion=id%3A20010257"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/field_development_status?resourceVersion=id%3A20010257"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/relationships\/field_development_status?resourceVersion=id%3A20010257"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/field_maintenance_status?resourceVersion=id%3A20010257"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/relationships\/field_maintenance_status?resourceVersion=id%3A20010257"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","meta":{"drupal_internal__target_id":186}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/field_module_categories?resourceVersion=id%3A20010257"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/relationships\/field_module_categories?resourceVersion=id%3A20010257"}}},"field_project_images":{"data":[{"type":"file--file","id":"d681bbe2-89b1-40e8-95aa-20d65a39c685","meta":{"alt":"BEF Basic Settings","title":null,"width":2560,"height":1374,"drupal_internal__target_id":20184}},{"type":"file--file","id":"c656b479-878c-43dc-a76f-9928edcd6fcd","meta":{"alt":"BEF Form Settings","title":null,"width":2560,"height":1373,"drupal_internal__target_id":20185}},{"type":"file--file","id":"8525328c-d554-4d16-9250-03f84e4269ca","meta":{"alt":"BEF Filter Settings","title":null,"width":2560,"height":1374,"drupal_internal__target_id":20186}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/field_project_images?resourceVersion=id%3A20010257"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b99d3921-8160-4361-8455-cddacf9a60ba\/relationships\/field_project_images?resourceVersion=id%3A20010257"}}}}},{"type":"node--project_module","id":"3757709f-8c87-4abf-8006-d943834102f9","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9?resourceVersion=id%3A20033103"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2376659,"status":true,"title":"Crop API","created":"2014-11-17T15:21:17+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Provides basic API for image cropping. This module won\u0027t do much by itself. Users should pick one of UI modules that utilize this API:\r\n\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022\/project\/image_widget_crop\u0022\u003EImage widget crop\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022\/project\/focal_point\u0022\u003EFocal point\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003ETechnical details\u003C\/h3\u003E\r\n\r\nInitial discussion can be found on \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2368945\u0022\u003Emanual crop issue queue\u003C\/a\u003E.\r\n\r\nCrop API logo was created by \u003Ca href=\u0022http:\/\/drupal.org\/u\/woprrr\u0022\u003E@woprrr\u003C\/a\u003E.","format":"1","processed":"\u003Cp\u003EProvides basic API for image cropping. This module won\u0027t do much by itself. Users should pick one of UI modules that utilize this API:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/image_widget_crop\u0022 rel=\u0022nofollow\u0022\u003EImage widget crop\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/project\/focal_point\u0022 rel=\u0022nofollow\u0022\u003EFocal point\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3\u003ETechnical details\u003C\/h3\u003E\n\u003Cp\u003EInitial discussion can be found on \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2368945\u0022 rel=\u0022nofollow\u0022\u003Emanual crop issue queue\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003ECrop API logo was created by \u003Ca href=\u0022http:\/\/drupal.org\/u\/woprrr\u0022 rel=\u0022nofollow\u0022\u003E@woprrr\u003C\/a\u003E.\u003C\/p\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:3306,\u00228.x-2.x\u0022:140979}","field_active_installs_total":144285,"field_composer_namespace":"drupal\/crop","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/crop\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"crop","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"45aa7efc-40a7-4cd3-a412-723ef2d49285","meta":{"drupal_internal__target_id":3260690}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/uid?resourceVersion=id%3A20033103"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/relationships\/uid?resourceVersion=id%3A20033103"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/field_development_status?resourceVersion=id%3A20033103"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/relationships\/field_development_status?resourceVersion=id%3A20033103"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"09a378d2-fd35-41f3-bff0-10d9801741a4","meta":{"drupal_internal__target_id":27269}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/field_maintenance_status?resourceVersion=id%3A20033103"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/relationships\/field_maintenance_status?resourceVersion=id%3A20033103"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}},{"type":"taxonomy_term--module_categories","id":"68428c33-1db7-438d-b1b3-e23004e0982b","meta":{"drupal_internal__target_id":192}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/field_module_categories?resourceVersion=id%3A20033103"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/relationships\/field_module_categories?resourceVersion=id%3A20033103"}}},"field_project_images":{"data":[{"type":"file--file","id":"ad73639c-9a26-4617-8877-4e5e64583277","meta":{"alt":"Crop API logo.","title":null,"width":512,"height":512,"drupal_internal__target_id":17452}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/field_project_images?resourceVersion=id%3A20033103"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/3757709f-8c87-4abf-8006-d943834102f9\/relationships\/field_project_images?resourceVersion=id%3A20033103"}}}}},{"type":"node--project_module","id":"359488d8-e98b-4e47-8905-3bb59a217567","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567?resourceVersion=id%3A20011003"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":790418,"status":true,"title":"Search API","created":"2010-05-05T13:10:16+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Ch2\u003EWhat does it do?\u003C\/h2\u003E\r\n\r\nThis module provides a framework for easily creating searches on any entity known to Drupal, using any kind of search engine. For site administrators, it is a great alternative to other search solutions, since it already incorporates facetting support and the ability to use the \u003Ca href=\u0022\/project\/views\u0022\u003EViews module\u003C\/a\u003E for displaying search results, filters, etc. Also, with the \u003Ca href=\u0022\/project\/search_api_solr\u0022\u003EApache Solr integration\u003C\/a\u003E, a high-performance search engine is available for this module.\r\n\r\nDevelopers, on the other hand, will be impressed by the large flexibility and numerous ways of extension the module provides. Hence, the growing number of \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022\u003Eadditional contrib modules\u003C\/a\u003E, providing additional functionality or helping users customize some aspects of the search process.\r\n\r\n\u003Ch2\u003EExamples \u0026 Demo\u003C\/h2\u003E\r\nThe prime example of a site using this module is \u003Ca href=\u0022\/\u0022\u003Edrupal.org\u003C\/a\u003E itself \u2013 the Search API, along with the \u003Ca href=\u0022\/project\/search_api_db\u0022\u003Edatabase backend\u003C\/a\u003E and \u003Ca href=\u0022\/project\/views\u0022\u003EViews\u003C\/a\u003E, is used to generate the issue queue listings.\r\n\r\n\u003C!--break--\u003E\r\n\r\n\u003Ch2\u003ENote on security\u003C\/h2\u003E\r\nIn general, the Search API doesn\u0027t provide any kind of access restrictions (as this cannot be done on a generic level). It is therefore your responsibility to take care that only accessible items are indexed or results displayed (e.g., by using appropriate filters).\r\nThere is, however, built-in support for node access checks via the \u003Ca href=\u0022\/node\/1254452#search_api_node_access\u0022\u003ENode access\u003C\/a\u003E data alteration (q.v. for details). Also, the \u003Cem\u003ESearch views\u003C\/em\u003E module contains an option to do additional access checks on all entities in search views.\r\n\r\n\u003Ch2\u003EAdditional modules\u003C\/h2\u003E\r\nAt the moment, this project contains, apart from the core API module, the following extension module (in the version for Drupal 8+):\r\n\r\n\u003Ch3\u003EDatabase search\u003C\/h3\u003E\r\nThis module provides a ready-to-use search backend that indexes and searches content using Drupal\u0027s own database. It is mainly meant for testing purposes and for smaller sites, larger sites will usually want to use a more powerful backend (like Solr or Elasticsearch). Also provided is the \u0022Database Search Defaults\u0022 module which provides a complete pre-configured content search when installed.\r\n\r\n\u003Ch2\u003ETutorials and screencasts\u003C\/h2\u003E\r\nThe \u003Ca href=\u0022\/docs\/8\/modules\/search-api\/getting-started\u0022\u003EGetting started\u003C\/a\u003E documentation page and the \u003Ca href=\u0022\/docs\/8\/modules\/search-api\/presentations-and-external-material\u0022\u003Eexternal material available\u003C\/a\u003E (screencasts, etc.) might provide a good introduction to the module.\r\n\r\n\u003Ch2\u003EOther available backends and extensions\u003C\/h2\u003E\r\n\r\nPlease see the list of \u003Ca href=\u0022\/project\/search_api\/ecosystem\u0022\u003ESearch API Ecosystem modules\u003C\/a\u003E and curated list of \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022\u003EExtension modules\u003C\/a\u003E. If you maintain or encounter a great Search API module, feel free to add it.\r\n\r\n\u003Ch2\u003ERequirements\u003C\/h2\u003E\r\nTo use the Views integration, you\u0027ll (of course) also need the \u003Ca href=\u0022\/project\/entity\u0022\u003EViews\u003C\/a\u003E module. For facets, you\u0027ll need the \u003Ca href=\u0022\/project\/facets\u0022\u003EFacets\u003C\/a\u003E module.\r\nFurthermore, you\u0027ll need to enable at least one \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules#service-classes\u0022\u003Emodule that provides a search backend\u003C\/a\u003E.\r\n\r\n\u003Ch2\u003EInformation for developers\u003C\/h2\u003E\r\nExtensive documentation for other developers, who might want to extend the framework\u0027s capabilities themselves, is available. It is partly included in the module itself (in \u003Ccode\u003Esearch_api.api.php\u003C\/code\u003E, in \u003Ccode\u003EREADME.txt\u003C\/code\u003E and directly in the relevant classes and interfaces) and partly in the online documentation (linked in the sidebar).\r\nIf you are trying to implement some extension and are stuck, please don\u0027t hesitate to ask in the module\u0027s issue queue. Please also add your module to the \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022\u003Elist of extension modules\u003C\/a\u003E once it\u0027s finished, if it is generally useful.\r\n\r\nAll developers working in the Search API ecosystem are advised to keep an eye on [#1188562] and \u003Ca href=\u0022\/list-changes\/search_api\u0022\u003Ethe module\u0027s change records\u003C\/a\u003E for important updates. (Could also contain useful information for site builders.)\r\nAlso, you can find us in the \u003Ca href=\u0022https:\/\/app.slack.com\/client\/T06GX3JTS\/C3E9QDZ5M\u0022\u003E#search\u003C\/a\u003E channel on Slack.\r\n\r\n\u003Ch2\u003ESponsors\u003C\/h2\u003E\r\n\r\nIf you are interested in sponsoring a particular feature or new related module, please \u003Ca href=\u0022\/user\/205582\/contact\u0022\u003Econtact drunken_monkey\u003C\/a\u003E. He is also available for consulting and custom development.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022what-does-it-do\u0022\u003EWhat does it do?\u003C\/h2\u003E\n\u003Cp\u003EThis module provides a framework for easily creating searches on any entity known to Drupal, using any kind of search engine. For site administrators, it is a great alternative to other search solutions, since it already incorporates facetting support and the ability to use the \u003Ca href=\u0022\/project\/views\u0022 rel=\u0022nofollow\u0022\u003EViews module\u003C\/a\u003E for displaying search results, filters, etc. Also, with the \u003Ca href=\u0022\/project\/search_api_solr\u0022 rel=\u0022nofollow\u0022\u003EApache Solr integration\u003C\/a\u003E, a high-performance search engine is available for this module.\u003C\/p\u003E\n\u003Cp\u003EDevelopers, on the other hand, will be impressed by the large flexibility and numerous ways of extension the module provides. Hence, the growing number of \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022 rel=\u0022nofollow\u0022\u003Eadditional contrib modules\u003C\/a\u003E, providing additional functionality or helping users customize some aspects of the search process.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022examples-amp-demo\u0022\u003EExamples \u0026amp; Demo\u003C\/h2\u003E\n\u003Cp\u003EThe prime example of a site using this module is \u003Ca href=\u0022\/\u0022 rel=\u0022nofollow\u0022\u003Edrupal.org\u003C\/a\u003E itself \u2013 the Search API, along with the \u003Ca href=\u0022\/project\/search_api_db\u0022 rel=\u0022nofollow\u0022\u003Edatabase backend\u003C\/a\u003E and \u003Ca href=\u0022\/project\/views\u0022 rel=\u0022nofollow\u0022\u003EViews\u003C\/a\u003E, is used to generate the issue queue listings.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022note-on-security\u0022\u003ENote on security\u003C\/h2\u003E\n\u003Cp\u003EIn general, the Search API doesn\u0027t provide any kind of access restrictions (as this cannot be done on a generic level). It is therefore your responsibility to take care that only accessible items are indexed or results displayed (e.g., by using appropriate filters).\u003Cbr\u003E\nThere is, however, built-in support for node access checks via the \u003Ca href=\u0022\/node\/1254452#search_api_node_access\u0022 rel=\u0022nofollow\u0022\u003ENode access\u003C\/a\u003E data alteration (q.v. for details). Also, the \u003Cem\u003ESearch views\u003C\/em\u003E module contains an option to do additional access checks on all entities in search views.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022additional-modules\u0022\u003EAdditional modules\u003C\/h2\u003E\n\u003Cp\u003EAt the moment, this project contains, apart from the core API module, the following extension module (in the version for Drupal 8+):\u003C\/p\u003E\n\u003Ch3 id=\u0022database-search\u0022\u003EDatabase search\u003C\/h3\u003E\n\u003Cp\u003EThis module provides a ready-to-use search backend that indexes and searches content using Drupal\u0027s own database. It is mainly meant for testing purposes and for smaller sites, larger sites will usually want to use a more powerful backend (like Solr or Elasticsearch). Also provided is the \u0022Database Search Defaults\u0022 module which provides a complete pre-configured content search when installed.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022tutorials-and-screencasts\u0022\u003ETutorials and screencasts\u003C\/h2\u003E\n\u003Cp\u003EThe \u003Ca href=\u0022\/docs\/8\/modules\/search-api\/getting-started\u0022 rel=\u0022nofollow\u0022\u003EGetting started\u003C\/a\u003E documentation page and the \u003Ca href=\u0022\/docs\/8\/modules\/search-api\/presentations-and-external-material\u0022 rel=\u0022nofollow\u0022\u003Eexternal material available\u003C\/a\u003E (screencasts, etc.) might provide a good introduction to the module.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022other-available-backends-and-extensions\u0022\u003EOther available backends and extensions\u003C\/h2\u003E\n\u003Cp\u003EPlease see the list of \u003Ca href=\u0022\/project\/search_api\/ecosystem\u0022 rel=\u0022nofollow\u0022\u003ESearch API Ecosystem modules\u003C\/a\u003E and curated list of \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022 rel=\u0022nofollow\u0022\u003EExtension modules\u003C\/a\u003E. If you maintain or encounter a great Search API module, feel free to add it.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022requirements\u0022\u003ERequirements\u003C\/h2\u003E\n\u003Cp\u003ETo use the Views integration, you\u0027ll (of course) also need the \u003Ca href=\u0022\/project\/entity\u0022 rel=\u0022nofollow\u0022\u003EViews\u003C\/a\u003E module. For facets, you\u0027ll need the \u003Ca href=\u0022\/project\/facets\u0022 rel=\u0022nofollow\u0022\u003EFacets\u003C\/a\u003E module.\u003Cbr\u003E\nFurthermore, you\u0027ll need to enable at least one \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules#service-classes\u0022 rel=\u0022nofollow\u0022\u003Emodule that provides a search backend\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022information-for-developers\u0022\u003EInformation for developers\u003C\/h2\u003E\n\u003Cp\u003EExtensive documentation for other developers, who might want to extend the framework\u0027s capabilities themselves, is available. It is partly included in the module itself (in \u003Ccode\u003Esearch_api.api.php\u003C\/code\u003E, in \u003Ccode\u003EREADME.txt\u003C\/code\u003E and directly in the relevant classes and interfaces) and partly in the online documentation (linked in the sidebar).\u003Cbr\u003E\nIf you are trying to implement some extension and are stuck, please don\u0027t hesitate to ask in the module\u0027s issue queue. Please also add your module to the \u003Ca href=\u0022\/docs\/contributed-modules\/search-api\/extension-modules\u0022 rel=\u0022nofollow\u0022\u003Elist of extension modules\u003C\/a\u003E once it\u0027s finished, if it is generally useful.\u003C\/p\u003E\n\u003Cp\u003EAll developers working in the Search API ecosystem are advised to keep an eye on [#1188562] and \u003Ca href=\u0022\/list-changes\/search_api\u0022 rel=\u0022nofollow\u0022\u003Ethe module\u0027s change records\u003C\/a\u003E for important updates. (Could also contain useful information for site builders.)\u003Cbr\u003E\nAlso, you can find us in the \u003Ca href=\u0022https:\/\/app.slack.com\/client\/T06GX3JTS\/C3E9QDZ5M\u0022 rel=\u0022nofollow\u0022\u003E#search\u003C\/a\u003E channel on Slack.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022sponsors\u0022\u003ESponsors\u003C\/h2\u003E\n\u003Cp\u003EIf you are interested in sponsoring a particular feature or new related module, please \u003Ca href=\u0022\/user\/205582\/contact\u0022 rel=\u0022nofollow\u0022\u003Econtact drunken_monkey\u003C\/a\u003E. He is also available for consulting and custom development.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Go beyond core\u0027s search functionality for content, users, and other entities. Display search results and integrate with external search backends (Solr, ElasticSearch, Algolia) via additional modules."},"field_active_installs":"{\u00228.x-1.x\u0022:136562}","field_active_installs_total":136562,"field_composer_namespace":"drupal\/search_api","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":{"value":"\u003Ch3 id=\u0022summary-problem-motivation\u0022\u003EProblem\/Motivation\u003C\/h3\u003E\r\n\r\n\r\n\u003Ch4 id=\u0022summary-steps-reproduce\u0022\u003ESteps to reproduce\u003C\/h4\u003E\r\n\r\n\r\n\u003Ch3 id=\u0022summary-proposed-resolution\u0022\u003EProposed resolution\u003C\/h3\u003E\r\n\r\n\r\n\u003Ch3 id=\u0022summary-remaining-tasks\u0022\u003ERemaining tasks\u003C\/h3\u003E\r\n\r\n","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Ch3 id=\u0022summary-problem-motivation-01\u0022\u003EProblem\/Motivation\u003C\/h3\u003E\n\u003Ch4 id=\u0022summary-steps-reproduce-01\u0022\u003ESteps to reproduce\u003C\/h4\u003E\n\u003Ch3 id=\u0022summary-proposed-resolution-01\u0022\u003EProposed resolution\u003C\/h3\u003E\n\u003Ch3 id=\u0022summary-remaining-tasks-01\u0022\u003ERemaining tasks\u003C\/h3\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E"},"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/search_api\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"search_api","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1bdec67e-37de-4c05-90b0-a70ef5152697","meta":{"drupal_internal__target_id":205582}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/uid?resourceVersion=id%3A20011003"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/relationships\/uid?resourceVersion=id%3A20011003"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/field_development_status?resourceVersion=id%3A20011003"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/relationships\/field_development_status?resourceVersion=id%3A20011003"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/field_maintenance_status?resourceVersion=id%3A20011003"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/relationships\/field_maintenance_status?resourceVersion=id%3A20011003"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"8d7b9b34-6ae2-4e9b-b3a2-f0bb3109500a","meta":{"drupal_internal__target_id":196}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/field_module_categories?resourceVersion=id%3A20011003"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/relationships\/field_module_categories?resourceVersion=id%3A20011003"}}},"field_project_images":{"data":[{"type":"file--file","id":"27598096-d0fc-4b5f-bc26-3693e6d0e4af","meta":{"alt":"","title":null,"width":1024,"height":608,"drupal_internal__target_id":3047}},{"type":"file--file","id":"74efd6e2-fe40-40b8-87ed-3484204a72ba","meta":{"alt":"","title":null,"width":1268,"height":958,"drupal_internal__target_id":20679}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/field_project_images?resourceVersion=id%3A20011003"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/359488d8-e98b-4e47-8905-3bb59a217567\/relationships\/field_project_images?resourceVersion=id%3A20011003"}}}}},{"type":"node--project_module","id":"32033d52-4895-4b2f-9615-8d588b171640","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640?resourceVersion=id%3A20036255"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2561489,"status":true,"title":"Simple XML sitemap","created":"2015-09-02T02:32:31+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Every webpage needs an automatic \u003Ca href=\u0022https:\/\/en.wikipedia.org\/wiki\/Sitemaps\u0022 target=\u0027_blank\u0027\u003EXML sitemap generator\u003C\/a\u003E for SEO reasons. Sitemaps generated by this module adhere to the new Google standard regarding multilingual content by creating \u003Ca href=\u0022https:\/\/developers.google.com\/search\/docs\/specialty\/international\/localized-versions#sitemap\u0022 target=\u0027_blank\u0027\u003Ehreflang sitemaps\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/developers.google.com\/search\/docs\/crawling-indexing\/sitemaps\/image-sitemaps\u0022\u003Eimage sitemaps\u003C\/a\u003E - Googlebots will thank you later.\r\n\r\nIn addition to the default hreflang sitemaps, the module\u0027s API allows creating and publishing of custom sitemaps with arbitrary content, as well as submitting those sitemaps to search engines like Google. For instant indexation of content, the \u003Ca href=\u0022https:\/\/www.indexnow.org\/\u0022\u003EIndexNow protocol\u003C\/a\u003E (supported by Bing and Yandex) has been implemented in 4.x (\u003Cem\u003Esimple_sitemap_engines\u003C\/em\u003E submodule).\r\n\r\n\u003C!--break--\u003E\r\n\r\n\u003Ch2\u003EOverview\u003C\/h2\u003E\r\nThe module generates multilingual sitemaps for entities, views and custom links. Out of the box it supports most of Drupal\u0027s content entity types including:\r\n\u003Cul\u003E\r\n  \u003Cli\u003Enodes\u003C\/li\u003E\r\n  \u003Cli\u003Etaxonomy terms\u003C\/li\u003E\r\n  \u003Cli\u003Emenu links\u003C\/li\u003E\r\n  \u003Cli\u003Eusers\u003C\/li\u003E\r\n  \u003Cli\u003E...\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\nContributed entity types like commerce products can be indexed as well. Various inclusion settings can be set for bundles and overridden on a per-entity basis. Sitemap generation can be altered through custom URL \u0026 sitemap generator plugins and hooks. Sitemaps can be automatically submitted to search engines, content changes can also be directly submitted via the \u003Ca href=\u0022https:\/\/gbyte.dev\/blog\/index-drupal-9-pages-indexnow-using-simple-xml-sitemap\u0022\u003EIndexNow integration\u003C\/a\u003E.\r\n\r\n\u003Ca href=\u0022http:\/\/gbyte.dev\/sitemap.xml\u0022\u003EHere\u003C\/a\u003E is a sample of the markup it generates (press ctrl+u to view the source).\r\n\r\n\u003Ch3\u003EFunctionality\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003EAbility to create any type of sitemap via plugins\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to create a sitemap index of other sitemaps\u003C\/li\u003E\r\n  \u003Cli\u003EPeriodic submission to search engines\u003C\/li\u003E\r\n  \u003Cli\u003ESubmission to IndexNow on content changes\u003C\/li\u003E\r\n  \u003Cli\u003EViews and views arguments support\u003C\/li\u003E\r\n  \u003Cli\u003EXSL stylesheets for human visitors\u003C\/li\u003E\r\n  \u003Cli\u003EPerformance test script included\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003E4.x\u003C\/h3\u003E\r\n\u003Ch4\u003EModule rewrite with developers\/integrators in mind\u003C\/h4\u003E\r\n\u003Cem\u003E4.x\u003C\/em\u003E makes much greater use of Drupal\u0027s entity API dropping some of its very specific chaining API. See [#3219383]. See \u003Ca href=\u0022https:\/\/gbyte.dev\/projects\/simple-xml-sitemap\u0022\u003Ethese posts\u003C\/a\u003E for more details on the \u003Cem\u003E4.x\u003C\/em\u003E branch.\r\n \r\n\u003Ch4\u003EShould you use this over 3.x?\u003C\/h4\u003E\r\nYes. 3.x has is not supported.\r\n\r\n\u003Ch2\u003EUpgrade path\u003C\/h2\u003E\r\nPlease do not forget to run \u003Ccode\u003Edrush updb\u003C\/code\u003E or \u003Ca href=\u0022https:\/\/www.drupal.org\/upgrade\/running-update-php\u0022\u003Eupdate.php\u003C\/a\u003E after every update. If you get an error, run \u003Cem\u003Ecore\/rebuild.php\u003C\/em\u003E before the above.\r\n\r\nYou can upgrade from any \u003Cem\u003E8.x-2.x\u003C\/em\u003E or \u003Cem\u003E8.x-3.x\u003C\/em\u003E verison to \u003Cem\u003E4.x\u003C\/em\u003E. Keep in mind, the module APIs change between major releases.\r\n\r\n\u003Ch2\u003EOther\u003C\/h2\u003E\r\nSimilar modules: \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/xmlsitemap\u0022\u003EXML Sitemap\u003C\/a\u003E was the de facto XML sitemap generator prior to Drupal 8 and a stable version for D8 has just been released.\r\n\r\nIf you would like to say thanks and support the development of this module, a \u003Ca href=\u0022https:\/\/www.paypal.com\/cgi-bin\/webscr?cmd=_s-xclick\u0026hosted_button_id=5AFYRSBLGSC3W\u0022\u003Edonation\u003C\/a\u003E will be much appreciated.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EEvery webpage needs an automatic \u003Ca href=\u0022https:\/\/en.wikipedia.org\/wiki\/Sitemaps\u0022 rel=\u0022nofollow\u0022\u003EXML sitemap generator\u003C\/a\u003E for SEO reasons. Sitemaps generated by this module adhere to the new Google standard regarding multilingual content by creating \u003Ca href=\u0022https:\/\/developers.google.com\/search\/docs\/specialty\/international\/localized-versions#sitemap\u0022 rel=\u0022nofollow\u0022\u003Ehreflang sitemaps\u003C\/a\u003E and \u003Ca href=\u0022https:\/\/developers.google.com\/search\/docs\/crawling-indexing\/sitemaps\/image-sitemaps\u0022 rel=\u0022nofollow\u0022\u003Eimage sitemaps\u003C\/a\u003E - Googlebots will thank you later.\u003C\/p\u003E\n\u003Cp\u003EIn addition to the default hreflang sitemaps, the module\u0027s API allows creating and publishing of custom sitemaps with arbitrary content, as well as submitting those sitemaps to search engines like Google. For instant indexation of content, the \u003Ca href=\u0022https:\/\/www.indexnow.org\/\u0022 rel=\u0022nofollow\u0022\u003EIndexNow protocol\u003C\/a\u003E (supported by Bing and Yandex) has been implemented in 4.x (\u003Cem\u003Esimple_sitemap_engines\u003C\/em\u003E submodule).\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022overview\u0022\u003EOverview\u003C\/h2\u003E\n\u003Cp\u003EThe module generates multilingual sitemaps for entities, views and custom links. Out of the box it supports most of Drupal\u0027s content entity types including:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003Enodes\u003C\/li\u003E\n\u003Cli\u003Etaxonomy terms\u003C\/li\u003E\n\u003Cli\u003Emenu links\u003C\/li\u003E\n\u003Cli\u003Eusers\u003C\/li\u003E\n\u003Cli\u003E...\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EContributed entity types like commerce products can be indexed as well. Various inclusion settings can be set for bundles and overridden on a per-entity basis. Sitemap generation can be altered through custom URL \u0026amp; sitemap generator plugins and hooks. Sitemaps can be automatically submitted to search engines, content changes can also be directly submitted via the \u003Ca href=\u0022https:\/\/gbyte.dev\/blog\/index-drupal-9-pages-indexnow-using-simple-xml-sitemap\u0022 rel=\u0022nofollow\u0022\u003EIndexNow integration\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022http:\/\/gbyte.dev\/sitemap.xml\u0022 rel=\u0022nofollow\u0022\u003EHere\u003C\/a\u003E is a sample of the markup it generates (press ctrl+u to view the source).\u003C\/p\u003E\n\u003Ch3 id=\u0022functionality\u0022\u003EFunctionality\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003EAbility to create any type of sitemap via plugins\u003C\/li\u003E\n\u003Cli\u003EAbility to create a sitemap index of other sitemaps\u003C\/li\u003E\n\u003Cli\u003EPeriodic submission to search engines\u003C\/li\u003E\n\u003Cli\u003ESubmission to IndexNow on content changes\u003C\/li\u003E\n\u003Cli\u003EViews and views arguments support\u003C\/li\u003E\n\u003Cli\u003EXSL stylesheets for human visitors\u003C\/li\u003E\n\u003Cli\u003EPerformance test script included\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022x\u0022\u003E4.x\u003C\/h3\u003E\n\u003Ch4 id=\u0022module-rewrite-with-developers-integrators-in-mind\u0022\u003EModule rewrite with developers\/integrators in mind\u003C\/h4\u003E\n\u003Cp\u003E\u003Cem\u003E4.x\u003C\/em\u003E makes much greater use of Drupal\u0027s entity API dropping some of its very specific chaining API. See [#3219383]. See \u003Ca href=\u0022https:\/\/gbyte.dev\/projects\/simple-xml-sitemap\u0022 rel=\u0022nofollow\u0022\u003Ethese posts\u003C\/a\u003E for more details on the \u003Cem\u003E4.x\u003C\/em\u003E branch.\u003C\/p\u003E\n\u003Ch4 id=\u0022should-you-use-this-over-3-x\u0022\u003EShould you use this over 3.x?\u003C\/h4\u003E\n\u003Cp\u003EYes. 3.x has is not supported.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022upgrade-path\u0022\u003EUpgrade path\u003C\/h2\u003E\n\u003Cp\u003EPlease do not forget to run \u003Ccode\u003Edrush updb\u003C\/code\u003E or \u003Ca href=\u0022https:\/\/www.drupal.org\/upgrade\/running-update-php\u0022 rel=\u0022nofollow\u0022\u003Eupdate.php\u003C\/a\u003E after every update. If you get an error, run \u003Cem\u003Ecore\/rebuild.php\u003C\/em\u003E before the above.\u003C\/p\u003E\n\u003Cp\u003EYou can upgrade from any \u003Cem\u003E8.x-2.x\u003C\/em\u003E or \u003Cem\u003E8.x-3.x\u003C\/em\u003E verison to \u003Cem\u003E4.x\u003C\/em\u003E. Keep in mind, the module APIs change between major releases.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022other\u0022\u003EOther\u003C\/h2\u003E\n\u003Cp\u003ESimilar modules: \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/xmlsitemap\u0022 rel=\u0022nofollow\u0022\u003EXML Sitemap\u003C\/a\u003E was the de facto XML sitemap generator prior to Drupal 8 and a stable version for D8 has just been released.\u003C\/p\u003E\n\u003Cp\u003EIf you would like to say thanks and support the development of this module, a \u003Ca href=\u0022https:\/\/www.paypal.com\/cgi-bin\/webscr?cmd=_s-xclick\u0026amp;hosted_button_id=5AFYRSBLGSC3W\u0022 rel=\u0022nofollow\u0022\u003Edonation\u003C\/a\u003E will be much appreciated.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Generates standard-compliant hreflang XML sitemaps to enhance your site\u0027s SEO, notifies search engines of website changes via IndexNow and sitemap ping protocols, and provides a framework for developing other sitemap types."},"field_active_installs":"{\u00228.x-1.x\u0022:7,\u00228.x-2.x\u0022:1900,\u00228.x-3.x\u0022:10487,\u00224.x\u0022:137,\u00224.0.x\u0022:265,\u00224.1.x\u0022:13393,\u00224.2.x\u0022:101446}","field_active_installs_total":127635,"field_composer_namespace":"drupal\/simple_sitemap","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/simple_sitemap\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"simple_sitemap","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"55b0368f-e284-450a-9b1d-63f71951fe22","meta":{"drupal_internal__target_id":2381352}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/uid?resourceVersion=id%3A20036255"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/relationships\/uid?resourceVersion=id%3A20036255"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/field_development_status?resourceVersion=id%3A20036255"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/relationships\/field_development_status?resourceVersion=id%3A20036255"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/field_maintenance_status?resourceVersion=id%3A20036255"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/relationships\/field_maintenance_status?resourceVersion=id%3A20036255"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"3cf38e0a-d4b1-426d-9b8e-008e7a41cf8d","meta":{"drupal_internal__target_id":194}},{"type":"taxonomy_term--module_categories","id":"01df2105-2397-4a0e-b34c-80da1c3b1208","meta":{"drupal_internal__target_id":201}},{"type":"taxonomy_term--module_categories","id":"8d7b9b34-6ae2-4e9b-b3a2-f0bb3109500a","meta":{"drupal_internal__target_id":196}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/field_module_categories?resourceVersion=id%3A20036255"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/relationships\/field_module_categories?resourceVersion=id%3A20036255"}}},"field_project_images":{"data":[{"type":"file--file","id":"d73c100b-81f7-4b56-afa7-e17c741c72be","meta":{"alt":"","title":null,"width":1225,"height":873,"drupal_internal__target_id":32429}},{"type":"file--file","id":"71f70248-22b1-4e56-a5da-d690e372ca2b","meta":{"alt":"","title":null,"width":1212,"height":1066,"drupal_internal__target_id":32430}},{"type":"file--file","id":"40db45d5-b026-4f8b-9c1a-276abe5263c6","meta":{"alt":"","title":null,"width":1212,"height":976,"drupal_internal__target_id":32431}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/field_project_images?resourceVersion=id%3A20036255"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/32033d52-4895-4b2f-9615-8d588b171640\/relationships\/field_project_images?resourceVersion=id%3A20036255"}}}}},{"type":"node--project_module","id":"6c7bf776-ca5c-4b71-b56f-9f5e909e3d01","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01?resourceVersion=id%3A20010602"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":719864,"status":true,"title":"Linkit","created":"2010-02-19T23:11:04+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Cdiv class=\u0022note\u0022\u003E\u003Ch3\u003ESummary\u003C\/h3\u003E\u003Cem\u003ELinkit\u003C\/em\u003E provides an autocomplete interface for internal and external linking in rich-text editors. Linkit supports nodes, users, taxonomy terms, files, comments and basic support for all types of entities that define a canonical link template.\u003C\/div\u003E\r\n\r\n\u003Cdiv class=\u0022note-warning\u0022\u003E\u003Cp\u003EAs of version 11.3, Drupal core provides link autocomplete suggestions in CKEditor similar to what this module does. Sites using or considering using Linkit should evaluate whether they can use the core solution instead of Linkit. Here is a list of features Linkit has that aren\u0027t currently included in Drupal core\u0027s version:\r\n\r\n  \u003Cul\u003E\r\n  \u003Cli\u003EAbility to configure which types of links will be shown in autocomplete suggestions, and how to group them\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to create multiple Linkit \u0022profiles\u0022 to be used on different text formats\u003C\/li\u003E\r\n\u003Cli\u003ELinkit-styled autocomplete suggestions for link fields (core already has this, but it\u0027s entity suggestions don\u0027t have the configuration options below)\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to configure metadata (with token support) for autcomplete suggestions; for example, showing the authoring information, published state for each suggestion\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to configure the number of suggestions shown\u003C\/li\u003E\r\n  \u003Cli\u003EAbility to toggle published\/unpublished entities in suggestions\u003C\/li\u003E\r\n\u003Cli\u003EA Drupal form element for hyperlinks, allowing developers to use autocomplete functionality in custom Field Widgets\u003C\/li\u003E\r\n  \u003Cli\u003EAn extendable plugin type for \u0022Matchers,\u0022 which determine what types of links can be suggested. Linkit includes a front page matcher, external link matcher, email address matcher, as well as matchers for user, taxonomy, media, and contact form entities.\u003C\/li\u003E\r\n  \u003Cli\u003EAn extendable plugin type for \u0022Substitutions\u0022 to customize what a match should render as\u003C\/li\u003E\r\n  \u003Cli\u003EFor media entities, the ability to configure whether to link to the media entity URL or direct download\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\r\n\u003C\/div\u003E \r\n\r\n\u003Cimg src=\u0022\/files\/linkit-cke5.png\u0022 alt=\u0022Screenshot of Linkit autocomplete using CKEditor 5\u0022\u003E\r\n\r\n\u003Ch2\u003EConfiguration\u003C\/h2\u003E\r\n\u003Col\u003E\r\n  \u003Cli\u003EAfter installation, create a Linkit profile. The profile will contain information about which plugins to use. Profiles can be created at \u003Ccode\u003E\/admin\/config\/content\/linkit\u003C\/code\u003E.\u003C\/li\u003E\r\n  \u003Cli\u003EEnable the Linkit plugin on the text format you want to use. Formats are found at \u003Ccode\u003Eadmin\/config\/content\/formats\u003C\/code\u003E.\u003C\/li\u003E\r\n\r\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/link-media-directly-to-the-actual-file-not-the-media-route\u0022\u003ELink media to the actual file\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/remove-links-to-unpublished-or-non-existent-pages\u0022\u003ERemove links to unpublished or non-existent pages\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/use-linkit-with-core-menu-links\u0022\u003EUse Linkit with menu links\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/use-linkit-with-link-fields\u0022\u003EUse Linkit with link fields\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ol\u003E\r\n\r\n\u003Ch2\u003ERelated modules\u003C\/h2\u003E\r\n\u003Cul\u003E\u003Cli\u003ETo add link attributes (rel, target), see \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/editor_advanced_link\u0022\u003EEditor Advanced link\u003C\/a\u003E.\r\n\u003C\/li\u003E\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003EVersion Status\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E7.0.x (Drupal \u003E10.1 and Drupal 11; drops CKEditor 4 support)\u003C\/li\u003E\r\n\u003Cli\u003E6.1.x (Drupal 10.1-10.4; note: a packaging issue caused 6.1.7 to allow installation with Drupal 10.5.x; do not use version 6.1.7!: Supported until November 2025)\u003C\/li\u003E\r\n\u003Cli\u003E6.0.x (Drupal 9.5.x and 10.0): No further development\u003C\/li\u003E\r\n\u003Cli\u003E8.x-5.x: No further development.\u003C\/li\u003E\r\n\u003Cli\u003E8.x-4.x: No further development.\u003C\/li\u003E\r\n\u003Cli\u003E7.x-3.x: Drupal 7 compatible. Maintenance only.\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cdiv class=\u0022note\u0022\u003E\n\u003Ch3 id=\u0022summary\u0022\u003ESummary\u003C\/h3\u003E\n\u003Cp\u003E\u003Cem\u003ELinkit\u003C\/em\u003E provides an autocomplete interface for internal and external linking in rich-text editors. Linkit supports nodes, users, taxonomy terms, files, comments and basic support for all types of entities that define a canonical link template.\u003C\/p\u003E\u003C\/div\u003E\n\u003Cdiv class=\u0022note-warning\u0022\u003E\n\u003Cp\u003EAs of version 11.3, Drupal core provides link autocomplete suggestions in CKEditor similar to what this module does. Sites using or considering using Linkit should evaluate whether they can use the core solution instead of Linkit. Here is a list of features Linkit has that aren\u0027t currently included in Drupal core\u0027s version:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EAbility to configure which types of links will be shown in autocomplete suggestions, and how to group them\u003C\/li\u003E\n\u003Cli\u003EAbility to create multiple Linkit \u0022profiles\u0022 to be used on different text formats\u003C\/li\u003E\n\u003Cli\u003ELinkit-styled autocomplete suggestions for link fields (core already has this, but it\u0027s entity suggestions don\u0027t have the configuration options below)\u003C\/li\u003E\n\u003Cli\u003EAbility to configure metadata (with token support) for autcomplete suggestions; for example, showing the authoring information, published state for each suggestion\u003C\/li\u003E\n\u003Cli\u003EAbility to configure the number of suggestions shown\u003C\/li\u003E\n\u003Cli\u003EAbility to toggle published\/unpublished entities in suggestions\u003C\/li\u003E\n\u003Cli\u003EA Drupal form element for hyperlinks, allowing developers to use autocomplete functionality in custom Field Widgets\u003C\/li\u003E\n\u003Cli\u003EAn extendable plugin type for \u0022Matchers,\u0022 which determine what types of links can be suggested. Linkit includes a front page matcher, external link matcher, email address matcher, as well as matchers for user, taxonomy, media, and contact form entities.\u003C\/li\u003E\n\u003Cli\u003EAn extendable plugin type for \u0022Substitutions\u0022 to customize what a match should render as\u003C\/li\u003E\n\u003Cli\u003EFor media entities, the ability to configure whether to link to the media entity URL or direct download\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003C\/div\u003E\n\u003Cp\u003E\u003Cimg src=\u0022\/core\/misc\/icons\/e32700\/error.svg\u0022 alt=\u0022Image removed.\u0022 title=\u0022This image has been removed. For security reasons, only images from the local domain are allowed.\u0022 height=\u002216\u0022 width=\u002216\u0022 class=\u0022filter-image-invalid\u0022\u003E\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022configuration\u0022\u003EConfiguration\u003C\/h2\u003E\n\u003Col\u003E\n\u003Cli\u003EAfter installation, create a Linkit profile. The profile will contain information about which plugins to use. Profiles can be created at \u003Ccode\u003E\/admin\/config\/content\/linkit\u003C\/code\u003E.\u003C\/li\u003E\n\u003Cli\u003EEnable the Linkit plugin on the text format you want to use. Formats are found at \u003Ccode\u003Eadmin\/config\/content\/formats\u003C\/code\u003E.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/link-media-directly-to-the-actual-file-not-the-media-route\u0022 rel=\u0022nofollow\u0022\u003ELink media to the actual file\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/remove-links-to-unpublished-or-non-existent-pages\u0022 rel=\u0022nofollow\u0022\u003ERemove links to unpublished or non-existent pages\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/use-linkit-with-core-menu-links\u0022 rel=\u0022nofollow\u0022\u003EUse Linkit with menu links\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022\/docs\/extending-drupal\/contributed-modules\/contributed-module-documentation\/linkit\/use-linkit-with-link-fields\u0022 rel=\u0022nofollow\u0022\u003EUse Linkit with link fields\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ol\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003ETo add link attributes (rel, target), see \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/editor_advanced_link\u0022 rel=\u0022nofollow\u0022\u003EEditor Advanced link\u003C\/a\u003E.\n\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022version-status\u0022\u003EVersion Status\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E7.0.x (Drupal \u0026gt;10.1 and Drupal 11; drops CKEditor 4 support)\u003C\/li\u003E\n\u003Cli\u003E6.1.x (Drupal 10.1-10.4; note: a packaging issue caused 6.1.7 to allow installation with Drupal 10.5.x; do not use version 6.1.7!: Supported until November 2025)\u003C\/li\u003E\n\u003Cli\u003E6.0.x (Drupal 9.5.x and 10.0): No further development\u003C\/li\u003E\n\u003Cli\u003E8.x-5.x: No further development.\u003C\/li\u003E\n\u003Cli\u003E8.x-4.x: No further development.\u003C\/li\u003E\n\u003Cli\u003E7.x-3.x: Drupal 7 compatible. Maintenance only.\u003C\/li\u003E\n\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"\u003Cem\u003ELinkit\u003C\/em\u003E provides an autocomplete functionality for Drupal link interfaces. Linkit supports nodes, users, taxonomy, files\/media, and basic support for all types of entities that define a canonical link template."},"field_active_installs":"{\u00228.x-4.x\u0022:2974,\u00228.x-5.x\u0022:3047,\u00226.0.x\u0022:8330,\u00226.1.x\u0022:17549,\u00227.x\u0022:4,\u00227.0.x\u0022:94742,\u00227.1.x\u0022:6}","field_active_installs_total":126652,"field_composer_namespace":"drupal\/linkit","field_core_semver_maximum":12999999,"field_core_semver_minimum":8000000,"field_issue_summary_template":{"value":"\u003Ch3 id=\u0022summary-problem-motivation\u0022\u003EProblem\/motivation\u003C\/h3\u003E\r\n\r\n\u003Ch3 id=\u0022summary-steps-reproduce\u0022\u003ESteps to reproduce\u003C\/h3\u003E\r\n\u003Col\u003E\r\n  \u003Cli\u003EGo to...\u003C\/li\u003E\r\n  \u003Cli\u003EClick on...\u003C\/li\u003E\r\n  \u003Cli\u003EObserve [describe the expected and actual output]\u003C\/li\u003E\r\n\u003C\/ol\u003E\r\n        \r\n\u003Ch3 id=\u0022summary-proposed-resolution\u0022\u003EProposed resolution\u003C\/h3\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Ch3 id=\u0022summary-problem-motivation-01\u0022\u003EProblem\/motivation\u003C\/h3\u003E\n\u003Ch3 id=\u0022summary-steps-reproduce-01\u0022\u003ESteps to reproduce\u003C\/h3\u003E\n\u003Col\u003E\n\u003Cli\u003EGo to...\u003C\/li\u003E\n\u003Cli\u003EClick on...\u003C\/li\u003E\n\u003Cli\u003EObserve [describe the expected and actual output]\u003C\/li\u003E\n\u003C\/ol\u003E\n\u003Ch3 id=\u0022summary-proposed-resolution-01\u0022\u003EProposed resolution\u003C\/h3\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E"},"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/linkit\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"linkit","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"2d65edfe-729c-46f7-9c2d-b3d1b5bbe619","meta":{"drupal_internal__target_id":464598}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/uid?resourceVersion=id%3A20010602"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/relationships\/uid?resourceVersion=id%3A20010602"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/field_development_status?resourceVersion=id%3A20010602"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/relationships\/field_development_status?resourceVersion=id%3A20010602"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"09a378d2-fd35-41f3-bff0-10d9801741a4","meta":{"drupal_internal__target_id":27269}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/field_maintenance_status?resourceVersion=id%3A20010602"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/relationships\/field_maintenance_status?resourceVersion=id%3A20010602"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","meta":{"drupal_internal__target_id":186}},{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/field_module_categories?resourceVersion=id%3A20010602"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/relationships\/field_module_categories?resourceVersion=id%3A20010602"}}},"field_project_images":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/field_project_images?resourceVersion=id%3A20010602"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/6c7bf776-ca5c-4b71-b56f-9f5e909e3d01\/relationships\/field_project_images?resourceVersion=id%3A20010602"}}}}},{"type":"node--project_module","id":"b491f852-5f63-4971-86d0-b23836422bfb","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb?resourceVersion=id%3A20014803"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":1181848,"status":true,"title":"Inline Entity Form","created":"2011-06-07T23:47:58+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Ch2\u003ESupported versions: 1.x \/ 3.x\u003C\/h2\u003E\r\n\r\nApologies! There are problems with the 2.x branch - we strongly recommend not using it. This is currently cleaned up in [#3401656]. Help is appreciated.\r\n\r\nIf you are on 1.x, you can safely upgrade to 3.x, IF no other contrib module still requires 1.x only. In this case open an issue on that project, see [#3407711].\r\n\r\nIf you are on 2.x, you can either downgrade to 1.x, or upgrade to 3.x, IF no other contrib module still requires 1.x only. In this case open an issue on that project, see [#3407711] \r\nReporting back to [#3407407] is appreciated. (Note that the you WILL lose all the non-quality-assured features from 2.x. To any complainers: Feel free to write or pay a test for your favorite feature, or maintain a fork with lower maintenance standard yourself.)\r\n\r\n\u003Ch3\u003EModule authors, please update requirements\u003C\/h3\u003E\r\nSee [#3407711].\r\n\r\n\u003Ch2\u003EAbout IEF\u003C\/h2\u003E\r\n\r\nProvides a widget for inline management (creation, modification, removal) of referenced entities. \r\nThe primary use case is the parent -\u003E children one (product display -\u003E products, order -\u003E line items, etc.), where the child entities are never managed outside the parent form.\r\nExisting entities can also be referenced.\r\n\r\nSupports commerce_product_reference, commerce_line_item_reference and entityreference fields.\r\nRequires integration code to be provided for each entity type that can be referenced.\r\nSupports the commerce_product (including \u003Ca href=\u0022http:\/\/drupal.org\/project\/commerce_autosku\u0022\u003ECommerce AutoSKU\u003C\/a\u003E integration) and commerce_line_item, node, taxonomy_term entity types out of the box.\r\nIntegration for other entity types has not yet been written, patches welcome.\r\n\r\nSee the \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/inline_entity_form\/blob\/7.x-1.x\/README\u0022\u003E7.x README\u003C\/a\u003E or the \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/inline_entity_form\/blob\/8.x-1.x\/README\u0022\u003E8.x README\u003C\/a\u003E for information about getting started and integrating other entity types.\r\n\r\nThis module was covered on \u003Ca href=\u0022https:\/\/www.lullabot.com\/articles\/module-monday-inline-entity-form\u0022\u003ELullabot Module Monday\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/commerceguys.com\/blog\/commerce-module-tuesday-inline-entity-form\u0022\u003ECommerce Module Tuesday\u003C\/a\u003E.\r\n\r\nRequires the \u003Ca href=\u0022http:\/\/drupal.org\/project\/entity\u0022\u003EEntity API\u003C\/a\u003E module.\r\nRequires Drupal 7.15 or newer.","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022supported-versions-1-x-3-x\u0022\u003ESupported versions: 1.x \/ 3.x\u003C\/h2\u003E\n\u003Cp\u003EApologies! There are problems with the 2.x branch - we strongly recommend not using it. This is currently cleaned up in [#3401656]. Help is appreciated.\u003C\/p\u003E\n\u003Cp\u003EIf you are on 1.x, you can safely upgrade to 3.x, IF no other contrib module still requires 1.x only. In this case open an issue on that project, see [#3407711].\u003C\/p\u003E\n\u003Cp\u003EIf you are on 2.x, you can either downgrade to 1.x, or upgrade to 3.x, IF no other contrib module still requires 1.x only. In this case open an issue on that project, see [#3407711]\u003Cbr\u003E\nReporting back to [#3407407] is appreciated. (Note that the you WILL lose all the non-quality-assured features from 2.x. To any complainers: Feel free to write or pay a test for your favorite feature, or maintain a fork with lower maintenance standard yourself.)\u003C\/p\u003E\n\u003Ch3 id=\u0022module-authors-please-update-requirements\u0022\u003EModule authors, please update requirements\u003C\/h3\u003E\n\u003Cp\u003ESee [#3407711].\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022about-ief\u0022\u003EAbout IEF\u003C\/h2\u003E\n\u003Cp\u003EProvides a widget for inline management (creation, modification, removal) of referenced entities.\u003Cbr\u003E\nThe primary use case is the parent -\u0026gt; children one (product display -\u0026gt; products, order -\u0026gt; line items, etc.), where the child entities are never managed outside the parent form.\u003Cbr\u003E\nExisting entities can also be referenced.\u003C\/p\u003E\n\u003Cp\u003ESupports commerce_product_reference, commerce_line_item_reference and entityreference fields.\u003Cbr\u003E\nRequires integration code to be provided for each entity type that can be referenced.\u003Cbr\u003E\nSupports the commerce_product (including \u003Ca href=\u0022http:\/\/drupal.org\/project\/commerce_autosku\u0022 rel=\u0022nofollow\u0022\u003ECommerce AutoSKU\u003C\/a\u003E integration) and commerce_line_item, node, taxonomy_term entity types out of the box.\u003Cbr\u003E\nIntegration for other entity types has not yet been written, patches welcome.\u003C\/p\u003E\n\u003Cp\u003ESee the \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/inline_entity_form\/blob\/7.x-1.x\/README\u0022 rel=\u0022nofollow\u0022\u003E7.x README\u003C\/a\u003E or the \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/inline_entity_form\/blob\/8.x-1.x\/README\u0022 rel=\u0022nofollow\u0022\u003E8.x README\u003C\/a\u003E for information about getting started and integrating other entity types.\u003C\/p\u003E\n\u003Cp\u003EThis module was covered on \u003Ca href=\u0022https:\/\/www.lullabot.com\/articles\/module-monday-inline-entity-form\u0022 rel=\u0022nofollow\u0022\u003ELullabot Module Monday\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/commerceguys.com\/blog\/commerce-module-tuesday-inline-entity-form\u0022 rel=\u0022nofollow\u0022\u003ECommerce Module Tuesday\u003C\/a\u003E.\u003C\/p\u003E\n\u003Cp\u003ERequires the \u003Ca href=\u0022http:\/\/drupal.org\/project\/entity\u0022 rel=\u0022nofollow\u0022\u003EEntity API\u003C\/a\u003E module.\u003Cbr\u003E\nRequires Drupal 7.15 or newer.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"\u003Ch2\u003ESupported Versions\u003C\/h2\u003E\r\n\r\nA 2.x Version has been released erroneously, containing multiple regressions and unreviewed commits. This is currently cleaned up in [#]. Help is appreciated.\r\n\r\n\u003Ch2\u003EAbout IEF\u003C\/h2\u003E\r\n\r\nProvides a widget for inline management (creation, modification, removal) of referenced entities. \r\nThe primary use case is the parent -\u003E children one (product display -\u003E products, order -\u003E line items, etc.), where the child entities are never managed outside the parent form.\r\nExisting entities can also be referenced.\r\n\r\nSupports commerce_product_reference, commerce_line_item_reference and entityreference fields.\r\nRequires integration code to be provided for each entity type that can be referenced.\r\nSupports the commerce_product (including \u003Ca href=\u0022http:\/\/drupal.org\/project\/commerce_autosku\u0022\u003ECommerce AutoSKU\u003C\/a\u003E integration) and commerce_line_item, node, taxonomy_term entity types out of the box.\r\nIntegration for other entity types has not yet been written, patches welcome.\r\n\r\nSee the \u003Ca href=\u0022http:\/\/drupalcode.org\/project\/inline_entity_form.git\/blob\/a0f8bf8c59b5aa35d03383ec6a0b77791a8c149f:\/README\u0022\u003EREADME\u003C\/a\u003E for information about getting started and integrating other entity types.\r\n\r\nThis module was covered on \u003Ca href=\u0022https:\/\/www.lullabot.com\/articles\/module-monday-inline-entity-form\u0022\u003ELullabot Module Monday\u003C\/a\u003E and \u003Ca href=\u0022http:\/\/commerceguys.com\/blog\/commerce-module-tuesday-inline-entity-form\u0022\u003ECommerce Module Tuesday\u003C\/a\u003E.\r\n\r\nRequires the \u003Ca href=\u0022http:\/\/drupal.org\/project\/entity\u0022\u003EEntity API\u003C\/a\u003E module.\r\nRequires Drupal 7.15 or newer.\r\n\r\n"},"field_active_installs":"{\u00228.x-1.x\u0022:53042,\u00222.0.x\u0022:1305,\u00223.0.x\u0022:63604,\u00223.x\u0022:9}","field_active_installs_total":117960,"field_composer_namespace":"drupal\/inline_entity_form","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":null,"field_project_has_releases":true,"field_project_machine_name":"inline_entity_form","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"45dce456-4ddf-4269-9cd4-2e46bb0760ed","meta":{"drupal_internal__target_id":3661446}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/uid?resourceVersion=id%3A20014803"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/relationships\/uid?resourceVersion=id%3A20014803"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/field_development_status?resourceVersion=id%3A20014803"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/relationships\/field_development_status?resourceVersion=id%3A20014803"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/field_maintenance_status?resourceVersion=id%3A20014803"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/relationships\/field_maintenance_status?resourceVersion=id%3A20014803"}}},"field_module_categories":{"data":[],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/field_module_categories?resourceVersion=id%3A20014803"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/relationships\/field_module_categories?resourceVersion=id%3A20014803"}}},"field_project_images":{"data":[{"type":"file--file","id":"c59f4e11-4add-4430-958b-23bac7b72428","meta":{"alt":"","title":null,"width":848,"height":566,"drupal_internal__target_id":7636}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/field_project_images?resourceVersion=id%3A20014803"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/b491f852-5f63-4971-86d0-b23836422bfb\/relationships\/field_project_images?resourceVersion=id%3A20014803"}}}}},{"type":"node--project_module","id":"8132e3dd-d0c9-4906-8f0b-0a563091e8b7","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7?resourceVersion=id%3A20036877"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2608400,"status":true,"title":"Editor Advanced link","created":"2015-11-04T17:11:04+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Enhances the link Dialog in CKEditor.\r\nAllows to define the following attributes:\r\n\u003Cul\u003E\r\n  \u003Cli\u003Etitle\u003C\/li\u003E\r\n  \u003Cli\u003Eclass\u003C\/li\u003E\r\n  \u003Cli\u003Eid\u003C\/li\u003E\r\n  \u003Cli\u003Etarget\u003C\/li\u003E\r\n  \u003Cli\u003Erel\u003C\/li\u003E\r\n  \u003Cli\u003Earia-label\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EInstallation and configuration\u003C\/h3\u003E\r\n\r\n\u003Ch4\u003ECKEditor 5 (Drupal 10 \/ Drupal 11)\u003C\/h4\u003E\r\n\r\nInstall as usual then:\r\n\u003Col\u003E\r\n  \u003Cli\u003EGo to the \u0022Text formats and editors\u0022 admin page (admin\/config\/content\/formats)\u003C\/li\u003E\r\n  \u003Cli\u003EConfigure your text format\u003C\/li\u003E\r\n  \u003Cli\u003EEnable the additional attributes you want for this format in the \u0022Advanced links\u0022 tab of the \u0022CKEditor 5 plugin settings\u0022\u003C\/li\u003E\r\n  \u003Cli\u003ESave your configuration\u003C\/li\u003E\r\n\u003C\/ol\u003E\r\n\r\n\u003Ch3\u003EBranches\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ccode\u003E2.3.x\u003C\/code\u003E Support for CKEditor 45 (Drupal 10.5+ \/ Drupal 11.2+)\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ccode\u003E2.2.x\u003C\/code\u003E Support for CKEditor 44 (Drupal 10.3 \/ 10.4 \/ 11.0 \/ 11.1)\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003ERecommended\u003C\/h2\u003E\r\n\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/editor_file\u0022\u003EEditor File upload\u003C\/a\u003E to be able to create link to uploaded files easily.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/linkit\u0022\u003ELinkit\u003C\/a\u003E provides an easy interface for internal and external linking with wysiwyg editors by using an autocomplete field.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/ckeditor_entity_link\u0022\u003ECKEditor Entity Link\u003C\/a\u003E is an alternative to Linkit that also provides an easy interface for internal linking within the editor.\u003C\/li\u003E\r\n\u003Cul\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EEnhances the link Dialog in CKEditor.\u003Cbr\u003E\nAllows to define the following attributes:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003Etitle\u003C\/li\u003E\n\u003Cli\u003Eclass\u003C\/li\u003E\n\u003Cli\u003Eid\u003C\/li\u003E\n\u003Cli\u003Etarget\u003C\/li\u003E\n\u003Cli\u003Erel\u003C\/li\u003E\n\u003Cli\u003Earia-label\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022installation-and-configuration\u0022\u003EInstallation and configuration\u003C\/h3\u003E\n\u003Ch4 id=\u0022ckeditor-5-drupal-10-drupal-11\u0022\u003ECKEditor 5 (Drupal 10 \/ Drupal 11)\u003C\/h4\u003E\n\u003Cp\u003EInstall as usual then:\u003C\/p\u003E\n\u003Col\u003E\n\u003Cli\u003EGo to the \u0022Text formats and editors\u0022 admin page (admin\/config\/content\/formats)\u003C\/li\u003E\n\u003Cli\u003EConfigure your text format\u003C\/li\u003E\n\u003Cli\u003EEnable the additional attributes you want for this format in the \u0022Advanced links\u0022 tab of the \u0022CKEditor 5 plugin settings\u0022\u003C\/li\u003E\n\u003Cli\u003ESave your configuration\u003C\/li\u003E\n\u003C\/ol\u003E\n\u003Ch3 id=\u0022branches\u0022\u003EBranches\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ccode\u003E2.3.x\u003C\/code\u003E Support for CKEditor 45 (Drupal 10.5+ \/ Drupal 11.2+)\u003C\/li\u003E\n\u003Cli\u003E\u003Ccode\u003E2.2.x\u003C\/code\u003E Support for CKEditor 44 (Drupal 10.3 \/ 10.4 \/ 11.0 \/ 11.1)\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022recommended\u0022\u003ERecommended\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/editor_file\u0022 rel=\u0022nofollow\u0022\u003EEditor File upload\u003C\/a\u003E to be able to create link to uploaded files easily.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/drupal.org\/project\/linkit\u0022 rel=\u0022nofollow\u0022\u003ELinkit\u003C\/a\u003E provides an easy interface for internal and external linking with wysiwyg editors by using an autocomplete field.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/ckeditor_entity_link\u0022 rel=\u0022nofollow\u0022\u003ECKEditor Entity Link\u003C\/a\u003E is an alternative to Linkit that also provides an easy interface for internal linking within the editor.\u003C\/li\u003E\n\u003Cul\u003E\n\u003C\/ul\u003E\u003C\/ul\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Enhances the link Dialog in CKEditor by allowing the following attributes to be defined: title, class, id, target, rel and more."},"field_active_installs":"{\u00228.x-1.x\u0022:9430,\u00222.0.x\u0022:1684,\u00222.x\u0022:8,\u00222.1.x\u0022:1908,\u00222.2.x\u0022:30264,\u00222.3.x\u0022:72007}","field_active_installs_total":115301,"field_composer_namespace":"drupal\/editor_advanced_link","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/editor_advanced_link\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"editor_advanced_link","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"1327c4bb-07c0-44cb-8c05-0b43343cd1a3","meta":{"drupal_internal__target_id":931394}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/uid?resourceVersion=id%3A20036877"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/relationships\/uid?resourceVersion=id%3A20036877"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/field_development_status?resourceVersion=id%3A20036877"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/relationships\/field_development_status?resourceVersion=id%3A20036877"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/field_maintenance_status?resourceVersion=id%3A20036877"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/relationships\/field_maintenance_status?resourceVersion=id%3A20036877"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/field_module_categories?resourceVersion=id%3A20036877"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/relationships\/field_module_categories?resourceVersion=id%3A20036877"}}},"field_project_images":{"data":[{"type":"file--file","id":"1d280e76-f990-417a-ab61-332bdf85aed8","meta":{"alt":"Enriched link configuration screenshot","title":null,"width":1786,"height":1028,"drupal_internal__target_id":1440232}},{"type":"file--file","id":"3fc238f6-61a2-420f-b55e-6e68e848d87d","meta":{"alt":"Enriched link dialog screenshot","title":null,"width":802,"height":1274,"drupal_internal__target_id":1440233}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/field_project_images?resourceVersion=id%3A20036877"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/8132e3dd-d0c9-4906-8f0b-0a563091e8b7\/relationships\/field_project_images?resourceVersion=id%3A20036877"}}}}},{"type":"node--project_module","id":"db7348cf-e07f-41f2-b403-98257ba5b3b2","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2?resourceVersion=id%3A20050276"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":3137306,"status":true,"title":"jQuery UI Datepicker","created":"2020-05-17T02:51:53+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"\u003Cp\u003EDrupal 8 includes jQuery UI in core, however it is no longer actively\r\nmaintained and has been marked deprecated. This module provides the\r\njQuery UI Datepicker library for any themes and modules that require it.\u003C\/p\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003EjQuery UI \u003Ca href=\u0022https:\/\/jqueryui.com\/datepicker\/\u0022\u003EDatepicker documentation\u003C\/a\u003E\u003C\/li\u003E\r\n\u003Cli\u003EjQuery UI \u003Ca href=\u0022https:\/\/api.jqueryui.com\/datepicker\/\u0022\u003EDatepicker API documentation\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\u003Cp\u003E\u003Cstrong\u003ECaution\u003C\/strong\u003E: jQuery UI was deprecated from core because it is no longer\r\nactively maintained, and has been marked \u201cEnd of Life\u201d by the OpenJS\r\nFoundation. It is not recommended to depend on jQuery UI in your own\r\ncode, and instead to select a replacement solution as soon as possible.\u003C\/p\u003E\r\n\u003Ch2 id=\u0022instructions\u0022\u003EInstructions\u003C\/h2\u003E\r\n\u003Col\u003E\r\n\u003Cli\u003EInstall this module and the jQuery UI module.\u003C\/li\u003E\r\n\u003Cli\u003EChange any references in your theme or module from\r\n\u003Ccode\u003Ecore\/jquery.ui.datepicker\u003C\/code\u003E to \u003Ccode\u003Ejquery_ui_datepicker\/datepicker\u003C\/code\u003E\u003C\/li\u003E\r\n\u003C\/ol\u003E\r\n\u003Ch3 id=\u0022requirements\u0022\u003ERequirements\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui\u0022\u003EjQuery UI\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\u003Ch3 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h3\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_accordion\u0022\u003EjQuery UI Accordion\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_autocomplete\u0022\u003EjQuery UI Autocomplete\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_button\u0022\u003EjQuery UI Button\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_checkboxradio\u0022\u003EjQuery UI Checkboxradio\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_controlgroup\u0022\u003EjQuery UI Controlgroup\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_dialog\u0022\u003EjQuery UI Dialog\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_draggable\u0022\u003EjQuery UI Draggable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_droppable\u0022\u003EjQuery UI Droppable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_effects\u0022\u003EjQuery UI Effects\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_menu\u0022\u003EjQuery UI Menu\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_progressbar\u0022\u003EjQuery UI Progressbar\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_resizable\u0022\u003EjQuery UI Resizable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectable\u0022\u003EjQuery UI Selectable\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectmenu\u0022\u003EjQuery UI Selectmenu\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_slider\u0022\u003EjQuery UI Slider\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_spinner\u0022\u003EjQuery UI Spinner\u003C\/a\u003E\u003C\/li\u003E\r\n    \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_tooltip\u0022\u003EjQuery UI Tooltip\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cp\u003EDrupal 8 includes jQuery UI in core, however it is no longer actively\u003Cbr\u003E\nmaintained and has been marked deprecated. This module provides the\u003Cbr\u003E\njQuery UI Datepicker library for any themes and modules that require it.\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EjQuery UI \u003Ca href=\u0022https:\/\/jqueryui.com\/datepicker\/\u0022 rel=\u0022nofollow\u0022\u003EDatepicker documentation\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003EjQuery UI \u003Ca href=\u0022https:\/\/api.jqueryui.com\/datepicker\/\u0022 rel=\u0022nofollow\u0022\u003EDatepicker API documentation\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003E\u003Cstrong\u003ECaution\u003C\/strong\u003E: jQuery UI was deprecated from core because it is no longer\u003Cbr\u003E\nactively maintained, and has been marked \u201cEnd of Life\u201d by the OpenJS\u003Cbr\u003E\nFoundation. It is not recommended to depend on jQuery UI in your own\u003Cbr\u003E\ncode, and instead to select a replacement solution as soon as possible.\u003C\/p\u003E\n\u003Ch2 id=\u0022instructions\u0022\u003EInstructions\u003C\/h2\u003E\n\u003Col\u003E\n\u003Cli\u003EInstall this module and the jQuery UI module.\u003C\/li\u003E\n\u003Cli\u003EChange any references in your theme or module from\u003Cbr\u003E\n\u003Ccode\u003Ecore\/jquery.ui.datepicker\u003C\/code\u003E to \u003Ccode\u003Ejquery_ui_datepicker\/datepicker\u003C\/code\u003E\u003C\/li\u003E\n\u003C\/ol\u003E\n\u003Ch3 id=\u0022requirements\u0022\u003ERequirements\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h3\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_accordion\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Accordion\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_autocomplete\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Autocomplete\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_button\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Button\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_checkboxradio\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Checkboxradio\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_controlgroup\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Controlgroup\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_dialog\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Dialog\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_draggable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Draggable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_droppable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Droppable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_effects\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Effects\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_menu\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Menu\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_progressbar\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Progressbar\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_resizable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Resizable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectable\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Selectable\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_selectmenu\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Selectmenu\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_slider\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Slider\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_spinner\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Spinner\u003C\/a\u003E\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/jquery_ui_tooltip\u0022 rel=\u0022nofollow\u0022\u003EjQuery UI Tooltip\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E","summary":""},"field_active_installs":"{\u00228.x-1.x\u0022:18302,\u00222.x\u0022:11,\u00222.0.x\u0022:11822,\u00222.1.x\u0022:79269}","field_active_installs_total":109404,"field_composer_namespace":"drupal\/jquery_ui_datepicker","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":null,"field_project_has_releases":true,"field_project_machine_name":"jquery_ui_datepicker","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0","meta":{"drupal_internal__target_id":371407}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/uid?resourceVersion=id%3A20050276"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/relationships\/uid?resourceVersion=id%3A20050276"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/field_development_status?resourceVersion=id%3A20050276"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/relationships\/field_development_status?resourceVersion=id%3A20050276"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/field_maintenance_status?resourceVersion=id%3A20050276"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/relationships\/field_maintenance_status?resourceVersion=id%3A20050276"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","meta":{"drupal_internal__target_id":189}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/field_module_categories?resourceVersion=id%3A20050276"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/relationships\/field_module_categories?resourceVersion=id%3A20050276"}}},"field_project_images":{"data":[{"type":"file--file","id":"0605078a-a0e4-4487-b549-43557feeb529","meta":{"alt":"calendar accompanied by jquery ui logo","title":null,"width":512,"height":512,"drupal_internal__target_id":34419}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/field_project_images?resourceVersion=id%3A20050276"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/db7348cf-e07f-41f2-b403-98257ba5b3b2\/relationships\/field_project_images?resourceVersion=id%3A20050276"}}}}},{"type":"node--project_module","id":"d374213e-20cb-48c5-8505-b18b4f53cce5","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5?resourceVersion=id%3A20033992"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":2421989,"status":true,"title":"Address","created":"2015-02-07T13:51:38+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Provides functionality for storing, validating and displaying international postal addresses.\r\n\r\nThe Drupal 8 heir to the \u003Ca href=\u0022https:\/\/drupal.org\/project\/addressfield\u0022\u003Eaddressfield\u003C\/a\u003E module, powered by the \u003Ca href=\u0022https:\/\/github.com\/commerceguys\/addressing\u0022\u003Ecommerceguys\/addressing\u003C\/a\u003E  library.\r\n\r\n\u003Ch2\u003EFeatures:\u003C\/h2\u003E\r\n\u003Cul\u003E\r\n\u003Cli\u003EAddress field type and form element\u003C\/li\u003E\r\n\u003Cli\u003ECountry field type and form element\u003C\/li\u003E\r\n\u003Cli\u003EZone field type and form element\u003C\/li\u003E\r\n\u003Cli\u003EAddress formats for 200 countries\u003C\/li\u003E\r\n\u003Cli\u003ESubdivisions (administrative areas, localities, dependent localities) for 60 countries\u003C\/li\u003E\r\n\u003Cli\u003ESubdivision translations for all of the parent country\u0027s (i.e Canada, Switzerland) official languages.\u003C\/li\u003E\r\n\u003Cli\u003ECountry list with translations for over 200 locales, provided by \u003Ca href=\u0022http:\/\/cldr.unicode.org\/\u0022\u003ECLDR\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E \r\n\r\nZones are territorial groupings often used for shipping or tax purposes. They can match countries, subdivisions (states\/provinces\/municipalities), postal codes. For example: \u0022California and Nevada\u0022, \u0022France and Monaco\u0022, \u0022Germany and a set of Austrian postal codes\u0022.\r\n\r\n\u003Ch2\u003EAddress data model\u003C\/h2\u003E\r\n\r\nEach address can have the following properties:\r\n\u003Cul\u003E\r\n\u003Cli\u003EGiven name (First name)\u003C\/li\u003E\r\n\u003Cli\u003EAdditional name (Middle name \/ Patronymic)\u003C\/li\u003E\r\n\u003Cli\u003EFamily name (Last name)\u003C\/li\u003E\r\n\u003Cli\u003EOrganization\u003C\/li\u003E\r\n\u003Cli\u003EAddress line 1\u003C\/li\u003E\r\n\u003Cli\u003EAddress line 2\u003C\/li\u003E\r\n\u003Cli\u003EAddress line 3 (2.0.x only)\u003C\/li\u003E\r\n\u003Cli\u003EPostal code\u003C\/li\u003E\r\n\u003Cli\u003ESorting code\u003C\/li\u003E\r\n\u003Cli\u003EDependent Locality (Neighborhood \/ Suburb)\u003C\/li\u003E\r\n\u003Cli\u003ELocality (City)\u003C\/li\u003E\r\n\u003Cli\u003EAdministrative area (State \/ Province)\u003C\/li\u003E\r\n\u003Cli\u003ECountry\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\nProperty names follow the OASIS \u003Ca href=\u0022https:\/\/www.oasis-open.org\/committees\/ciq\/download.shtml\u0022\u003EeXtensible Address Language (xAL)\u003C\/a\u003E standard.\r\n\r\n\u003Ch2\u003EInstallation\u003C\/h2\u003E\r\nSince the module requires an external library, Composer or Ludwig must be used.\r\n\r\n\u003Ch3\u003EComposer\u003C\/h3\u003E\r\nIf your site is \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2718229\u0022\u003Emanaged via Composer\u003C\/a\u003E, use Composer to download the module, which will also download the required library:\r\n\u003Ccode\u003E\r\ncomposer require \u0022drupal\/address ^2.0\u0022\r\n\u003C\/code\u003E\r\n^2.0 downloads the latest release, use 2.0.x-dev to get the -dev release instead.\r\nUse \u003Ccode\u003Ecomposer update drupal\/address --with-dependencies\u003C\/code\u003E to update to a new release.\r\n\r\n\u003Ch3\u003ELudwig\u003C\/h3\u003E\r\nOtherwise, use \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/ludwig\u0022\u003ELudwig\u003C\/a\u003E which will allow you to manage the required libraries without Composer:\r\n\r\n\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/ludwig\/installation-and-usage\u0022\u003ELudwig Installation and Usage\u003C\/a\u003E\r\n\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/ludwig\/maintenance-of-ludwig-managed-modules\u0022\u003EMaintenance of Ludwig managed modules\u003C\/a\u003E\r\n\r\nNote that Composer is recommended whenever possible.\r\n","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EProvides functionality for storing, validating and displaying international postal addresses.\u003C\/p\u003E\n\u003Cp\u003EThe Drupal 8 heir to the \u003Ca href=\u0022https:\/\/drupal.org\/project\/addressfield\u0022 rel=\u0022nofollow\u0022\u003Eaddressfield\u003C\/a\u003E module, powered by the \u003Ca href=\u0022https:\/\/github.com\/commerceguys\/addressing\u0022 rel=\u0022nofollow\u0022\u003Ecommerceguys\/addressing\u003C\/a\u003E  library.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022features\u0022\u003EFeatures:\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003EAddress field type and form element\u003C\/li\u003E\n\u003Cli\u003ECountry field type and form element\u003C\/li\u003E\n\u003Cli\u003EZone field type and form element\u003C\/li\u003E\n\u003Cli\u003EAddress formats for 200 countries\u003C\/li\u003E\n\u003Cli\u003ESubdivisions (administrative areas, localities, dependent localities) for 60 countries\u003C\/li\u003E\n\u003Cli\u003ESubdivision translations for all of the parent country\u0027s (i.e Canada, Switzerland) official languages.\u003C\/li\u003E\n\u003Cli\u003ECountry list with translations for over 200 locales, provided by \u003Ca href=\u0022http:\/\/cldr.unicode.org\/\u0022 rel=\u0022nofollow\u0022\u003ECLDR\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EZones are territorial groupings often used for shipping or tax purposes. They can match countries, subdivisions (states\/provinces\/municipalities), postal codes. For example: \u0022California and Nevada\u0022, \u0022France and Monaco\u0022, \u0022Germany and a set of Austrian postal codes\u0022.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022address-data-model\u0022\u003EAddress data model\u003C\/h2\u003E\n\u003Cp\u003EEach address can have the following properties:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003EGiven name (First name)\u003C\/li\u003E\n\u003Cli\u003EAdditional name (Middle name \/ Patronymic)\u003C\/li\u003E\n\u003Cli\u003EFamily name (Last name)\u003C\/li\u003E\n\u003Cli\u003EOrganization\u003C\/li\u003E\n\u003Cli\u003EAddress line 1\u003C\/li\u003E\n\u003Cli\u003EAddress line 2\u003C\/li\u003E\n\u003Cli\u003EAddress line 3 (2.0.x only)\u003C\/li\u003E\n\u003Cli\u003EPostal code\u003C\/li\u003E\n\u003Cli\u003ESorting code\u003C\/li\u003E\n\u003Cli\u003EDependent Locality (Neighborhood \/ Suburb)\u003C\/li\u003E\n\u003Cli\u003ELocality (City)\u003C\/li\u003E\n\u003Cli\u003EAdministrative area (State \/ Province)\u003C\/li\u003E\n\u003Cli\u003ECountry\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003EProperty names follow the OASIS \u003Ca href=\u0022https:\/\/www.oasis-open.org\/committees\/ciq\/download.shtml\u0022 rel=\u0022nofollow\u0022\u003EeXtensible Address Language (xAL)\u003C\/a\u003E standard.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022installation\u0022\u003EInstallation\u003C\/h2\u003E\n\u003Cp\u003ESince the module requires an external library, Composer or Ludwig must be used.\u003C\/p\u003E\n\u003Ch3 id=\u0022composer\u0022\u003EComposer\u003C\/h3\u003E\n\u003Cp\u003EIf your site is \u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2718229\u0022 rel=\u0022nofollow\u0022\u003Emanaged via Composer\u003C\/a\u003E, use Composer to download the module, which will also download the required library:\u003Cbr\u003E\n\u003Ccode\u003E\u003Cbr\u003E\ncomposer require \u0022drupal\/address ^2.0\u0022\u003Cbr\u003E\n\u003C\/code\u003E\u003Cbr\u003E\n^2.0 downloads the latest release, use 2.0.x-dev to get the -dev release instead.\u003Cbr\u003E\nUse \u003Ccode\u003Ecomposer update drupal\/address --with-dependencies\u003C\/code\u003E to update to a new release.\u003C\/p\u003E\n\u003Ch3 id=\u0022ludwig\u0022\u003ELudwig\u003C\/h3\u003E\n\u003Cp\u003EOtherwise, use \u003Ca href=\u0022https:\/\/www.drupal.org\/project\/ludwig\u0022 rel=\u0022nofollow\u0022\u003ELudwig\u003C\/a\u003E which will allow you to manage the required libraries without Composer:\u003C\/p\u003E\n\u003Cp\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/ludwig\/installation-and-usage\u0022 rel=\u0022nofollow\u0022\u003ELudwig Installation and Usage\u003C\/a\u003E\u003Cbr\u003E\n\u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/ludwig\/maintenance-of-ludwig-managed-modules\u0022 rel=\u0022nofollow\u0022\u003EMaintenance of Ludwig managed modules\u003C\/a\u003E\u003C\/p\u003E\n\u003Cp\u003ENote that Composer is recommended whenever possible.\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Provides functionality for storing, validating and displaying international postal addresses."},"field_active_installs":"{\u00228.x-1.x\u0022:33509,\u00222.0.x\u0022:74494,\u00222.x\u0022:32,\u00222.1.x\u0022:24}","field_active_installs_total":108059,"field_composer_namespace":"drupal\/address","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/address\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"address","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"45dce456-4ddf-4269-9cd4-2e46bb0760ed","meta":{"drupal_internal__target_id":3661446}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/uid?resourceVersion=id%3A20033992"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/relationships\/uid?resourceVersion=id%3A20033992"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/field_development_status?resourceVersion=id%3A20033992"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/relationships\/field_development_status?resourceVersion=id%3A20033992"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/field_maintenance_status?resourceVersion=id%3A20033992"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/relationships\/field_maintenance_status?resourceVersion=id%3A20033992"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"754c04cb-6da2-42ba-9032-d64307f68f45","meta":{"drupal_internal__target_id":188}},{"type":"taxonomy_term--module_categories","id":"dcb48e9f-6afa-4842-8ef6-44b90b083fcc","meta":{"drupal_internal__target_id":200}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/field_module_categories?resourceVersion=id%3A20033992"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/relationships\/field_module_categories?resourceVersion=id%3A20033992"}}},"field_project_images":{"data":[{"type":"file--file","id":"e410d0c3-5d56-48aa-a88c-9a43f9582908","meta":{"alt":"Envelope with a Druplicon stamp and lines for addresses","title":null,"width":512,"height":512,"drupal_internal__target_id":36482}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/field_project_images?resourceVersion=id%3A20033992"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/d374213e-20cb-48c5-8505-b18b4f53cce5\/relationships\/field_project_images?resourceVersion=id%3A20033992"}}}}},{"type":"node--project_module","id":"127fd4dc-e674-41ab-8815-1980c81703ba","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba?resourceVersion=id%3A20015584"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":1232556,"status":true,"title":"Honeypot","created":"2011-07-28T15:41:54+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Honeypot uses both the honeypot and timestamp methods of deterring spam bots from completing forms on your Drupal site (\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/blogs\/jeff-geerling\/introducing-honeypot-form-spam\u0022\u003Eread more here\u003C\/a\u003E). These methods are effective against many spam bots, and are not as intrusive as CAPTCHAs or other methods which \u003Ca href=\u0022https:\/\/www.youtube.com\/watch?v=FPOezLL398U\u0022\u003Epunish the user\u003C\/a\u003E [YouTube].\r\n\r\nThe module currently supports enabling for all forms on the site, or particular forms like user registration or password reset forms, webforms, contact forms, node forms, and comment forms.\r\n\r\n\u003Ch2\u003EConfiguration\u003C\/h2\u003E\r\n\r\nAll settings for this module are on the Honeypot configuration page, under the Configuration section, in the Content authoring settings. You can visit the configuration page directly at \u003Ccode\u003E\/admin\/config\/content\/honeypot\u003C\/code\u003E. Read more about what all the settings mean in the \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/honeypot\u0022\u003EHoneypot documentation\u003C\/a\u003E.\r\n\r\n\u003Ch2\u003EUse in Your Own Forms and Customizations\u003C\/h2\u003E\r\n\r\nIf you want to add honeypot to your own forms, or to any form through your own module\u0027s hook_form_alter\u0027s, you can simply place the following function call inside your form builder function (or inside a \u003Ccode\u003Ehook_form_alter()\u003C\/code\u003E):\r\n\u003C?php\r\n  \\Drupal::service(\u0027honeypot\u0027)-\u003EaddFormProtection($form, $form_state, [\u0027honeypot\u0027, \u0027time_restriction\u0027]);\r\n?\u003E\r\n\r\nNote that you can enable or disable either the honeypot field, or the time restriction on the form by including or not including the option in the array.\r\n\r\nYou can also use \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/honeypot\/-\/blob\/2.1.x\/honeypot.api.php\u0022\u003EHoneypot\u0027s API\u003C\/a\u003E to modify the time delay for forms, add or remove protections for certain forms, etc.\r\n\r\n\u003Ch2\u003ESuccess Stories\u003C\/h2\u003E\r\n\r\nMany people have reported dramatic reductions in spam when using this module; some of their stories can be found here: \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/honeypot\/honeypot-success-stories\u0022\u003EHoneypot success stories\u003C\/a\u003E.\r\n\r\n\u003Ch2\u003EFurther Reading\u003C\/h2\u003E\r\n\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/articles\/web-design\/2011\/preventing-form-spam\u0022\u003EPreventing Form Spam\u003C\/a\u003E - article about different spam prevention techniques.\u003C\/li\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/blogs\/jeff-geerling\/introducing-honeypot-form-spam\u0022\u003EIntroducing the Honeypot form spam protection module for Drupal\u003C\/a\u003E\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch2\u003ERelated modules\u003C\/h2\u003E\r\n\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/honeypot_entityform\u0022\u003EHoneypot Entityform\u003C\/a\u003E - Adds entityform integration\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch3\u003EAlternative modules\u003C\/h3\u003E\r\n\r\nThere are many spam-protection modules on drupal.org, some of which have more or less robust methods of dealing with form spam. Some of the most used and recommended include:\r\n\r\n\u003Cul\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/captcha\u0022\u003ECAPTCHA\u003C\/a\u003E - A simple image-based CAPTCHA builder.\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/recaptcha\u0022\u003EreCAPTCHA\u003C\/a\u003E - Implements \u003Ca href=\u0022http:\/\/www.google.com\/recaptcha\u0022\u003EreCAPTCHA\u003C\/a\u003E for image-based CAPTCHAs.\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/antibot\u0022\u003EAntiBot\u003C\/a\u003E A JavaScript based strategy for eliminating form submissions from bots.\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/botcha\u0022\u003EBOTCHA\u003C\/a\u003E - (Drupal 7) Has many different bot-defeating recipes.\u003C\/li\u003E\r\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/hidden_captcha\u0022\u003EHidden CAPTCHA\u003C\/a\u003E - (Drupal 7) Similar to this module in it\u0027s effectiveness.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Cem\u003EModule created by \u003Ca href=\u0022https:\/\/www.jeffgeerling.com\u0022\u003EJeff Geerling\u003C\/a\u003E\u003C\/em\u003E","format":"1","processed":"\u003Cdiv class=\u0022toc-filter\u0022\u003E\u003Cp\u003EHoneypot uses both the honeypot and timestamp methods of deterring spam bots from completing forms on your Drupal site (\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/blogs\/jeff-geerling\/introducing-honeypot-form-spam\u0022 rel=\u0022nofollow\u0022\u003Eread more here\u003C\/a\u003E). These methods are effective against many spam bots, and are not as intrusive as CAPTCHAs or other methods which \u003Ca href=\u0022https:\/\/www.youtube.com\/watch?v=FPOezLL398U\u0022 rel=\u0022nofollow\u0022\u003Epunish the user\u003C\/a\u003E [YouTube].\u003C\/p\u003E\n\u003Cp\u003EThe module currently supports enabling for all forms on the site, or particular forms like user registration or password reset forms, webforms, contact forms, node forms, and comment forms.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022configuration\u0022\u003EConfiguration\u003C\/h2\u003E\n\u003Cp\u003EAll settings for this module are on the Honeypot configuration page, under the Configuration section, in the Content authoring settings. You can visit the configuration page directly at \u003Ccode\u003E\/admin\/config\/content\/honeypot\u003C\/code\u003E. Read more about what all the settings mean in the \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/honeypot\u0022 rel=\u0022nofollow\u0022\u003EHoneypot documentation\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022use-in-your-own-forms-and-customizations\u0022\u003EUse in Your Own Forms and Customizations\u003C\/h2\u003E\n\u003Cp\u003EIf you want to add honeypot to your own forms, or to any form through your own module\u0027s hook_form_alter\u0027s, you can simply place the following function call inside your form builder function (or inside a \u003Ccode\u003Ehook_form_alter()\u003C\/code\u003E):\u003Cbr\u003E\n\u0026lt;?php\u003Cbr\u003E\n  \\Drupal::service(\u0027honeypot\u0027)-\u0026gt;addFormProtection($form, $form_state, [\u0027honeypot\u0027, \u0027time_restriction\u0027]);\u003Cbr\u003E\n?\u0026gt;\u003C\/p\u003E\n\u003Cp\u003ENote that you can enable or disable either the honeypot field, or the time restriction on the form by including or not including the option in the array.\u003C\/p\u003E\n\u003Cp\u003EYou can also use \u003Ca href=\u0022https:\/\/git.drupalcode.org\/project\/honeypot\/-\/blob\/2.1.x\/honeypot.api.php\u0022 rel=\u0022nofollow\u0022\u003EHoneypot\u0027s API\u003C\/a\u003E to modify the time delay for forms, add or remove protections for certain forms, etc.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022success-stories\u0022\u003ESuccess Stories\u003C\/h2\u003E\n\u003Cp\u003EMany people have reported dramatic reductions in spam when using this module; some of their stories can be found here: \u003Ca href=\u0022https:\/\/www.drupal.org\/docs\/contributed-modules\/honeypot\/honeypot-success-stories\u0022 rel=\u0022nofollow\u0022\u003EHoneypot success stories\u003C\/a\u003E.\u003C\/p\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022further-reading\u0022\u003EFurther Reading\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/articles\/web-design\/2011\/preventing-form-spam\u0022 rel=\u0022nofollow\u0022\u003EPreventing Form Spam\u003C\/a\u003E - article about different spam prevention techniques.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.jeffgeerling.com\/blogs\/jeff-geerling\/introducing-honeypot-form-spam\u0022 rel=\u0022nofollow\u0022\u003EIntroducing the Honeypot form spam protection module for Drupal\u003C\/a\u003E\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\n\n\u003Ch2 id=\u0022related-modules\u0022\u003ERelated modules\u003C\/h2\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/honeypot_entityform\u0022 rel=\u0022nofollow\u0022\u003EHoneypot Entityform\u003C\/a\u003E - Adds entityform integration\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch3 id=\u0022alternative-modules\u0022\u003EAlternative modules\u003C\/h3\u003E\n\u003Cp\u003EThere are many spam-protection modules on drupal.org, some of which have more or less robust methods of dealing with form spam. Some of the most used and recommended include:\u003C\/p\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/captcha\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA\u003C\/a\u003E - A simple image-based CAPTCHA builder.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/recaptcha\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E - Implements \u003Ca href=\u0022http:\/\/www.google.com\/recaptcha\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E for image-based CAPTCHAs.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/antibot\u0022 rel=\u0022nofollow\u0022\u003EAntiBot\u003C\/a\u003E A JavaScript based strategy for eliminating form submissions from bots.\n\u003C\/li\u003E\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/botcha\u0022 rel=\u0022nofollow\u0022\u003EBOTCHA\u003C\/a\u003E - (Drupal 7) Has many different bot-defeating recipes.\u003C\/li\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/hidden_captcha\u0022 rel=\u0022nofollow\u0022\u003EHidden CAPTCHA\u003C\/a\u003E - (Drupal 7) Similar to this module in it\u0027s effectiveness.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Cp\u003E\u003Cem\u003EModule created by \u003Ca href=\u0022https:\/\/www.jeffgeerling.com\u0022 rel=\u0022nofollow\u0022\u003EJeff Geerling\u003C\/a\u003E\u003C\/em\u003E\u003C\/p\u003E\u003Ca href=\u0022#top\u0022 class=\u0022back-to-top\u0022\u003EBack to top\u003C\/a\u003E\u003C\/div\u003E","summary":"Uses both the honeypot and timestamp strategies to deter spam bots from completing forms on your site. These methods are effective and not as intrusive as CAPTCHAs or other schemes that punish the user."},"field_active_installs":"{\u00228.x-1.x\u0022:4605,\u00222.0.x\u0022:3878,\u00222.1.x\u0022:24973,\u00222.2.x\u0022:74497}","field_active_installs_total":107953,"field_composer_namespace":"drupal\/honeypot","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":{"uri":"https:\/\/git.drupalcode.org\/project\/honeypot\/-\/avatar","title":null,"options":[]},"field_project_has_releases":true,"field_project_machine_name":"honeypot","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"29f3329c-3b4c-4087-b880-1a8f2ed2895f","meta":{"drupal_internal__target_id":389011}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/uid?resourceVersion=id%3A20015584"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/relationships\/uid?resourceVersion=id%3A20015584"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/field_development_status?resourceVersion=id%3A20015584"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/relationships\/field_development_status?resourceVersion=id%3A20015584"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/field_maintenance_status?resourceVersion=id%3A20015584"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/relationships\/field_maintenance_status?resourceVersion=id%3A20015584"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","meta":{"drupal_internal__target_id":187}},{"type":"taxonomy_term--module_categories","id":"8117d8b0-f171-414d-b384-0bafa81bef9f","meta":{"drupal_internal__target_id":193}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/field_module_categories?resourceVersion=id%3A20015584"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/relationships\/field_module_categories?resourceVersion=id%3A20015584"}}},"field_project_images":{"data":[{"type":"file--file","id":"59b24965-fdaf-4b3b-bbff-08fe2f357394","meta":{"alt":"Honey Pot","title":null,"width":348,"height":357,"drupal_internal__target_id":4011}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/field_project_images?resourceVersion=id%3A20015584"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/127fd4dc-e674-41ab-8815-1980c81703ba\/relationships\/field_project_images?resourceVersion=id%3A20015584"}}}}},{"type":"node--project_module","id":"544f11cb-6871-4683-a948-fc1a912f3c25","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25?resourceVersion=id%3A20006419"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__nid":147903,"status":true,"title":"reCAPTCHA","created":"2007-05-30T06:55:30+00:00","changed":"2026-04-07T05:20:02+00:00","moderation_state":null,"body":{"value":"Uses the Google \u003Ca href=\u0022https:\/\/www.google.com\/recaptcha\u0022\u003EreCAPTCHA\u003C\/a\u003E web service to improve the \u003Ca href=\u0022\/project\/captcha\u0022\u003ECAPTCHA system\u003C\/a\u003E. It is tough on bots and easy on humans.\r\n\r\nreCAPTCHA is built for security. Armed with state of the art technology, it always stays at the forefront of spam and abuse fighting trends. reCAPTCHA is on guard for you, so you can rest easy.\r\n\r\n\r\n\u003Ch5\u003EType of \u003Ca href=\u0022https:\/\/developers.google.com\/recaptcha\/docs\/versions\u0022\u003EreCAPTCHA\u003C\/a\u003E supported:\u003C\/h5\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003EreCAPTCHA V2\u003C\/li\u003E\r\n  \u003Cli\u003EInvisible reCAPTCHA (\u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2852269\u0022\u003Ework in progress\u003C\/a\u003E)\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch5\u003ERequirements\u003C\/h5\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003EreCAPTCHA depends on the \u003Ca href=\u0022\/project\/captcha\u0022\u003ECAPTCHA module\u003C\/a\u003E.\u003C\/li\u003E\r\n  \u003Cli\u003EPHP 5.5 or higher.\u003C\/li\u003E\r\n\u003C\/ul\u003E\r\n\r\n\u003Ch5\u003EAlternatives\u003C\/h5\u003E\r\n\u003Cul\u003E\r\n  \u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/friendlycaptcha\/\u0022\u003EFriendlyCaptcha\u003C\/a\u003E provides a European alternative and also has a free open source client included, if you don\u0027t need a subscription.\u003C\/li\u003E\r\n\u003C\/ul\u003E","format":"1","processed":"\u003Cp\u003EUses the Google \u003Ca href=\u0022https:\/\/www.google.com\/recaptcha\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E web service to improve the \u003Ca href=\u0022\/project\/captcha\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA system\u003C\/a\u003E. It is tough on bots and easy on humans.\u003C\/p\u003E\n\u003Cp\u003EreCAPTCHA is built for security. Armed with state of the art technology, it always stays at the forefront of spam and abuse fighting trends. reCAPTCHA is on guard for you, so you can rest easy.\u003C\/p\u003E\n\u003Ch5\u003EType of \u003Ca href=\u0022https:\/\/developers.google.com\/recaptcha\/docs\/versions\u0022 rel=\u0022nofollow\u0022\u003EreCAPTCHA\u003C\/a\u003E supported:\u003C\/h5\u003E\n\u003Cul\u003E\n\u003Cli\u003EreCAPTCHA V2\u003C\/li\u003E\n\u003Cli\u003EInvisible reCAPTCHA (\u003Ca href=\u0022https:\/\/www.drupal.org\/node\/2852269\u0022 rel=\u0022nofollow\u0022\u003Ework in progress\u003C\/a\u003E)\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch5\u003ERequirements\u003C\/h5\u003E\n\u003Cul\u003E\n\u003Cli\u003EreCAPTCHA depends on the \u003Ca href=\u0022\/project\/captcha\u0022 rel=\u0022nofollow\u0022\u003ECAPTCHA module\u003C\/a\u003E.\u003C\/li\u003E\n\u003Cli\u003EPHP 5.5 or higher.\u003C\/li\u003E\n\u003C\/ul\u003E\n\u003Ch5\u003EAlternatives\u003C\/h5\u003E\n\u003Cul\u003E\n\u003Cli\u003E\u003Ca href=\u0022https:\/\/www.drupal.org\/project\/friendlycaptcha\/\u0022 rel=\u0022nofollow\u0022\u003EFriendlyCaptcha\u003C\/a\u003E provides a European alternative and also has a free open source client included, if you don\u0027t need a subscription.\u003C\/li\u003E\n\u003C\/ul\u003E","summary":"Uses the reCAPTCHA web service to improve the CAPTCHA system. Tough on bots. Easy on humans.\r\n"},"field_active_installs":"{\u00228.x-2.x\u0022:6420,\u00228.x-3.x\u0022:97944}","field_active_installs_total":104364,"field_composer_namespace":"drupal\/recaptcha","field_core_semver_maximum":12000000,"field_core_semver_minimum":8000000,"field_issue_summary_template":null,"field_logo_url":null,"field_project_has_releases":true,"field_project_machine_name":"recaptcha","field_security_advisory_coverage":"covered"},"relationships":{"uid":{"data":{"type":"user--user","id":"ecfb8a9b-bbee-49de-98cd-129f7d4ebe17","meta":{"drupal_internal__target_id":61114}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/uid?resourceVersion=id%3A20006419"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/relationships\/uid?resourceVersion=id%3A20006419"}}},"field_development_status":{"data":{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","meta":{"drupal_internal__target_id":27274}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/field_development_status?resourceVersion=id%3A20006419"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/relationships\/field_development_status?resourceVersion=id%3A20006419"}}},"field_maintenance_status":{"data":{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","meta":{"drupal_internal__target_id":27271}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/field_maintenance_status?resourceVersion=id%3A20006419"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/relationships\/field_maintenance_status?resourceVersion=id%3A20006419"}}},"field_module_categories":{"data":[{"type":"taxonomy_term--module_categories","id":"3322058a-a158-4806-ac5b-9bcabc95edac","meta":{"drupal_internal__target_id":185}},{"type":"taxonomy_term--module_categories","id":"8117d8b0-f171-414d-b384-0bafa81bef9f","meta":{"drupal_internal__target_id":193}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/field_module_categories?resourceVersion=id%3A20006419"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/relationships\/field_module_categories?resourceVersion=id%3A20006419"}}},"field_project_images":{"data":[{"type":"file--file","id":"087fa013-5234-4fb8-bfb3-01360ef9f7d9","meta":{"alt":"reCAPTCHA 2.x widget (with JavaScript)","title":null,"width":311,"height":87,"drupal_internal__target_id":15857}},{"type":"file--file","id":"78ac1c75-38aa-4397-810f-038ec42790b6","meta":{"alt":"reCAPTCHA 2.x widget","title":null,"width":401,"height":673,"drupal_internal__target_id":16017}}],"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/field_project_images?resourceVersion=id%3A20006419"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/node\/project_module\/544f11cb-6871-4683-a948-fc1a912f3c25\/relationships\/field_project_images?resourceVersion=id%3A20006419"}}}}}],"included":[{"type":"taxonomy_term--module_categories","id":"81212413-80b0-44d6-84fb-9078baa7ab25","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/81212413-80b0-44d6-84fb-9078baa7ab25?resourceVersion=id%3A198"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/81212413-80b0-44d6-84fb-9078baa7ab25?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Automation","drupal_internal__tid":198,"status":true,"description":{"value":"Enable the site to initiate automated actions from conditions, events, or defined schedules.","format":"1","processed":"\u003Cp\u003EEnable the site to initiate automated actions from conditions, events, or defined schedules.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"086cebcf-200f-4c34-886e-f9921919b292","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/086cebcf-200f-4c34-886e-f9921919b292?resourceVersion=id%3A189"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/086cebcf-200f-4c34-886e-f9921919b292?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Developer tools","drupal_internal__tid":189,"status":true,"description":{"value":"Empower developers with tools that assist with developing and debugging the frontend or backend of the site.","format":"1","processed":"\u003Cp\u003EEmpower developers with tools that assist with developing and debugging the frontend or backend of the site.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"01df2105-2397-4a0e-b34c-80da1c3b1208","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/01df2105-2397-4a0e-b34c-80da1c3b1208?resourceVersion=id%3A201"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/01df2105-2397-4a0e-b34c-80da1c3b1208?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Search engine optimization (SEO)","drupal_internal__tid":201,"status":true,"description":{"value":"Manage or improve the site\u0027s search engine ranking by running audits, assessing metrics, or making the site\u2019s content and data more digestible by search engines.","format":"1","processed":"\u003Cp\u003EManage or improve the site\u0027s search engine ranking by running audits, assessing metrics, or making the site\u2019s content and data more digestible by search engines.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"abf23828-f269-4d39-8589-b731209eb154","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/abf23828-f269-4d39-8589-b731209eb154?resourceVersion=id%3A186"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/abf23828-f269-4d39-8589-b731209eb154?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Administration tools","drupal_internal__tid":186,"status":true,"description":{"value":"Empower site builders and administrators with no-code tools to setup, enhance, configure, or maintain the site.","format":"1","processed":"\u003Cp\u003EEmpower site builders and administrators with no-code tools to setup, enhance, configure, or maintain the site.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"86237004-3801-40cf-96b5-fe7d60efccb5","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/86237004-3801-40cf-96b5-fe7d60efccb5?resourceVersion=id%3A187"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/86237004-3801-40cf-96b5-fe7d60efccb5?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Content editing experience","drupal_internal__tid":187,"status":true,"description":{"value":"Enhance the editorial interface and improve the processes and workflows around creating, editing or removing content.","format":"1","processed":"\u003Cp\u003EEnhance the editorial interface and improve the processes and workflows around creating, editing or removing content.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"dcb48e9f-6afa-4842-8ef6-44b90b083fcc","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/dcb48e9f-6afa-4842-8ef6-44b90b083fcc?resourceVersion=id%3A200"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/dcb48e9f-6afa-4842-8ef6-44b90b083fcc?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Site structure","drupal_internal__tid":200,"status":true,"description":{"value":"Extend the structure of the site by way of content models, data storage, field types, and navigation, so it is more understandable to users.","format":"1","processed":"\u003Cp\u003EExtend the structure of the site by way of content models, data storage, field types, and navigation, so it is more understandable to users.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"3322058a-a158-4806-ac5b-9bcabc95edac","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/3322058a-a158-4806-ac5b-9bcabc95edac?resourceVersion=id%3A185"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/3322058a-a158-4806-ac5b-9bcabc95edac?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Integrations","drupal_internal__tid":185,"status":true,"description":{"value":"Use a third-party CSS or JS Framework, a self-hosted service like a CRM, or a third-party service with the site.","format":"1","processed":"\u003Cp\u003EUse a third-party CSS or JS Framework, a self-hosted service like a CRM, or a third-party service with the site.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"7c5db130-79b8-4130-a09c-c197333e7d13","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/7c5db130-79b8-4130-a09c-c197333e7d13?resourceVersion=id%3A190"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/7c5db130-79b8-4130-a09c-c197333e7d13?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"User engagement","drupal_internal__tid":190,"status":true,"description":{"value":"Enhance the site so that visitors can directly interact with it or among each other, enabling things like user-generated content, comments, voting, chat, or forms for data collection and interaction.","format":"1","processed":"\u003Cp\u003EEnhance the site so that visitors can directly interact with it or among each other, enabling things like user-generated content, comments, voting, chat, or forms for data collection and interaction.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"754c04cb-6da2-42ba-9032-d64307f68f45","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/754c04cb-6da2-42ba-9032-d64307f68f45?resourceVersion=id%3A188"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/754c04cb-6da2-42ba-9032-d64307f68f45?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Content display","drupal_internal__tid":188,"status":true,"description":{"value":"Configure the layout and format of content and data presented to site visitors.","format":"1","processed":"\u003Cp\u003EConfigure the layout and format of content and data presented to site visitors.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"24830916-5c07-4446-89de-960915f87bf6","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/24830916-5c07-4446-89de-960915f87bf6?resourceVersion=id%3A199"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/24830916-5c07-4446-89de-960915f87bf6?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Access control","drupal_internal__tid":199,"status":true,"description":{"value":"Grant or restrict access to content, assets, or site functionality, or extend the authentication\/login process.","format":"1","processed":"\u003Cp\u003EGrant or restrict access to content, assets, or site functionality, or extend the authentication\/login process.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"8117d8b0-f171-414d-b384-0bafa81bef9f","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/8117d8b0-f171-414d-b384-0bafa81bef9f?resourceVersion=id%3A193"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/8117d8b0-f171-414d-b384-0bafa81bef9f?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Security","drupal_internal__tid":193,"status":true,"description":{"value":"Help protect the website from attackers or bad actors, by identifying, preventing, or mitigating security vulnerabilities.","format":"1","processed":"\u003Cp\u003EHelp protect the website from attackers or bad actors, by identifying, preventing, or mitigating security vulnerabilities.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"68428c33-1db7-438d-b1b3-e23004e0982b","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/68428c33-1db7-438d-b1b3-e23004e0982b?resourceVersion=id%3A192"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/68428c33-1db7-438d-b1b3-e23004e0982b?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Media","drupal_internal__tid":192,"status":true,"description":{"value":"Enhance functionality related to media, or expand media resource types, such as images, videos, audio files, or documents.","format":"1","processed":"\u003Cp\u003EEnhance functionality related to media, or expand media resource types, such as images, videos, audio files, or documents.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"8d7b9b34-6ae2-4e9b-b3a2-f0bb3109500a","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/8d7b9b34-6ae2-4e9b-b3a2-f0bb3109500a?resourceVersion=id%3A196"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/8d7b9b34-6ae2-4e9b-b3a2-f0bb3109500a?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Site search","drupal_internal__tid":196,"status":true,"description":{"value":"Enhance functionality relating to the search of content and data on the site.","format":"1","processed":"\u003Cp\u003EEnhance functionality relating to the search of content and data on the site.\u003C\/p\u003E"}}},{"type":"taxonomy_term--module_categories","id":"3cf38e0a-d4b1-426d-9b8e-008e7a41cf8d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/3cf38e0a-d4b1-426d-9b8e-008e7a41cf8d?resourceVersion=id%3A194"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/module_categories\/3cf38e0a-d4b1-426d-9b8e-008e7a41cf8d?resourceVersion=rel%3Aworking-copy"}},"attributes":{"name":"Multilingual","drupal_internal__tid":194,"status":true,"description":{"value":"Provide tools for translation and display of text in multiple languages and support for regionalization\/localization for dates, numbers, currency, measurement, or other local contexts.","format":"1","processed":"\u003Cp\u003EProvide tools for translation and display of text in multiple languages and support for regionalization\/localization for dates, numbers, currency, measurement, or other local contexts.\u003C\/p\u003E"}}},{"type":"taxonomy_term--maintenance_status","id":"089406ad-304d-4737-80d1-2f08527ae49e","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/089406ad-304d-4737-80d1-2f08527ae49e?resourceVersion=id%3A27271"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/089406ad-304d-4737-80d1-2f08527ae49e?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__tid":27271,"status":true,"name":"Actively maintained","description":{"value":"Maintainers strive to actively monitor issues and respond in a timely manner.","format":"1","processed":"\u003Cp\u003EMaintainers strive to actively monitor issues and respond in a timely manner.\u003C\/p\u003E"}}},{"type":"taxonomy_term--maintenance_status","id":"cee844e2-68b5-489d-bafa-6a0ade2b6dfd","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/cee844e2-68b5-489d-bafa-6a0ade2b6dfd?resourceVersion=id%3A27273"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/cee844e2-68b5-489d-bafa-6a0ade2b6dfd?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__tid":27273,"status":true,"name":"Minimally maintained","description":{"value":"Maintainers monitor issues, but fast responses are not guaranteed.","format":"1","processed":"\u003Cp\u003EMaintainers monitor issues, but fast responses are not guaranteed.\u003C\/p\u003E"}}},{"type":"taxonomy_term--maintenance_status","id":"09a378d2-fd35-41f3-bff0-10d9801741a4","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/09a378d2-fd35-41f3-bff0-10d9801741a4?resourceVersion=id%3A27269"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/maintenance_status\/09a378d2-fd35-41f3-bff0-10d9801741a4?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__tid":27269,"status":true,"name":"Seeking co-maintainer(s)","description":{"value":"Maintainers are looking for help reviewing issues.","format":"1","processed":"\u003Cp\u003EMaintainers are looking for help reviewing issues.\u003C\/p\u003E"}}},{"type":"taxonomy_term--development_status","id":"e767288c-9800-4fb4-aeb8-8c311533838a","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/development_status\/e767288c-9800-4fb4-aeb8-8c311533838a?resourceVersion=id%3A27274"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/development_status\/e767288c-9800-4fb4-aeb8-8c311533838a?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__tid":27274,"status":true,"name":"Under active development","description":{"value":"This project is under active development.","format":"1","processed":"\u003Cp\u003EThis project is under active development.\u003C\/p\u003E"}}},{"type":"taxonomy_term--development_status","id":"219c1cf2-dd7f-474b-9dd5-a26643fbc699","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/development_status\/219c1cf2-dd7f-474b-9dd5-a26643fbc699?resourceVersion=id%3A27276"},"working-copy":{"href":"https:\/\/new.drupal.org\/jsonapi\/taxonomy_term\/development_status\/219c1cf2-dd7f-474b-9dd5-a26643fbc699?resourceVersion=rel%3Aworking-copy"}},"attributes":{"drupal_internal__tid":27276,"status":true,"name":"Maintenance fixes only","description":{"value":"Considered feature-complete by its maintainers.","format":"1","processed":"\u003Cp\u003EConsidered feature-complete by its maintainers.\u003C\/p\u003E"}}},{"type":"user--user","id":"1bf99aff-4392-4ce9-bf72-e80f205b62f5","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bf99aff-4392-4ce9-bf72-e80f205b62f5"}},"attributes":{"display_name":"dave reid","drupal_internal__uid":53892,"name":"dave reid","field_country":"US","field_first_name":"Dave","field_git_username":"davereid","field_last_name":"Reid"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"b3085a56-66a5-467f-be81-2f8ce2ec68fc","meta":{"alt":null,"title":null,"width":500,"height":500,"drupal_internal__target_id":19376}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bf99aff-4392-4ce9-bf72-e80f205b62f5\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bf99aff-4392-4ce9-bf72-e80f205b62f5\/relationships\/user_picture"}}}}},{"type":"user--user","id":"f649de13-0b8c-4422-90fd-33781d7ec04e","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f649de13-0b8c-4422-90fd-33781d7ec04e"}},"attributes":{"display_name":"eme","drupal_internal__uid":542492,"name":"eme","field_country":"FR","field_first_name":"Wilfrid","field_git_username":"eme","field_last_name":"Roze"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"df40ccf2-21b1-483b-ac43-dfe3a852b95e","meta":{"alt":null,"title":null,"width":683,"height":1024,"drupal_internal__target_id":161693}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f649de13-0b8c-4422-90fd-33781d7ec04e\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f649de13-0b8c-4422-90fd-33781d7ec04e\/relationships\/user_picture"}}}}},{"type":"user--user","id":"f2d46924-1ffd-4142-a0cb-41175f806046","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f2d46924-1ffd-4142-a0cb-41175f806046"}},"attributes":{"display_name":"merlinofchaos","drupal_internal__uid":26979,"name":"merlinofchaos","field_country":"US","field_first_name":"Earl","field_git_username":"merlinofchaos","field_last_name":"Miles"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"9f52474a-bcde-4c3c-a6de-95df0bd79257","meta":{"alt":null,"title":null,"width":600,"height":610,"drupal_internal__target_id":5256}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f2d46924-1ffd-4142-a0cb-41175f806046\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/f2d46924-1ffd-4142-a0cb-41175f806046\/relationships\/user_picture"}}}}},{"type":"user--user","id":"6e8de75f-6809-4565-ba55-f3feef07403d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/6e8de75f-6809-4565-ba55-f3feef07403d"}},"attributes":{"display_name":"jeroen.b","drupal_internal__uid":1853532,"name":"jeroen.b","field_country":"NL","field_first_name":"Jeroen","field_git_username":"jeroen.b","field_last_name":"Bobbeldijk"},"relationships":{"user_picture":{"data":null,"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/6e8de75f-6809-4565-ba55-f3feef07403d\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/6e8de75f-6809-4565-ba55-f3feef07403d\/relationships\/user_picture"}}}}},{"type":"user--user","id":"ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0"}},"attributes":{"display_name":"jrockowitz","drupal_internal__uid":371407,"name":"jrockowitz","field_country":"US","field_first_name":"Jacob","field_git_username":"jrockowitz","field_last_name":"Rockowitz"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"d920e38b-8128-4cee-9656-08f3495925a9","meta":{"alt":null,"title":null,"width":140,"height":140,"drupal_internal__target_id":114812}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ac31d9c9-9a4f-400f-893b-a8b4e4fb1de0\/relationships\/user_picture"}}}}},{"type":"user--user","id":"5b62a101-9140-466e-ba38-fc4964536f53","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/5b62a101-9140-466e-ba38-fc4964536f53"}},"attributes":{"display_name":"Stalski","drupal_internal__uid":322618,"name":"Stalski","field_country":"BE","field_first_name":"Jochen","field_git_username":"stalski","field_last_name":"Stals"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"93d40dad-9213-4095-b94c-5cb73c118210","meta":{"alt":null,"title":null,"width":900,"height":900,"drupal_internal__target_id":147876}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/5b62a101-9140-466e-ba38-fc4964536f53\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/5b62a101-9140-466e-ba38-fc4964536f53\/relationships\/user_picture"}}}}},{"type":"user--user","id":"efd49201-6351-4da6-a26c-67aa7ec84b7d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/efd49201-6351-4da6-a26c-67aa7ec84b7d"}},"attributes":{"display_name":"sun","drupal_internal__uid":54136,"name":"sun","field_country":"DE","field_first_name":"Daniel","field_git_username":"sun","field_last_name":"Kudwien"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"6b870f4c-9902-4d66-abb6-bf4233068bc5","meta":{"alt":null,"title":null,"width":900,"height":900,"drupal_internal__target_id":19494}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/efd49201-6351-4da6-a26c-67aa7ec84b7d\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/efd49201-6351-4da6-a26c-67aa7ec84b7d\/relationships\/user_picture"}}}}},{"type":"user--user","id":"872745bc-7439-42f1-ba40-64b168f10a85","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/872745bc-7439-42f1-ba40-64b168f10a85"}},"attributes":{"display_name":"chi","drupal_internal__uid":556138,"name":"chi","field_country":"RU","field_first_name":"Ivan","field_git_username":"Chi","field_last_name":null},"relationships":{"user_picture":{"data":{"type":"file--file","id":"dadb0cf6-ad6d-493d-8ac1-0a44fc10bc5b","meta":{"alt":null,"title":null,"width":200,"height":300,"drupal_internal__target_id":72206}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/872745bc-7439-42f1-ba40-64b168f10a85\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/872745bc-7439-42f1-ba40-64b168f10a85\/relationships\/user_picture"}}}}},{"type":"user--user","id":"c7047c8f-c3cc-4139-bee4-6561bce7eb73","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/c7047c8f-c3cc-4139-bee4-6561bce7eb73"}},"attributes":{"display_name":"wundo","drupal_internal__uid":25523,"name":"wundo","field_country":"BR","field_first_name":"Fabiano","field_git_username":"wundo","field_last_name":"Sant\u0027Ana"},"relationships":{"user_picture":{"data":null,"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/c7047c8f-c3cc-4139-bee4-6561bce7eb73\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/c7047c8f-c3cc-4139-bee4-6561bce7eb73\/relationships\/user_picture"}}}}},{"type":"user--user","id":"697a4f51-935c-4e22-9998-0b9e77f384b6","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/697a4f51-935c-4e22-9998-0b9e77f384b6"}},"attributes":{"display_name":"rlhawk","drupal_internal__uid":352283,"name":"rlhawk","field_country":"US","field_first_name":"Rick","field_git_username":"rlhawk","field_last_name":"Hawkins"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"94e66f82-0b9e-4c6f-b300-95dae42c7673","meta":{"alt":null,"title":null,"width":1024,"height":1023,"drupal_internal__target_id":150802}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/697a4f51-935c-4e22-9998-0b9e77f384b6\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/697a4f51-935c-4e22-9998-0b9e77f384b6\/relationships\/user_picture"}}}}},{"type":"user--user","id":"45aa7efc-40a7-4cd3-a412-723ef2d49285","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45aa7efc-40a7-4cd3-a412-723ef2d49285"}},"attributes":{"display_name":"Drupal Media Team","drupal_internal__uid":3260690,"name":"Drupal Media Team","field_country":null,"field_first_name":null,"field_git_username":"DrupalMedia","field_last_name":null},"relationships":{"user_picture":{"data":{"type":"file--file","id":"992629c2-134b-4da2-9434-73f839586d5b","meta":{"alt":null,"title":null,"width":261,"height":261,"drupal_internal__target_id":87132}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45aa7efc-40a7-4cd3-a412-723ef2d49285\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45aa7efc-40a7-4cd3-a412-723ef2d49285\/relationships\/user_picture"}}}}},{"type":"user--user","id":"1bdec67e-37de-4c05-90b0-a70ef5152697","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bdec67e-37de-4c05-90b0-a70ef5152697"}},"attributes":{"display_name":"drunken monkey","drupal_internal__uid":205582,"name":"drunken monkey","field_country":"AT","field_first_name":"Thomas","field_git_username":"drunkenmonkey","field_last_name":"Seidl"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"78382c03-91e4-460a-9e88-2e11c61a0192","meta":{"alt":null,"title":null,"width":250,"height":250,"drupal_internal__target_id":95403}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bdec67e-37de-4c05-90b0-a70ef5152697\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1bdec67e-37de-4c05-90b0-a70ef5152697\/relationships\/user_picture"}}}}},{"type":"user--user","id":"55b0368f-e284-450a-9b1d-63f71951fe22","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/55b0368f-e284-450a-9b1d-63f71951fe22"}},"attributes":{"display_name":"gbyte","drupal_internal__uid":2381352,"name":"gbyte","field_country":"DE","field_first_name":"Pawel","field_git_username":"gbyte.co","field_last_name":"Ginalski"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"c98e809d-9155-465e-8e84-a43c2086cb97","meta":{"alt":null,"title":null,"width":350,"height":350,"drupal_internal__target_id":84791}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/55b0368f-e284-450a-9b1d-63f71951fe22\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/55b0368f-e284-450a-9b1d-63f71951fe22\/relationships\/user_picture"}}}}},{"type":"user--user","id":"2d65edfe-729c-46f7-9c2d-b3d1b5bbe619","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/2d65edfe-729c-46f7-9c2d-b3d1b5bbe619"}},"attributes":{"display_name":"anon","drupal_internal__uid":464598,"name":"anon","field_country":"SE","field_first_name":"Emil","field_git_username":"anon","field_last_name":"Stjerneman"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"43bf80ed-f88a-45d6-9dda-d105b025890b","meta":{"alt":null,"title":null,"width":681,"height":1024,"drupal_internal__target_id":83501}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/2d65edfe-729c-46f7-9c2d-b3d1b5bbe619\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/2d65edfe-729c-46f7-9c2d-b3d1b5bbe619\/relationships\/user_picture"}}}}},{"type":"user--user","id":"45dce456-4ddf-4269-9cd4-2e46bb0760ed","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45dce456-4ddf-4269-9cd4-2e46bb0760ed"}},"attributes":{"display_name":"centarro","drupal_internal__uid":3661446,"name":"centarro","field_country":"US","field_first_name":null,"field_git_username":"centarro","field_last_name":null},"relationships":{"user_picture":{"data":{"type":"file--file","id":"6bc46d67-73f3-4c2d-be8c-4bb55ac8f7c5","meta":{"alt":null,"title":null,"width":400,"height":400,"drupal_internal__target_id":154011}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45dce456-4ddf-4269-9cd4-2e46bb0760ed\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/45dce456-4ddf-4269-9cd4-2e46bb0760ed\/relationships\/user_picture"}}}}},{"type":"user--user","id":"1327c4bb-07c0-44cb-8c05-0b43343cd1a3","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1327c4bb-07c0-44cb-8c05-0b43343cd1a3"}},"attributes":{"display_name":"duaelfr","drupal_internal__uid":931394,"name":"duaelfr","field_country":"FR","field_first_name":"Edouard","field_git_username":"DuaelFr","field_last_name":"Cunibil"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"0a06a5d4-ad98-4734-b323-db9339cda0dd","meta":{"alt":null,"title":null,"width":400,"height":500,"drupal_internal__target_id":66121}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1327c4bb-07c0-44cb-8c05-0b43343cd1a3\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/1327c4bb-07c0-44cb-8c05-0b43343cd1a3\/relationships\/user_picture"}}}}},{"type":"user--user","id":"29f3329c-3b4c-4087-b880-1a8f2ed2895f","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/29f3329c-3b4c-4087-b880-1a8f2ed2895f"}},"attributes":{"display_name":"geerlingguy","drupal_internal__uid":389011,"name":"geerlingguy","field_country":"US","field_first_name":"Jeff","field_git_username":"geerlingguy","field_last_name":"Geerling"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"8dc2d508-4e64-4125-805c-d8a5fb33cb29","meta":{"alt":null,"title":null,"width":1023,"height":1024,"drupal_internal__target_id":176061}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/29f3329c-3b4c-4087-b880-1a8f2ed2895f\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/29f3329c-3b4c-4087-b880-1a8f2ed2895f\/relationships\/user_picture"}}}}},{"type":"user--user","id":"ecfb8a9b-bbee-49de-98cd-129f7d4ebe17","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ecfb8a9b-bbee-49de-98cd-129f7d4ebe17"}},"attributes":{"display_name":"robloach","drupal_internal__uid":61114,"name":"robloach","field_country":"CA","field_first_name":"Rob","field_git_username":"robloach","field_last_name":"Loach"},"relationships":{"user_picture":{"data":{"type":"file--file","id":"520b605b-608f-4dcb-a42c-cd2cbbeb4cce","meta":{"alt":null,"title":null,"width":200,"height":200,"drupal_internal__target_id":23387}},"links":{"related":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ecfb8a9b-bbee-49de-98cd-129f7d4ebe17\/user_picture"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/user\/user\/ecfb8a9b-bbee-49de-98cd-129f7d4ebe17\/relationships\/user_picture"}}}}},{"type":"file--file","id":"ca6b21f7-76aa-4854-8279-f159be352dc2","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/ca6b21f7-76aa-4854-8279-f159be352dc2"}},"attributes":{"uri":{"value":"public:\/\/project-images\/token_01.png","url":"\/assets\/project-images\/token_01.png"}}},{"type":"file--file","id":"f9370e41-0f06-4819-9a84-b9ca51ed6e41","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/f9370e41-0f06-4819-9a84-b9ca51ed6e41"}},"attributes":{"uri":{"value":"public:\/\/project-images\/drupal8_token_browser.png","url":"\/assets\/project-images\/drupal8_token_browser.png"}}},{"type":"file--file","id":"f1f609ff-95ca-411c-a705-80f57905b642","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/f1f609ff-95ca-411c-a705-80f57905b642"}},"attributes":{"uri":{"value":"public:\/\/project-images\/Metatag | Drupal 8.png","url":"\/assets\/project-images\/Metatag%20%7C%20Drupal%208.png"}}},{"type":"file--file","id":"243188f2-63b9-4b59-b159-203e9040743d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/243188f2-63b9-4b59-b159-203e9040743d"}},"attributes":{"uri":{"value":"public:\/\/project-images\/Selection_272.png","url":"\/assets\/project-images\/Selection_272.png"}}},{"type":"file--file","id":"4bff5cef-aa9b-4867-85db-0256128ef414","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/4bff5cef-aa9b-4867-85db-0256128ef414"}},"attributes":{"uri":{"value":"public:\/\/project-images\/Selection_273.png","url":"\/assets\/project-images\/Selection_273.png"}}},{"type":"file--file","id":"f56f69fd-e1db-4f36-b185-0a9fe195a99d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/f56f69fd-e1db-4f36-b185-0a9fe195a99d"}},"attributes":{"uri":{"value":"public:\/\/project-images\/paragraph1.png","url":"\/assets\/project-images\/paragraph1.png"}}},{"type":"file--file","id":"e08368de-c1ac-4024-99b4-dae7388b73a1","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/e08368de-c1ac-4024-99b4-dae7388b73a1"}},"attributes":{"uri":{"value":"public:\/\/project-images\/paragraphs2.png","url":"\/assets\/project-images\/paragraphs2.png"}}},{"type":"file--file","id":"e9e1cd0d-8fe4-453b-9330-de2d0ccd755c","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/e9e1cd0d-8fe4-453b-9330-de2d0ccd755c"}},"attributes":{"uri":{"value":"public:\/\/project-images\/paragraphs_abstract_0.png","url":"\/assets\/project-images\/paragraphs_abstract_0.png"}}},{"type":"file--file","id":"d98fffa5-651b-4d49-9187-60ffa8741832","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/d98fffa5-651b-4d49-9187-60ffa8741832"}},"attributes":{"uri":{"value":"public:\/\/images\/fieldgroup_03.png","url":"\/assets\/images\/fieldgroup_03.png"}}},{"type":"file--file","id":"8405eab4-7661-4045-8028-f93dfa75c98c","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/8405eab4-7661-4045-8028-f93dfa75c98c"}},"attributes":{"uri":{"value":"public:\/\/images\/fieldgroup_07.png","url":"\/assets\/images\/fieldgroup_07.png"}}},{"type":"file--file","id":"f85f8174-9bc5-4b3a-b6dc-ff181d3f019b","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/f85f8174-9bc5-4b3a-b6dc-ff181d3f019b"}},"attributes":{"uri":{"value":"public:\/\/project-images\/twig-tweak-logo_3.png","url":"\/assets\/project-images\/twig-tweak-logo_3.png"}}},{"type":"file--file","id":"01777060-f8c3-44bc-84e3-46383fd85c9e","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/01777060-f8c3-44bc-84e3-46383fd85c9e"}},"attributes":{"uri":{"value":"public:\/\/project-images\/captcha.png","url":"\/assets\/project-images\/captcha.png"}}},{"type":"file--file","id":"d6c4296c-a6be-44bb-9932-2bc46ef698ba","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/d6c4296c-a6be-44bb-9932-2bc46ef698ba"}},"attributes":{"uri":{"value":"public:\/\/images\/image_captcha_example.png","url":"\/assets\/images\/image_captcha_example.png"}}},{"type":"file--file","id":"d681bbe2-89b1-40e8-95aa-20d65a39c685","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/d681bbe2-89b1-40e8-95aa-20d65a39c685"}},"attributes":{"uri":{"value":"public:\/\/project-images\/BEF-Basic-Settings.png","url":"\/assets\/project-images\/BEF-Basic-Settings.png"}}},{"type":"file--file","id":"c656b479-878c-43dc-a76f-9928edcd6fcd","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/c656b479-878c-43dc-a76f-9928edcd6fcd"}},"attributes":{"uri":{"value":"public:\/\/project-images\/BEF-Form-Settings.png","url":"\/assets\/project-images\/BEF-Form-Settings.png"}}},{"type":"file--file","id":"8525328c-d554-4d16-9250-03f84e4269ca","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/8525328c-d554-4d16-9250-03f84e4269ca"}},"attributes":{"uri":{"value":"public:\/\/project-images\/BEF-Filter-Settings.png","url":"\/assets\/project-images\/BEF-Filter-Settings.png"}}},{"type":"file--file","id":"ad73639c-9a26-4617-8877-4e5e64583277","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/ad73639c-9a26-4617-8877-4e5e64583277"}},"attributes":{"uri":{"value":"public:\/\/project-images\/logo_CROP.png","url":"\/assets\/project-images\/logo_CROP.png"}}},{"type":"file--file","id":"27598096-d0fc-4b5f-bc26-3693e6d0e4af","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/27598096-d0fc-4b5f-bc26-3693e6d0e4af"}},"attributes":{"uri":{"value":"public:\/\/images\/view_1.png","url":"\/assets\/images\/view_1.png"}}},{"type":"file--file","id":"74efd6e2-fe40-40b8-87ed-3484204a72ba","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/74efd6e2-fe40-40b8-87ed-3484204a72ba"}},"attributes":{"uri":{"value":"public:\/\/project-images\/search_with_facets_sort_autocomplete.png","url":"\/assets\/project-images\/search_with_facets_sort_autocomplete.png"}}},{"type":"file--file","id":"d73c100b-81f7-4b56-afa7-e17c741c72be","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/d73c100b-81f7-4b56-afa7-e17c741c72be"}},"attributes":{"uri":{"value":"public:\/\/project-images\/status_0.png","url":"\/assets\/project-images\/status_0.png"}}},{"type":"file--file","id":"71f70248-22b1-4e56-a5da-d690e372ca2b","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/71f70248-22b1-4e56-a5da-d690e372ca2b"}},"attributes":{"uri":{"value":"public:\/\/project-images\/inclusion.png","url":"\/assets\/project-images\/inclusion.png"}}},{"type":"file--file","id":"40db45d5-b026-4f8b-9c1a-276abe5263c6","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/40db45d5-b026-4f8b-9c1a-276abe5263c6"}},"attributes":{"uri":{"value":"public:\/\/project-images\/inclusion2.png","url":"\/assets\/project-images\/inclusion2.png"}}},{"type":"file--file","id":"c59f4e11-4add-4430-958b-23bac7b72428","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/c59f4e11-4add-4430-958b-23bac7b72428"}},"attributes":{"uri":{"value":"public:\/\/project-images\/Inline-Entity-Form.png","url":"\/assets\/project-images\/Inline-Entity-Form.png"}}},{"type":"file--file","id":"1d280e76-f990-417a-ab61-332bdf85aed8","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/1d280e76-f990-417a-ab61-332bdf85aed8"}},"attributes":{"uri":{"value":"public:\/\/project-images\/editor_advanced_link-config.png","url":"\/assets\/project-images\/editor_advanced_link-config.png"}}},{"type":"file--file","id":"3fc238f6-61a2-420f-b55e-6e68e848d87d","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/3fc238f6-61a2-420f-b55e-6e68e848d87d"}},"attributes":{"uri":{"value":"public:\/\/project-images\/editor_advanced_link-edit.png","url":"\/assets\/project-images\/editor_advanced_link-edit.png"}}},{"type":"file--file","id":"0605078a-a0e4-4487-b549-43557feeb529","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/0605078a-a0e4-4487-b549-43557feeb529"}},"attributes":{"uri":{"value":"public:\/\/project-images\/jqueryui_datepicker.png","url":"\/assets\/project-images\/jqueryui_datepicker.png"}}},{"type":"file--file","id":"e410d0c3-5d56-48aa-a88c-9a43f9582908","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/e410d0c3-5d56-48aa-a88c-9a43f9582908"}},"attributes":{"uri":{"value":"public:\/\/project-images\/address-logo-no-border.png","url":"\/assets\/project-images\/address-logo-no-border.png"}}},{"type":"file--file","id":"59b24965-fdaf-4b3b-bbff-08fe2f357394","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/59b24965-fdaf-4b3b-bbff-08fe2f357394"}},"attributes":{"uri":{"value":"public:\/\/images\/Honey-Pot.png","url":"\/assets\/images\/Honey-Pot.png"}}},{"type":"file--file","id":"087fa013-5234-4fb8-bfb3-01360ef9f7d9","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/087fa013-5234-4fb8-bfb3-01360ef9f7d9"}},"attributes":{"uri":{"value":"public:\/\/project-images\/reCAPTCHA.png","url":"\/assets\/project-images\/reCAPTCHA.png"}}},{"type":"file--file","id":"78ac1c75-38aa-4397-810f-038ec42790b6","links":{"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/file\/file\/78ac1c75-38aa-4397-810f-038ec42790b6"}},"attributes":{"uri":{"value":"public:\/\/project-images\/reCAPTCHA_images_0.png","url":"\/assets\/project-images\/reCAPTCHA_images_0.png"}}}],"meta":{"count":13717},"links":{"last":{"href":"https:\/\/new.drupal.org\/jsonapi\/index\/project_modules?filter%5Bstatus%5D=1\u0026filter%5Btype%5D=project_module\u0026filter%5Bproject_type%5D=full\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B0%5D=089406ad-304d-4737-80d1-2f08527ae49e\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B1%5D=cee844e2-68b5-489d-bafa-6a0ade2b6dfd\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B2%5D=09a378d2-fd35-41f3-bff0-10d9801741a4\u0026filter%5Bmaintenance_status_uuid%5D%5Boperator%5D=IN\u0026filter%5Bmaintenance_status_uuid%5D%5Bpath%5D=maintenance_status_uuid\u0026filter%5Bsecurity_coverage%5D%5Bvalue%5D%5B0%5D=covered\u0026filter%5Bsecurity_coverage%5D%5Boperator%5D=IN\u0026filter%5Bsecurity_coverage%5D%5Bpath%5D=security_coverage\u0026filter%5Bn_security_coverage%5D%5Bvalue%5D%5B0%5D=revoked\u0026filter%5Bn_security_coverage%5D%5Boperator%5D=NOT%20IN\u0026filter%5Bn_security_coverage%5D%5Bpath%5D=security_coverage\u0026page%5Boffset%5D=13704\u0026page%5Blimit%5D=24\u0026include=field_module_categories%2Cfield_maintenance_status%2Cfield_development_status%2Cuid%2Cfield_project_images"},"next":{"href":"https:\/\/new.drupal.org\/jsonapi\/index\/project_modules?filter%5Bstatus%5D=1\u0026filter%5Btype%5D=project_module\u0026filter%5Bproject_type%5D=full\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B0%5D=089406ad-304d-4737-80d1-2f08527ae49e\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B1%5D=cee844e2-68b5-489d-bafa-6a0ade2b6dfd\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B2%5D=09a378d2-fd35-41f3-bff0-10d9801741a4\u0026filter%5Bmaintenance_status_uuid%5D%5Boperator%5D=IN\u0026filter%5Bmaintenance_status_uuid%5D%5Bpath%5D=maintenance_status_uuid\u0026filter%5Bsecurity_coverage%5D%5Bvalue%5D%5B0%5D=covered\u0026filter%5Bsecurity_coverage%5D%5Boperator%5D=IN\u0026filter%5Bsecurity_coverage%5D%5Bpath%5D=security_coverage\u0026filter%5Bn_security_coverage%5D%5Bvalue%5D%5B0%5D=revoked\u0026filter%5Bn_security_coverage%5D%5Boperator%5D=NOT%20IN\u0026filter%5Bn_security_coverage%5D%5Bpath%5D=security_coverage\u0026page%5Boffset%5D=24\u0026page%5Blimit%5D=24\u0026include=field_module_categories%2Cfield_maintenance_status%2Cfield_development_status%2Cuid%2Cfield_project_images"},"self":{"href":"https:\/\/new.drupal.org\/jsonapi\/index\/project_modules?filter%5Bstatus%5D=1\u0026filter%5Btype%5D=project_module\u0026filter%5Bproject_type%5D=full\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B0%5D=089406ad-304d-4737-80d1-2f08527ae49e\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B1%5D=cee844e2-68b5-489d-bafa-6a0ade2b6dfd\u0026filter%5Bmaintenance_status_uuid%5D%5Bvalue%5D%5B2%5D=09a378d2-fd35-41f3-bff0-10d9801741a4\u0026filter%5Bmaintenance_status_uuid%5D%5Boperator%5D=IN\u0026filter%5Bmaintenance_status_uuid%5D%5Bpath%5D=maintenance_status_uuid\u0026filter%5Bsecurity_coverage%5D%5Bvalue%5D%5B0%5D=covered\u0026filter%5Bsecurity_coverage%5D%5Boperator%5D=IN\u0026filter%5Bsecurity_coverage%5D%5Bpath%5D=security_coverage\u0026filter%5Bn_security_coverage%5D%5Bvalue%5D%5B0%5D=revoked\u0026filter%5Bn_security_coverage%5D%5Boperator%5D=NOT%20IN\u0026filter%5Bn_security_coverage%5D%5Bpath%5D=security_coverage\u0026include=field_module_categories%2Cfield_maintenance_status%2Cfield_development_status%2Cuid%2Cfield_project_images\u0026page%5Blimit%5D=24\u0026page%5Boffset%5D=0"}}}