Why choose Drupal as the foundation for your developer portal?

In our previous blog post we discussed the advantages of when to use a content management system (CMS) versus a static site generator (SSG). In this article we outline the elements of why Drupal is a good candidate for building your developer portal and why we use it as the base for our SaaS product. Drupal 9 is the current version of Drupal. To learn more about migrating Drupal 7 sites or upgrading a Drupal 8 site to Drupal 9 see DevPortal Migration.

Community of Developers

Drupal is supported by a community of dedicated contributors who continually innovate to stretch its capabilities both in terms of functionality as a content management system and in terms of usability by developers, site administrators, and users. For years the community has had a focus on building a product that can be recognized out of the box for its support of user experience, varied content types, complex data structures, APIs, multilingual capabilities, and mobile accessibility.

An easy life for Content Creators

Drupal makes life easy for content creators. Out of the box, Drupal provides effortless authoring with its in built WYSIWYG editor and in place editing to create formatted content and make changes in real time. Drupal also supports adding media in the form of images, video, and audio.

Accessibility

With that same mind to putting users first, Drupal 8 introduced extensive support for standard accessibility technologies including WAI-ARIA and semantic HTML5. ARIA Live Announcements API and TabManager provide control for rich Internet applications. Drupal 8 and Drupal 9 offer the ability to manage font sizes, color contrasts, jQuery UI’s autocomplete, and modal dialogs to improve user experience. This reduces cognitive load and the chance for useless one-of-a-kind creative efforts in the name of accessibility. However, there are always more that can be done depending on your audience. Work is on-going in the Drupal community to further extend accessibility in Drupal.

Mobile First

Drupal 8 and subsequently Drupal 9 is responsive out of the box. What that means is that via its theme layer, the web page will resize and align to various screen sizes and formats. Drupal provides a REST API to support editing content on mobile. Given the ability to pull defined content into a layout element (called “Views” in Drupal), the generated content is provided in responsive tables. This enables a high level of flexibility with respect to how and what content can be presented. HTML5 support is also available.

Built-in Web Services, build mobile apps with Drupal as the data source or even send data back to Drupal from the client. Drupal can be used as a data source, and output content as JSON or XML. You can even post data back to Drupal from the front end. Hypertext Application Language (HAL) is implemented in Drupal and makes exploitation of web service capabilities less painful.

Multilingual Support

Drupal can not only be installed in a different language, it also provides the ability to configure languages and how page languages are chosen, and support multi-language content publishing workflows.

Behind the scenes

Drupal aligns with the latest PHP standards like PSR-4, namespaces, and traits, and uses external libraries like Composer, PHPUnit, Guzzle, Zend Feed Component, and Assetic. Symfony 4 powers the Drupal backend, a lighter and faster core offers more options for modules and themes.

Drupal uses semantic versioning to more clearly communicate the presence of any bug fixes, new features or changes. New features and updates to the core are delivered every 6 months via a continuous release cycle. Configuration changes are also tracked using a version-control system. This results in a robust accountable system.

To optimize on page load speeds, Drupal caches all entities and only loads JavaScript when necessary. Once configured and enabled, caching can be completely automatic. Drupal 8 and 9 use a PHP-based theming engine called Twig, which is flexible, fast, and secure.

Headless Drupal

If you are still concerned with page load speeds or want to utilize a front end independent of Drupal themes, you can use Headless Drupal. This is where a visitor will see pages created with Javascript frameworks such as Angular.js or Backbone.js. In this case, Drupal is used as the storage for data that is then read by the framework. The normal Drupal administrative interface is still used by content creators to enter content that will appear on the website. In the same way, Headless Drupal can also be used as the data-backend for mobile applications or other digital displaces such as digital signboards.

Security

The Drupal community has a dedicated group of expert developers who act as a watchdog to keep Drupal a robust and secure CMS. The Drupal Security Team follows a mature Security Response Protocol to respond to and remediate any security issues, and to deliver regular security patches along with clear communication about the nature of those patches. As Drupal is OpenSource, the contribution to its security comes from a wider scope. For this reason Drupal has earned a reputation for being exceptionally secure as a CMS.

The Future of Drupal

Drupal 9 was released in June 2020. Drupal 9 is identical to the previous minor release of Drupal 8 (expected to be 8.9.x), except that Drupal 9 will remove deprecated code that was previously marked for deprecation. For this reason, upgrading from Drupal 8 to Drupal 9 is easy. To learn more about migrating Drupal 7 developer portals or upgrading a Drupal 8 developer portal to Drupal 9 see DevPortal Migration.

Drupal 9: Automated Deprecated Code Removal - A Proof of Concept

Drupal 9: Automated Deprecated Code Removal - A Proof of Concept introduces a new tool called Rector. We discuss possible use cases in which Rector can benefit Drupal developers - including but not limited to the automated update to Drupal 9.

Read more

Why did we choose Drupal for Pronovix's Zero Gravity Developer Portal?

Pronovix has a long history of contributions and collaborations to Drupal from when our business operated as a Drupal web agency. As outlined in this article, Drupal’s flexibility and extensibility makes it an ideal foundation for addressing the diverse requirements of developer portals and the various 3rd party systems with which they need to integrate. For this reason, we built and maintain our Zero Gravity developer portal to the latest Drupal CMS version.

We built the first Drupal 8 release of the Apigee Edge integration module and the new Apigee Edge PHP API Client in partnership with Apigee. We continue to collaborate on both projects. We also collaborated with the Drupal 7 Apigee Devportal and up until recently provided support for it. At present, we are actively working to extend, support and migrate Drupal 7 Apigee Devportals that will no longer be hosted by Apigee after May 31st, 2020.

Article updated on 7 October 2021.

Apigee Developer Portals in Drupal What is the Apigee Edge Module and how is it related to Apigee Edge Integrated Portal or to Apigee Drupal KickStart? How do I get up and running with a devportal on Drupal? What is Drupal Core, Drupal Modules, or a Drupal distribution used for?

Read more



Pronovix Industry Logo

Are you building a developer portal? Interested in a shortcut? As a devportal specialist, we’ve worked with customers from many different vertical sectors, including automotive, banking, insurance, telecommunication, technology, logistics, retail, media, and oil & energy. Talk with us to learn how our SaaS developer portal can accelerate and simplify your launch.

Read More about our Devportal Solutions Contact us



About the author

Diliny Corlosquet

Senior Business Product Manager

Diliny is a Senior Business Product Manager at Pronovix. After 20+ years working in STEM, she focuses on digital strategy and operational alignment. As an author for our content marketing strategy team she carries out research on a wide array of topics centered on developer portals. She holds master’s degrees in Chemical Engineering and Science.