Drupal News

This is all about Drupal

  • Drupal Planet

    Evolving Web: Introducing Drupal 9, the Next Evolution of a Proven Web Platform

    7 hours 58 minutes ago

    Today, we're excited to celebrate the launch of the most stable and mature version of Drupal to date. Drupal 9 is the culmination of the work of thousands of contributors around the globe, collaborating to create an innovative platform that's designed for everyone to use.

    What's really exciting about Drupal 9 is that it represents the work of 4 and a half years of steady work since Drupal 8 was released. Rather than a single cycle of new features added all at once, features have been released steadily since Drupal 8.0. And now all those features are already tested, stable, and ready-to-use.

    What Has Changed Since Drupal 8?

    Since November, 2015, there have been 8 feature releases for Drupal 8 that progressively and steadily satisfy more and more requirements for ambitious web projects. Features like Media and Layout Builder have been fully integrated into an already rich content model. This really takes Drupal to the next level compared to other options in the CMS ecosystem and means that Drupal can adapt to the digital information design needed by each individual project.

    For those who upgrade to Drupal 9, continuous improvements will continue to be added in the same way. This first release of Drupal 9 represents an upgrade to the underlying technology, but there's no radical change to how Drupal works. Upgrading is important because it means that you can keep benefiting from the innovation, while staying secure and stable.

    Why Should I Use Drupal 9?

    In broad strokes, there are 3 main reasons to use Drupal 9:

    Drupal 9 Enables Innovation

    Drupal is open source, but it's also open in that it doesn't lock you into one set of technology solutions. It can adapt to your marketing tools of choice, the devices you want to push data to, and the future use cases that are coming down the road. By simply having a strong content architecture, Drupal sites are easier to extend and build on. Features will continue to be added via regular feature releases (Drupal 9.1, 9.2, etc) so you'll benefit from improvements that are added as the web evolves.

    Drupal 9 Prioritizes Ease-of-Use

    The thing that I'm most excited about in Drupal 9 is how much easier it's going to be for content editors to use. Layout Builder provides drag-and-drop page building. The Claro theme provides a more accessible and streamlined admin interface. Content Moderation provides workflows that are actually adapted to content editors' needs. And that's what's great about Drupal's its flexibility empowers you to create an experience that's just right for your content editors. Ease-of-use and content editors experience is at the top of the list for Drupal 9 feature releases. Expect to see continuous improvement to the experience of using Drupal.

    Drupal 9 is Mature

    Drupal 9 isn't a risky proposition or bleeding edge. It's been tried and tested by not just a small set of proprietary users, but a global community of users including countless government and healthcare organizations. It's built on a solid technology stack that's been tested and optimized for use cases where security, performance, and accessibility are of the utmost priority. Its multilingual capabilities are truly built into the core, not an afterthought as with so many other content management systems.

    Open source development means that features are built and tested from the perspective of many. Our community truly takes pride in the fact that Drupal is secure, fast, and accessible. These aspects of Drupal are not an afterthought, but part of the core values of the community that are reflected in the software. It's in our culture to care about our users, and that culture stays with us in Drupal 9.

    Dive into Drupal 9!

    So since today is launch day, you have some homework to do:

    When Drupal 9.1 is released, you'll start seeing new features added and you won't want to miss out on the train to the future, so get started upgrading today.

    If you need help with your upgrade, we'd love to hear from you. And if you want to learn how to run an upgrade yourself, Evolving Web will be scheduling our first Drupal 9 Training soon. Subscribe to our Learn Drupal Newsletter to find out as soon as it's announced.

    + more awesome articles by Evolving Web

    Jacob Rockowitz: Sharing Webforms...Anywhere!!!

    18 hours 33 minutes ago

    The Webform for Drupal 8 is built upon Drupal's Form API (FAPI); the building, validating, and submission handling of a form relies on Drupal's backend code. Drupal, and most content management systems, are moving toward a decoupled approach where the backend content authoring tool is separate from the front-end presentation layer. Until now, there was no easy way to decouple a webform from Drupal's presentation layer.

    Decoupled Drupal and sharing Webforms

    A decoupled approach for the Webform module means that Drupal would handle the backend form builder and the submission processing. In contrast, the user-facing input form would be rendered using a front-end framework like Angular, React, and Vue.js. In the Drupal community, people are experimenting with decoupling webforms by exposing webform elements using a JSON schema or REST API, and then rendering the input form using Gatsby with React. The biggest limitation of this approach is recreating 80+ webforms elements with complex business logic as React native components. For me, this feels like an overwhelming challenge; it requires rebuilding Drupal's Form API and the Webform module's presentation layer from scratch. Stepping back from this challenge/problem, the goal which everyone is working towards is being about to use a webform outside of a Drupal website.

    Embedding a Webform using an iFrame

    A widespread solution to embedding external content within another website is to use an Inline Frame element ().

    In the webforms specific use case, an iframe allows a webform to be nested in any HTML page. With this approach in mind, I started to research...Read More

    Evolving Web: How to Use Alt Text and Accessible Images to Create Maximum Reach

    22 hours 43 minutes ago

    Images play an important part in media and advertising. They can be very effective in creating a mood or feeling and are great at emotionally connecting with people. Websites are no exception. However, not all users are able to see the images on a website or may need accommodations to do so. In a hyper visual world, where images and visual cues like colour are used to represent a brand, elicit emotion in consumers and create strong psychological cues, it can be easy to forget that not every client can see. This is why it's important to ensure that the thoughts and messages those visual cues communicate are still being broadcast to users who cannot see or have poor vision.

    One important way to do this is to make sure the semantic text of the website communicates the same tone and evokes the same message that the graphics and visual cues do. A second, equally important way is to ensure that any messages contained in the images are clearly communicated to users who are visually impaired. 

    Not All Users Have the Same Needs

    Users who are visually impaired do not all have the same needs. Some users might be able to see the images but cannot make out the different colours due to colour blindness. They need images with enough contrast to distinguish the different parts of the image without relying on colour. This is especially true for graphs and charts, so be sure to distinguish the components using patterns or hashing, in addition to colour. Another reason to consider contrast within your images is that you want them to be clear if printed in black and white. There is nothing worse than a logo that becomes illegible every time it's printed out in black and white. 

    Other users with poor vision are able to see and distinguish colours but need to zoom in to read the content. They need images with a high enough resolution that don't become pixelated or distorted when enlarged. This also helps ensure your website still looks good when displayed through a projector. 

    Lastly, some users cannot see images at all and need to access websites through a screen-reader. They rely on alternative (alt) text to tell them what the images represent. Describing images with alt text isn't always straightforward, so let's look at how to do this effectively. 

    How to Use Alt Text Effectively 

    Alt text allows users who cannot see and use a screen-reader to absorb the information that images provide. Even your company logo in the top-left corner should have an alt text to signal to users where they are. Since the alt text is going to be read aloud by a screen reader, be as succinct as possible and avoid numbers or symbols. A common mistake is to forget that the screen reader will already indicate that something is an image, so just write 'duck playing soccer' instead of  'image of a duck playing soccer.' There's a general guideline that each alt text should be less than 140 characters, so save the extra info for a caption, or a link to another site. 

    Alt text is also widely used by search engines (think Google Image search), so writing thoughtful descriptions will not only help accessibility, but will also drive traffic to your site. Just don't be tempted to pump your alt texts with a ton of keywords as site visitors using screen readers (and Google too) will be annoyed. 

    Generally, there are different types of images, each requiring a different alt text approach.

    1. Functional Images

    Functional images perform an action, such as opening a link. They should have alternative text that describes the action that happens when the user clicks that link. For example, "Search this page" for a magnifying glass that indicates a search function. Often, a brand logo is used as a functional image that returns users to the home page. In this case, the alternative text should indicate where the logo links to and can include the brand name as well: "Evolving Web Home."

    2. Informative Images

    Informative images convey short information or concepts that can usually be expressed in a short phrase, such as "Young children playing baseball at City Park." Sometimes, an image is used more to convey a feeling or concept. For example, a picture of an all-smiling family camping at a campground can have alternative text such as "Families love camping at The Eager Beaver's Dam Good Campsite."

    3. Complex Images

    Complex images, such as graphs or diagrams, need to have alternative text that conveys the data or same information. In this case, it's best to provide a full-text alternative to the data contained in the graph. Also, for users who have trouble distinguishing colour, always be sure to indicate different parts of a graph or chart using distinctions besides colour, such as hashing. For further explanations on how to describe different types of complex images, The Diagram Centre is a great resource. 

    4. Images Containing Text

    Images containing text should include the text included in the image in their alternative text. However, other than the logo, as a general rule avoid embedding text in images or using images as text. 

    5. Decorative Images

    " data-entity-type="file" data-entity-uuid="34acfb7e-fae1-4cd9-8160-d7edaad8ea50" src="https://evolvingweb.ca/sites/default/files/inline-images/05-decorative-images.jpg" />
    Decorative images are the final type of image. These images serve no purpose other than to just look nice. They are the one exception to always having alternative text to your images and should have no alternative text. 

    If you want further details on how to write alt text, this blog breaks it down pretty well. 

    One Minute Summary

    It might seem complicated at first, but images are one of the easier website components to make accessible. The key is to have appropriate alt text. As a quick recap, for the images themselves, make sure all images have a high enough contrast so they can be interpreted without colour and are zoomable. Next, use alt text to label them appropriately. Images that do an action should indicate the action in the alt text whereas those that simply demonstrate something should describe what they show. Images which are purely decorative should have no alt text. 

    Follow these tips and everyone will be able to enjoy your site. And if you need more guidance, join our upcoming Web Accessibility training

    + more awesome articles by Evolving Web

    Acro Media: 5 Risks to Your Business in Running End of Life Software

    22 hours 44 minutes ago

    End of life (EOL) software is a very real problem. Whether your business is using ecommerce and customer relationship management systems across multiple platforms or relying on basic scheduling and accounting software, you will at some point reach a technological expiry date.

    When a system reaches end of life, the creator/owner of the software/technology no longer delivers support services for the product. That can include technical support, hardware or software upgrades, bug fixes, security patches, or feature development. In short, the system gets abandoned by its owner. 

    Software becoming obsolete can cause all sorts of problems. Here are five risks to your business in running EOL software:

    1. Security

    End of life technology receives no security updates. No bug fixes. No patches. No monitoring. Your technology is dead in the eyes of the creator. That means your security is completely compromised, not only for the platform that is EOL, but also potentially for any others that connect to it.

    At minimum, your system can be accessed and your content or records edited, stolen, or deleted. If you have any user data, financial data, or sensitive information, you could have a major problem. The monetary and reputational cost could kill your business.

    A survey of 2,600 CIOs across the U.S. found that the number one concern was keeping systems and information secure. If you take no action on EOL systems, you are essentially condemning yourself to failure in that regard. 

    2. Maintenance

    Just because the software maker is no longer supporting the software doesn't mean you have no options for supporting it going forward. There are agencies that specialize in supporting older technology. But that support doesn’t come cheap, and integrations into other systems require even more time-consuming and expensive workarounds. 

    As a general rule, maintaining EOL software is complex and expensive. Is it really worth not moving due to fear of change?

    3. Liability

    If you hold people's information and data, you are responsible and liable for it. Using systems that are not properly supported to keep that data secure means you can be prosecuted for not complying with government or industry regulations. Fines, shutdowns, and even jail time are potential outcomes from not acting responsibly with the information you have been entrusted with. 

    4. Reliability

    If you were a taxi driver, would you willingly drive an old car that is no longer maintained and has sporadic issues? Of course not. That’s because your livelihood relies on the economics of your vehicle. 

    But that is what you are doing if you continue with EOL software. Old software is less reliable and more prone to failure. Even if you are able to find people who will work on it for you, it's going to cost a lot more money, because it takes much more time and expertise. 

    And if it connects to other systems, be prepared for much more testing time to ensure that all the variables across all systems are working properly. Because there's no guarantee that they will.

    5. Cost

    EOL software costs more, whether it’s through lost/stolen data, updating and maintaining with third parties, legal liabilities, or lost revenue from downtime or issues. 

    The sticker price on a new system can sometimes seem large. But the security gained from having well maintained and supported systems is critical. 

    One side benefit from moving from EOL software is the opportunity to review your company's entire technology stack/architecture. We often see that when going through the cost and process of moving systems: Other changes are made to improve workflows and processes. These often result in net savings for the business. So not only do they spend less, they eliminate their security risks and improve workflows.

    If you have software moving towards EOL, it's essential to look at not only replacing the single system, but also assessing your whole technology landscape for opportunities to make larger improvements.


    Ultimately, EOL technology is costly to your business in multiple ways. Most technology providers give lots of notice when one of their products is going to be unsupported. That gives you time to assess your options and determine the path you should take. 

    In some cases, it's migrating to a new version or equivalent product. In others, it’s reorganizing your company's whole technology structure and moving away from a system that was holding you back. 

    To determine if your system has reached EOL and plan for your next move, check out our End of Life Playbook.

    Specbee: Programmatically creating a block in Drupal 8 – A brief tutorial

    1 day ago
    Programmatically creating a block in Drupal 8 – A brief tutorial Suresh Prabhu 02 Jun, 2020 Top 10 best practices for designing a perfect UX for your mobile app

    Blocks are an integral part of any Drupal website. They are chunks of content that can be placed in various regions and can be easily moved around the web page. Blocks can contain simple text, forms, or some complex logic.
    The Block module is now a core module in Drupal 8 that can be enabled. Sometimes installing other core or contributed modules can make blocks available. Although these blocks can be modified to suit the layout, complete flexibility and customization can be only achieved with Custom blocks.
    We can create a custom block programmatically or via the Drupal Interface. Here, we will be creating a block programmatically and enabling it through the admin interface.

    How to Create a Custom Block in Drupal 8?

    Let us get started with creating a custom block in Drupal 8 in a few simple steps -

    1. Create a module

    To create a custom block, it is necessary to create a “.info.yml” file in modules/custom directory. Here a custom directory does not exist. You will need to create it. Create a directory named “custom” under the module directory. And under “modules/custom” create a directory called “block_example”. This directory name will be the name of the module created.
    Inside this folder that you just created, create a “.info.yml” file. Here it will be block_example.info.yml as the module name is block_example. Within this file, enter the following contents:

    After creating the folder and file with the above content, go to the dashboard and enable the module you just created. The name of the module here is Block Example.


    2. Create a Drupal Block Class

    Now to define the logic for the block, we must define the Drupal block class. We need to follow PSR-4 standard code for custom blocks. The php class of the block is placed under modules/custom/block_example/src/Plugin/Block directory. Create this folder structure and create a class named ExampleBlock.php under the Block directory.
    This file should contain:

    • Annotation metadata - This will help to identify the Block created. To know more about Annotation check Annotations-based plugins.
    • Annotation contains:
        The “id” which is a unique, machine readable ID for the custom block created.
        The “admin_label” defines the human readable name of the custom block which is displayed in the admin interface.          

    The ExampleBlock extends Blockbase class which will provide generic block configuration form, block settings, and handling of user defined block visibility settings.

    Here we are displaying a markup in the block.

    3. Enable the Block to display the content
    • After saving the file to enable the block, go to admin > Structure > Block layout.
    • Click on Place block under the region the block should be displayed. Here the block is placed in ‘Sidebar second’.
    • After clicking on Place block, search for the custom block you just created.


    • Click on Place block for the block you want to display. The configuration window opens where you can set the configuration as per requirement.

    Here the block is displayed for every user's front page. After the configuration is changed as per the requirement, click on Save block and come back to the site.

    The Drupal 8 custom block created is now visible in the region where the block is placed.

    4.Methods used in the class created for custom blocks
    • build() : This method will render a render-able array. In this example a simple markup is returned. Even the complex contents like forms and views can also be returned.
    • blockAccess() :  This method defines a custom user access logic.

                           • The AccessResult class is called here. 
                           • The method allowedIfHasPermission() checks if the current user has thepermission to view this content or not.

    • blockForm() : This method allows to define a block configuration form. 


    • blockSubmit() : This method is used to save the configuration defined in the previous method blockForm(). 


    • blockValidate() : This method validates the configuration form of the block. 



    Although the concept of blocks is the same in Drupal 7 too, the implementation in Drupal 8 is quite different. The code for each block is well organized in a separate class. In Drupal 7, all blocks related code were written in “.module” file, which can get messy. I hope you found this tutorial useful and helps you get started with creating your own custom blocks. We offer expert Drupal development services at Specbee and can help you build digital experiences that drive results. Contact us now.

    Drupal Planet Drupal Drupal 8 Shefali ShettyApr 05, 2017 Subscribe For Our Newsletter And Stay Updated Subscribe

    Leave us a Comment

      Shefali ShettyApr 05, 2017 Recent Posts Image Programmatically creating a block in Drupal 8 – A brief tutorial Image Drupal 8 Custom Module development – A beginners Guide Image Top Questions about Adobe Experience Manager Want to extract the maximum out of Drupal? TALK TO US Featured Success Stories

    Know more about our technology driven approach to recreate the content management workflow for [24]7.ai


    Find out how we transformed the digital image of world’s largest healthcare provider, an attribute that defined their global presence in the medical world.


    Discover how a Drupal powered internal portal encouraged the sellers at Flipkart to obtain the latest insights with respect to a particular domain.


    Evolving Web: The New Drupal Logo: Just in Time for Drupal 9

    1 day 21 hours ago

    As you might have heard, Drupal 9 is being released this Wednesday. There is a lot to celebrate, you’ll find evidence of Drupal 9 celebrations as teams prepare to upgrade to the new version of our favorite content management system. However, there is no distinct Drupal 9 logo to go with this release. Instead, a new evergreen logo will be used to represent all versions of the Drupal project and software. And there’s a good reason for that.

    The Original Drupal "Logo"

    To provide some context, when I first used Drupal 12 years ago, Drupal had a single recognizable branding element: the famous Druplicon. Not a true logo, the Drop icon is a well-loved community symbol: a character that has been adapted a thousand different ways in typical open-source fashion, just like Drupal itself. If you’ve ever attended a Drupal event, you’ve seen variations on this original drop. Although loved by Drupalers, it’s a bit of a curiosity to outsiders and probably too grass-roots for marketers and digital directors trying to select a solution for their next corporate website.

    A selection of Druplicons from druplicon.org

    The Drupal Wordmark

    When Drupal 7 was released, a word mark came along around the same time. As Drupal gained wide adoption by large organizations, the wordmark provided consistency and an easily recognizable symbol of the Drupal project, used by insiders and outsiders alike.

    The Drupal 8 Logo

    When Drupal 8 was released, a stylish drop emerged to represent this new version of the software. With the cut-out of an 8 inside a drop, the logo is simpler and sleeker than the Druplicon. We used it in pitch decks and product comparisons, and having a more mature logo allowed us to visually represent the modernization in the underlying technology of Drupal 8.

    The Drupal Evergreen Logo

    If you, like me, tend to have a dozen or so Drupal.org tabs open at a time, then you’ve already seen the new Drupal evergreen logo. Our friend the Druplicon has morphed into a sleeker droplet. The observant among you will recognize its origins in the DrupalCon brand. The drop shape is the same, stripped of the hexagonal treatment, and  showing the light Drupal blue color.

    And that slight shift in branding is just like Drupal 9 itself. Drupal 9 is an upgrade of the underlying technology (Symfony and its related libraries), so that Drupal can keep innovating. It’s a big deal that migrating to Drupal 9 is no big deal.

    Drupal 9.0 is a huge improvement on Drupal 8.0, so much effort has been put into carefully scheduling and releasing feature after feature over the last 4 years. Each feature releases since Drupal 8 came out has progressively made Drupal more powerful and more mature. And for those who upgrade to Drupal 9, features like a new admin UI, a new default theme, and other continuous improvements will continue to be added. Just like a logo that is tweaked until it’s right, it’s a platform that keeps innovating and improving. The Drop is always moving.

    A Community Effort

    Like everything else, the creation of the Drupal Evergreen Logo was a community effort. Huge thanks to Sixeleven for creating the logo (generously donating their time during the peak of Italy's COVID crisis). Thanks to Gábor Hotsjy for pushing the project ahead along with all things Drupal 9, and to the Drupal Association for making it happen. Let me know if you want to get involved in the Promote Drupal Initiative to help with similar projects in the future!

    Show Me the Logo!

    You can download the new logo, the wordmark, and the Druplicon from the Drupal Media Kit and take a look at Drupal’s Brand Book and marketing materials from the Promote Drupal initiative.

    + more awesome articles by Evolving Web

    qed42.com: Layout Builder Asset Injector module

    1 day 23 hours ago
    Layout Builder Asset Injector module Body

    Drupal 8's Layout Builder allows content editors and site builders to easily and quickly create visual layouts for displaying content. Users can customize how content is arranged on a single page, or across types of content, or even create custom landing pages with an easy to use drag-and-drop interface. Our recently contributed module - The Layout Builder Asset Injector module is definitely not a replacement for theming, but it provides site administrators with a quick and easy approach. The Layout Builder Asset Injector module allows site builders to add CSS and JS to the layout builder blocks. 

    | Benefits 
    • It allows you to inject CSS and JS within the layout builder blocks without the need to add it in the codebase.

    • Append unique CSS and scripts specific to layout builder blocks

    • It provides content editors with basic knowledge of CSS and JS to style their individual layout builder blocks and add short JS scripts to modify the behaviour.

    • Instead of adding CSS and JS on a page level, this module allows you to inject them on an individual block.

    | CSS Injector

    CSS Injector allows administrators to inject CSS into the page output based on configurable rules. It's useful for adding simple CSS tweaks without modifying a site's official theme.

    | JS  Injector

    JS Injector allows administrators to inject JS into the page output based on configurable rules. It's useful for adding simple JS tweaks without modifying a site's official theme.

    Note: Block class will be appended automatically to each CSS.

    For example when we add a CSS as given below:

    h1.node__title {   background-color:red; } It will automatically append the class of the block for which CSS is added once saved. .block-field-blocknodepagebody h2.node__title{    background-color:red; }  

    | How does it work? 
    • Enable the Layout Builder Asset module

    • After you enable the module, enable the layout option from the manage display section as shown below:

    • Under Layout Options, check both ‘Use Layout Builder’ and ‘Allow each content item’ options.

    • Click on the Add Block where you have CSS and JS text field (text area)

    To understand Layout Builder in detail refer  https://www.drupal.org/docs/8/core/modules/layout-builder

    • You can add your styling and scripts under the CSS and JS fields respectively

    • To make the styling and scripts specific to a block, add classes under the Classes text field. This class should be unique so as to reflect scripts and styling specific to a block.

    • On adding the CSS and JS and saving the configuration, it will automatically prefix the CSS with a custom class added.

    Note: You don't need to add it manually.

    • Upon saving the configuration, it creates a block specific unique file in the backend.

    • In the frontend, you can see the CSS applied to the respective block.

    | Implementing the Layout Builder asset injector module 

    Click here for the steps to install the Layout Builder asset injector module - https://www.drupal.org/docs/8/extending-drupal-8/installing-drupal-8-modules

    | Developer support

    Kishor Kolekar: https://www.drupal.org/u/kishor_kolekar

    Harshal Pradhan: https://www.drupal.org/u/hash6

    Abhishek Mazumdar: https://www.drupal.org/u/abhisekmazumdar

    Hardik Patel: https://www.drupal.org/u/hardik_patel_12

    Naresh Bavaskar: https://www.drupal.org/u/naresh_bavaskar

    | Module download link 


    | Alternative module links 




    Kishor Kolekar Mon, 06/01/2020 - 18:16

    qed42.com: Clear Field Values Module: Drupal 8

    2 days 4 hours ago
    Clear Field Values Module: Drupal 8 Body

    While trying to build a form, I found that it would be useful to have a one-click/touch option to clear text field values instead of selecting all the text and removing it. Even though this appears like a small issue, solving this would make users life easy! This was the driving force behind creating the Clear Field Values module for Drupal 8. The Clear Field Values module provides a way to clear data in the text field values with a single click/touch.

    | Clear Field Values module

    This module adds a button to clear text field values in one click/touch and provides two options at present, one is a simple cross button and the other is using font awesome icons.

    | Benefits 
    • Helps clear the entire input field without having to delete the whole text manually 

    • Clears a pre-suggested input present in the input field, that the user does not require.

    | Implementing the Clear Field Values module

    Follow these steps to configure the Clear Field: 

    1. Go to /admin/config/clear-field/settings steps

    2. Enable Clear Field by selecting the checkbox 

    3. Next, select the type of Button:

      1. Simple X 

      2. Fontawesome for all generic fields

    4. You can then add the text and tooltip which you need to add along with icon or keep it empty if not required.

    5. Add classes for the text field elements where you need the cross button to be visible.

    Step 1 : Move to  Settings page /admin/config/clear-field/settings  Step 2: Enable Clear Field Checkbox

    Select Type of Button

    1. Text along with X for all

    Selecting the above option would add X(cross) with text beside the text field

    1. Font Awesome for all fields generic

    Enable FontAwesome module https://www.drupal.org/project/fontawesome and you can add the cross button

    Default values for the text of the icon and tooltip are Clear Field & Clear field value which can be overridden.

    Default values for the Classes are form-text form-email separated by a space.

    For a custom-form add custom classes defined under element’s attributes under Classes field.

    | Developer support

    This module is supported by 

    1. Harshal Pradhan https://www.drupal.org/u/hash6

    2. Kiran Kadam https://www.drupal.org/u/kirankadam911

    | Module download links



    Do send in your feedback around this module! We would love to hear from you. 

    Reference: https://www.geeksforgeeks.org/html-clearing-the-input-field/


    Harshal Pradhan Mon, 06/01/2020 - 14:10

    Droptica: Why Drupal Is The Best Headless CMS

    2 days 4 hours ago

    I recently wrote an extensive article about a headless CMS. I discussed the pros and cons of building a headless and listed some considerations you should take into account when deciding whether headless is right for you.
    Today I want to focus on why you should really consider Drupal if you need a headless CMS.

    Headless CMS space is growing

    The headless CMSes space is exploding in recent years. This is mostly due to 2 factors:

    1. The emergence of javascript frameworks which allow for the creation of superb user experiences. React, Angular and Vue are great in building these, but they require a backend for content storage.
    2. The publish once, push everywhere idea which is adopted along with the rise of the Omnichannel brand presence and the advent of Digital Experience Platforms. Content now has to be distributed via all the channels in which Drupal is present.

    Both these movements are helping the headless CMSes thrive. This happens in 2 ways:

    1. The existing CMSes are adopting to the headless approach. This happened with Drupal API first initiative and inclusion of JSON:API and services modules into Drupal core. Wordpress followed along with making the REST API available.
    2. New entrants to the market, which are focusing only on providing the headless version. These are both - open source and proprietary solutions or mixtures of both worlds.

    As a product owner, you have a plethora of options to choose from. It might be difficult to drill down and make the right decision. If I were to recommend the options, I would suggest going with Drupal most of the time. Here is why.

    Drupal is mature and is a fully ready headless CMS

    If you intend to invest in a headless CMS that will power your websites for the foreseeable future, you have to select a solution that is stable and solid. One which has a clear roadmap of development and will be still relevant and supported in years to come.

    Drupal has started the API first initiative years ago and the community was working very hard to get it done. The Services and JSON:API modules are now in Drupal core. They receive the full support of the core project team. You can be sure that they will be available with each drupal release and that they will be working correctly.

    Drupal itself is a very mature CMS. Powering over 1 million websites it is backed by a large community of developers. If you chose Drupal you get an enterprise-level solution which will be well supported in the future. 

    The contrib space offers a massive amount of modules which extend the base functionality. You can build very custom solutions just by combining already existing code, without having to write too much yourself. This is a huge benefit compared to other, less popular solution on the market.

    For more information about drupal benefits, check out the why Drupal page.

    The REST API is ingrained into Drupal

    In Drupal, the REST API is not an addition plastered on to Drupal as an add-on. The APIs are deeply ingrained into the CMS. Interacting with the API is the same as interacting with the CMS via the browser. This brings magnificent benefits:

    • All the Drupal goodies work out of the box. The fine-grained permissions mechanisms, the workflows, relations, processes etc are executed in just the same way if you request data via API or try to access it via the frontend.
    • All modules which extend Drupal, will work with services (if they are applicable of course). 
    • You can create your own modules and they will work the same way for the headless part of the CMS and for the frontend part.

    Thanks to deep integration, the REST APIs are extendable and the way they work can be altered. The best example is the JSON:API extras module and the services module. These both are great examples of how much power the developers have over how they want the APIs to operate. These are of course just examples. Your development team will be able to tailor Drupal to your needs.

    JSON:API module is JSON:API compliant

    It is worth mentioning that the JSON:API provided by Drupal strictly follows the JSON:API specification. Thanks to this, any developer familiar with the standard can very quickly start working with the API without having to learn a lot of Drupal.

    But I want GraphQL

    Here you go. The GraphQL module from contrib allows you to expose graphql schemas from Drupal. The module is used by over 1000 websites. It is thoroughly tested by the community. This is another example of how mature Drupal is. Even a solution which is not “the default one” gets a massive amount of usage, testing and support. 

    Great tutorials and examples

    As with every large community, and especially the Drupal one, a lot of effort is put to educate and help new users onboard. Drupal boasts of a fantastic and very vibrant community, which is always ready to suggest solutions and lend a hand. 

    When it comes to the headless approach to building a CMS this is the case in particular. There even is a Drupal distribution built to be an API first, headless CSM. It is called contenta CMS. Contenta is an interesting starting point for building a headless Drupal. It is also a fantastic repository of examples and approaches to real-life requirements. The contenta GitHub account is full of examples in practically any available frontend technology.

    Vast vendor support

    Last but not least, it is important to be sure that your headless CMS can get the support it needs. Drupal stands out here as well. With a wide selection of drupal agencies which provide drupal support, you will always be able to find expertise to run build and maintain project. If you choose a inch, new solution, the number of vendors will be limited and so might be the expertise. 


    If you are about to invest in a headless CMS, you should choose a robust, stable working solution with great support and flexibility. Even though there are many options out there, the majority does not offer the guarantee of stability and predictability, because they are too young. 

    Drupal stands out as the robust flexible, API fist solution with a mature community, predictable release cycles, a plethora of contributed modules and a clear vision into the future.

    Drupal should at least get to the shortlist of the options you are considering.

    DrupalEasy: DrupalEasy Podcast 231 - Michael Meyers (Yjs and Goose), Dane Powell (Acquia BLT)

    2 days 23 hours ago

    Direct .mp3 file download.

    Ryan Price talks with Michael Meyers about Yjs (an open-source project that enables real-time, collaborative editing similar to Google Docs) and Goose (a load testing tool), after that, Mike Anello talks with Dane Powell about Acquia BLT.

    URLs mentioned DrupalEasy News Subscribe

    Subscribe to our podcast on iTunes, Google Play or Miro. Listen to our podcast on Stitcher.

    If you'd like to leave us a voicemail, call 321-396-2340. Please keep in mind that we might play your voicemail during one of our future podcasts. Feel free to call in with suggestions, rants, questions, or corrections. If you'd rather just send us an email, please use our contact page.

    Kalamuna Blog: Emergency Landing Page Best Practices (Web Design for Disaster, Part 2)

    4 days 14 hours ago
    Emergency Landing Page Best Practices (Web Design for Disaster, Part 2) Mike McCaffrey Fri, 05/29/2020 - 15:15

    As the world navigates through a public health crisis, and we are all responding to unprecedented conditions, it is a good time to evaluate how well your website is working to communicate urgent information, and how it might be improved going forward. 

    The team at Kalamuna has helped many organizations prepare and respond to emergencies, and in this series of posts, we are sharing research and lessons from our previous projects and the best practices we are now recommending to our clients.

    Categories Community Drupal Guidance Mobile Responsive Design Security Strategy User Experience Author Mike McCaffrey

    Drupal core announcements: Announcing the Bug-Smash community initiative!

    4 days 14 hours ago

    Happy to announce we're attempting to kick off a new community initiative primarily focused on fixing and closing bugs.

    We're hoping to

    • reduce the total amount of open core bugs
    • reduce the average age of open bugs
    • increase the number of closed bugs
    • mentor those looking to get move involved in contributing to core
    • give community members from countries in the Eastern Hemisphere the chance to participate in a core initiative in their local time zone.
    We need you!

    Resolving core bugs requires a wide range of skills - we're looking for volunteers to join us who can help with one or more of the following tasks:

    • Triaging and classifying bugs
    • Writing good bug reports, with steps to reproduce
    • Writing patches to resolve the bug
    • Writing automated test-cases to confirm the bug, and that it is resolved
    • Reviewing patches, through the lens of each of the core gates e.g. technical, accessibility, performance, backwards-compatibility, documentation, internationalization and usability.
    • Communicating with sub-system experts in order to gain sign off on non trivial changes
    • Writing documentation as required
    • Manual testing of the patch
    • Communicating any changes via blog posts, change records, release note snippets etc.
    • Coordination and management

    If you are are looking to get involved - come join us on Slack in the #bugsmash channel.

    We will meet asynchronously in the #bugsmash slack channel fortnightly on a Tuesday at 0400 UTC which maps to the following times:

    • 2pm AEST
    • 12 noon AWST, CST
    • 4pm NZST
    • 9.30am IST
    • 6.00am CEST
    • 5.00am BST
    • 8.00pm PST
    • 11.00pm EST

    Gábor Hojtsy: Thanks for making a difference at Drupal 9 Porting Weekend!

    4 days 22 hours ago

    I organized Drupal 9 Porting Day for April 28 as part of my #DrupalCares funding sub-campaign to help the Drupal Association bounce back from their financial losses due to the ongoing pandemic. It was a lot of fun with Lee Rowlands, Vladimir Roudakov, Adam Bergstein and Mike Lutz helping lead the contribution before and after my time of availability. 126 issues were worked on and 43 newly Drupal 9 compatible releases were made then.

    Given how fun it was, with Drupal 9 coming out next week it was logical to do another event. Last Friday would have been a great opportunity in person at DrupalCon Minneapolis if not for the pandemic (again). So I decided to schedule the event for that weekend. Surabhi Gokte and Gabriele Maira helped a lot in getting the event off the ground and we announced Drupal 9 Porting Weekend for May 22-23 to accommodate people available on the workday as well as the weekend.

    With more time to prepare, a lot more interested folks signed up to help lead the event in their respective timezones. 14 leads signed up and helped contributors for 52 hours, while the event lasted. Thanks Vladimir Roudakov (VladimirAus), Janna Malikova (JannaKha), Vaibhav Jain (vaibhavjain), Tsegaselassie Tadesse (tsega), Gabriele Maira (gambry), João Ventura (jcnventura), Oleh Vehera (voleger), Matthew Radcliffe (mradcliffe), Michael Lutz (mikelutz), Adam Bergstein (nerdstein), Kristen Pol, Qiangjun Ran (jungle), Jaideep Singh Kandari (JayKandari) and Digant Jagtap (digantdj), you were fantastic!

    Kristen Pol and Tsegaselassie Tadesse were also very active in the planning stage, Kristen published a very detailed guide to the weekend, Tsega wrote up and posted developer tips. The Bassam Ismail posted this video based on those guides of an actual Drupal 9 project update running with Upgrade Status and Rector, ending in submitting the patch:

    So with everything well prepared, Vladimir and Janna started the weekend and the leads were handing off responsibilities to each other throughout the whole event. This is how time coverage looked like for the whole 52 hours. There was not a single time when someone was not there to help:

    We had a lot of fun and learned a ton from each other. While numbers will not explain the event, that is all we have after the fact to look at, so here they are:

    When looking at project releases, the weekend also supported a major increase in daily newly Drupal 9 compatible releases also with several days of after-effects (I am counting these with my own script):

    New releases at the weekend and shortly after included fun modules like Pirate but also seriously cool modules like the Tome static site generator, Quicklink and top 200 most used modules like Views Accordion and Schema.org Metatag.

    As luck would have it Drupal 9.0.0 RC1 was also released on this weekend, which meant that people testing their updated projects also gave the Drupal 9 release candidate a test drive right away.

    For me this event was amazing to organize. The results in new Drupal 9 compatible projects before the stable core release and the additional testing of the release candidate are all good material outcomes. The raised awareness around the porting process and tools as well as the know-how shared will last even longer as people use what they learned and teach others as well. Also the concentrated increased use of the tools resulted in more improvement suggestions, so we can make them even better for the next wave of porters to come.

    Thanks all for your involvement, you made a lasting difference. Keep spreading your know-how and all the good things about Drupal 9!

    Ps. Next up is celebrating the release on June 3rd, 2020! Post your artwork, selfies, videos and events at https://celebratedrupal.org/ and let's have some fun together.

    Ny Media: 5 tips for universal design

    5 days 4 hours ago
    5 tips for universal design silje May 29, 2020

    Universal design of ICT is about designing websites, apps and self-service machines so that as many people as possible can use it regardless of disability. Those who use your website may be visually impaired or blind and therefore dependent on screen readers, or people with disabilities who use keyboard only or other tools to navigate the website, or users with cognitive disabilities.

    We've put together five tips on how to make the site accessible to as many users as possible.

    01 Typography - make your website easy to read

    Your website should be easy to read. Those who use the website may be visually impaired, may have cognitive impairment, or may simply want to scour the content of the page. Simple design concepts such as using the right size of the text, length of lines and subheadings help here.

    In documents and on print it is common to use 12 dots on text, while on screen this text becomes very small. It is recommended to use 14 or 16 points instead. The text should also stand out above the background. Avoid long texts on images and, if necessary, use a  semi-transparent background color.

    Long lines are harder to read, and the long distance from end to start of the next line can also interfere with the flow of reading. For a single-column page, 45 to 75 characters are considered satisfactory lengths. It also helps with the read flow that the start of each line is equal. Body should therefore be aligned to the left, not centered.

    Divide the text into paragraphs and use headings and subheadings. This makes it easier to understand the structure of the text. Make sure the headings are bigger so that they are different from the body text. 

    02. Contrast for the visually impaired and color blind, but also those who are out in the sun.

    It is of little help that the text is large enough if you have light gray text on a white background. Good contrast on texts, buttons and icons is very important. This is not only for the visually impaired, but also for users who have low brightness and contrast on their screen, such as when out in the sun.

    For at innholdet skal komme godt nok frem skal kontrasten være 7:1 på liten tekst (f.eks brødtekst) og 3:1 på overskrifter og større illustrasjoner, ikoner o.l. 

    For the content to appear clearly enough, the contrast should be 7: 1 on small text (eg body text) and 3: 1 on headings and larger illustrations and icons.

    03. Proper use of alt text

    Alt text is a texts that can be read by screen readers so that those who cannot see the image won't miss any important information on the page.

    A typical mistake is to start the alt text with "Picture of ..". or "icon for ...".  The screen readers knows that the content is an image, but it needs a text to describe it to the user. Therefore, use the alt text to describing the image rather than explaining that it is an image.

    It is also important to be detailed if it is important to the context. The alt text should not consist of keywords, but be a complete sentence. Examples of bad alt text for the image above would be "Person with mask, graffiti wall". A better alt text is "Man with a white Guy Fawkes mask is facing camera in front of a graffiti wall." Also, make sure the text is not too long. The maximum length of the alt text is 125 characters.

    04. Make the links stand out from the text

    Links in the body text can sometimes be difficult to detect, especially for the visually impaired and color blind. The links should therefore be clearly distinguished from the text around, both in color and underline. But it is not just in the design that one can make a difference, it also matters what text you use. We often see links at the end of a sentence that are named "here". For example, “Read about our services here”. Instead, you want to tell the user what the link does or what content it links to in the link text itself. A better link text would be "Read about our services".

    05. Make the texts easily understandable

    This tip is very much related to the first, but this is more about language and content production than design and layout. Keep in mind that some users might have some cognitive disabilities. A simpler language and shorter sentences might make it easier for these users.

    • Make your texts short and precise. Avoid writing long paragraphs that cover several topics.
    • Use bullet points if possible.
    • Simplify the language. If you use abbreviations or subject terms, it is wise to explain these the first time they are used.
    • Use images and illustrations to divide the content and to illustrate the main points.

    Drupal blog: Preparing to Celebrate Drupal 9

    5 days 14 hours ago

    The launch of Drupal 9 is less than a week away, and that is cause for celebration. In the past, the Drupal community and the Drupal Association have organized a variety of celebrations across the globe. For Drupal 8's launch we saw more than 200 release parties happen on six continents. 

    Celebrations in the time of COVID-19 are a much different affair; the world looks different than it did for Drupal 8's launch in 2015.

    But that doesn't mean we aren't going to celebrate!

    For Drupal 9, the community has built CelebrateDrupal.org - a central hub for all of the virtual celebrations the community will undertake this year for the release of Drupal 9.

    We encourage you to join in the fun!

    You can post your virtual events for others to join, upload photos of your Drupal 9 cupcakes, or selfies of your celebration, or add video. We've also provided a complete brand kit with the updated Drupal brand, which you are welcome to use as part of your celebrations.

    We encourage you to post about your celebrations on social media using the hashtags #CelebrateDrupal, #Drupal9, and #D9LaunchDay (on June 3rd). 

    Finally, we'd love to have you join us for DrupalCon Global, from July 14-17, where we'll be reflecting on the Drupal 9 launch as a community.

    While we're sad we can't celebrate in person, we're thrilled to celebrate with the whole Drupal community virtually following Drupal 9's release on June 3rd. We'll see you online!

    Evolving Web: Custom Sorting in Drupal Tutorial

    5 days 15 hours ago

    In a recent Drupal training, I got a question about a replacement for the Drupal 7 Nodequeue module for Drupal 8 and other future versions. What this module allowed you to do was sort your content in whichever order you preferred.  

    In Drupal, we make lists of content using Views and out of the box, and we have the ability to sort this content in different ways, such as:  

    • Date created
    • Date updated
    • Alphabetically  

    But what if I want a list of content sorted in whichever order that I want? This is what Nodequeue allowed me to do: let me sort my content arbitrarily.  

    Unfortunately, the Nodequeue module no longer exists for Drupal 8. But good news: there's a replacement called Entityqueue. This module does everything that Nodequeue lets us do in Drupal 7, and more.  

    But content creation in Drupal has changed since Drupal 7. Many people are now using the Paragraphs module to lay out their content, so in this video tutorial, I'll be showing you two different methods of custom sorting:  

    • Entityqueue in Views
    • Paragraphs with Content Reference  

    Entityqueue in Views

    After installing the module, we have a new option in Admin > Structure called Entityqueues. By default, there are no queues, so we create one:  

    • Name: Featured Content
    • Queue Type: Simple queue
    • Type of Items to Queue: Content
    • Content Type: Article (or whichever content you'll be sorting)  

    After saving our queue, we have two different ways of adding content to the queue. We click 'Edit items' and type in the title of the content in the autocomplete field, click 'Add item', and click 'Save.'  

    Another way to add items to the queue is to go to the content and click 'Edit'. Now, a new tab appears at the top of the page that says 'Entityqueue.' This will show a list of the queues this could be added to (it could be more than one). Click 'Add to queue' to add it.  

    After adding it, we might want to rearrange the order of the items inside of that queue. Click the 'Edit subqueue items' and drag them around.  

    For this tutorial, I've assumed you've already created a View of your content that you'd like to sort. Now, how do we get what we see in our View to match our queue?

    Add Relationship to Your View  

    The magic of Entityqueues comes from the relationship that we add in Views: whatever happens with our queue can be matched in our View. To add the relationship do the following:  

    • Open the 'Advanced' section of your View
    • Click 'Add' on 'Relationships'
    • Check the box next to 'Content queue' (found in the Entityqueue category)
    • Click 'Add and configure relationships'
    • Check the radio button for the queue that you made (if you've made more than one, they will all show up here)
    • Check 'Require this relationship'  

    After doing this, the View will now only show content that has been added to the queue. Great!   

    However, the order of our content might be incorrect. How do we get the sorting to match what's in our queue?

    Add Sorting Criteria

    If you've made no changes to the sorting criteria on your View, your content is likely being sorted by 'Content: Authored on (desc).' Basically, it's being sorted by the date the content was created. We need to remove this sorting criteria:  

    • Click on 'Content: Authored on (desc)'
    • Click 'Remove'  

    Now, we need to add a new sort criteria that matches what is in our queue:  

    • In 'Sort Criteria' click 'Add'
    • Check the box next to 'Content Queue Position' (found in the Entityqueue category)
    • Click 'Add and configure sort criteria'
    • Click 'Apply' (you can leave the default settings)  

    And now, our View content and order matches what is in our Entityqueue!

    Paragraph Type with Content Reference

    Although Drupal 7 did have support for the Paragraphs module, this method of laying out content has really gained popularity since Drupal 8 was released in 2016. To keep this tutorial brief, I won't go into all the details of creating new Paragraph types, but here are the basics.  

    After downloading and installing the module, we have a new section in Admin > Structure called Paragraph types:  

    • Click 'Add paragraph type'
    • Label: 'Featured Content'
    • Description: 'Content that can be added and sorted arbitrarily'
    • Click 'Save'
    • Click 'Add field'

    Add a new 'Content' (reference) field:  

    • Label: 'Featured Content'
    • Allowed Number of Values: unlimited
    • Restrict to Content: 'Article'
    • Click 'Save'  

    On your Paragraphs-enabled content type, you now have the option to add a 'Featured Content' paragraph. This will display an auto-complete field (similar to Entityqueue) where you can type the Title of the content you want to feature. You can add multiple items, and rearrange them how you'd like.  

    By default, what's shown is a simple link to the content, but this can be modified at the theme layer to display however you'd like, such as a slideshow of the featured content (but that's beyond the scope of this tutorial).

    Comparing the Two Methods

    From an Editor's perspective, it seems like there's less steps involved going with the Paragraphs approach, so why use that over Entityqueue? There's advantages to both methods and you have to choose which is right for your scenario.

    If you have a Paragraphs-enabled content type, going down the Paragraphs route may be the simplest option. Editors just add the Paragraph to the page and begin typing and re-ordering the content. However, this features content in only one location on the site.  

    With Entityqueue, though there's a few more steps from the Editor's perspective (and you may want to create a menu item so they can get to the queues quicker), if you need content to be sorted and featured in multiple places on your site, this is the route to go. In the video, I created a Views Page which has a relationship with my queue, but I quickly created a Block, which inherits all the settings I had from my page) and I can now place this in a region and have the two show the same content in the same order.

    Wrapping Up

    Nodequeue was a great Drupal 7 module, and luckily its spirit lives on (okay, that sentence might be a bit puffed up). But Entityqueue offers a great alternative and even includes some features that Nodequeue didn't, like being able to sort other entities like users and taxonomy terms.  

    And content entry in Drupal 8 has evolved with the Paragraphs module, which also offers us a nice, easy-to-use method of sorting content in whichever order we'd like. To get more in-depth web development training, check out our training page or sign-up for a tutorial.

    + more awesome articles by Evolving Web
    5 hours 14 minutes ago
    Drupal.org - aggregated feeds in category Planet Drupal
    Subscribe to Drupal Planet feed
  • Dries

    The power of Open Source in the fight against COVID-19

    2 weeks 4 days ago

    As someone who has spent his entire career in Open Source, I've been closely following how Open Source is being used to fight the COVID-19 global pandemic.

    I recently moderated a panel discussion on how Open Source is being used with regards to the coronavirus crisis. Our panel included: Jim Webber (Chief Scientist at Neo4J), Ali Ghodsi (CEO at Databricks), Dan Eiref (Senior Director of Product management at Markforged) and Debbie Theobold (CEO at Vecna Robotics). Below are some of the key takeaways from our discussion. They show how Open Source is a force for good in these uncertain times.

    Open Source enables knowledge sharing

    Providing accurate information related to COVID-19 is an essential public service. Neo4J worked with data scientists and researchers to create CovidGraph. It is an Open Source graph database that brings together information on COVID-19 from different sources.

    Jim Webber from Neo4J explained, The power of graph data [distributed via an open source management system] is that it can pull together disparate datasets from medical practitioners, public health officials and other scientific publications into one central view. People can then make connections between all facts. This is useful when looking for future long-term solutions.. CovidGraph helped institutions like the Canadian government integrate data from multiple departments and facilities.

    Databricks CEO Ali Ghodsi also spoke to his company's efforts to democratize data and artificial intelligence. Their mission is to help data teams solve the world's toughest problems. Databricks created Glow, an Open Source toolkit built on Apache Spark that enables large-scale genomic analysis. Glow helps scientists understand the development and spread of the COVID-19 virus. Databricks made their datasets available for free. Using Glow's machine learning tools, scientists are creating predictive models that track the spread of COVID-19.

    Amid the positive progress we're seeing from this open approach to data, some considerations were raised about governments' responsibilities with the data they collect. Maintaining public trust is always a huge concern. Still, as Ali said, The need for data is paramount. This isn't a matter of using data to sell ads; it's a matter of using data to data to save lives..

    Open Source makes resources accessible on a global scale

    It's been amazing to watch how Open Source propels innovation in times of great need. Dan Eiref from 3D printer company Markforged spoke to how his company responded to the call to assist in the pandemic. Markforged Open Sourced the design for face masks and nasal swabs. They also partnered with doctors to create a protective face shield and distributed personal protective equipment (PPE) to more than 500 hospitals.

    Almost immediately we got demand from more than 10,000 users to replicate this design in their own communities, as well as requests to duplicate the mask on non-Markforged printers. We decided to Open Source the print files so anyone could have access to these protections., said Eiref.

    The advantage of Open Source is that it can quickly produce and distribute solutions to people who need it the most. Debbie Theobold, CEO of Vecna Robotics, shared how her company helped tackle the shortage of ventilators. Since COVID-19 began, medical manufacturers have struggled to provide enough ventilators, which can cost upwards of $40,000. Venca Robotics partnered with the Massachusetts Institute of Technology (MIT) to develop an Open Source ventilator design called Ventiv, a low-cost alternative for emergency ventilation. The rapid response from people to come together and offer solutions demonstrates the altruistic pull of the Open Source model to make a difference., said Theobald.

    Of course, there are still challenges for Open Source in the medical field. In the United States, all equipment requires FDA certification. The FDA isn't used to Open Source, and Open Source isn't used to dealing with FDA certification either. Fortunately, the FDA has adjusted its process to help make these designs available more quickly.

    Open Source accelerates digital transformations

    A major question on everyone's mind was how technology will affect our society post-pandemic. It's already clear that long-term trends like online commerce, video conferencing, streaming services, cloud adoption and even Open Source are all being accelerated as a result of COVID-19. Many organizations need to innovate faster in order to survive. Responding to long-term trends by slowly adjusting traditional offerings is often "too little, too late".

    For example, Debbie Theobold of Vecna Robotics brought up how healthcare organizations can see greater success by embracing websites and mobile applications. These efforts for better, patient-managed experiences that were going to happen eventually are happening right now. We've launched our mobile app and embraced things like online pre-registration. Companies that were relying on in-person interactions are now struggling to catch up. We've seen that technology-driven interactions are a necessity to keeping patient relationships., she said.

    At Acquia, we've known for years that offering great digital experiences is a requirement for organizations looking to stay ahead.

    In every crisis, Open Source has empowered organizations to do more with less. It's great to see this play out again. Open Source teams have rallied to help and come up with some pretty incredible solutions when times are tough.


    We raised $500,000!

    3 weeks 1 day ago

    I'm excited to announce that the Drupal Association has reached its 60-day fundraising goal of $500,000. We also reached it in record time; in just over 30 days instead of the planned 60!

    It has been really inspiring to see how the community rallied to help. With this behind us, we can look forward to the planned launch of Drupal 9 on June 3rd and our first virtual DrupalCon in July.

    I'd like to thank all of the individuals and organizations who contributed to the #DrupalCares fundraising campaign. The Drupal community is stronger than ever! Thank you!

    5 hours 14 minutes ago
    Subscribe to Dries feed