Development News

Ny Media: Strex is now integrated in Drupal!

Main Drupal Feed - Wed, 06/01/2022 - 21:21
Strex is now integrated in Drupal! thomas June 1, 2022

You can now use Strex to send SMS messages from Drupal. Ny Media and Strex have cooperated on a integration module that makes sure Strex can now be installed and used together with Drupal's SMS functionality.

Who is Strex and why do I need their SMS functionality in Drupal?

Strex is one of Norway's largest players in mobile payment and SMS communication, and is owned by the mobile operators Telenor, Telia and Ice. More than 4.6 million Norwegians have already used one or more of Strex's services. Strex has two main products:

  • Strex Connect which is a complete SMS platform for incoming and outgoing SMS
  • Payment solutions that are integrated into a large number of services in Norway.

The first version of the module concentrates on the SMS functionality. The module makes it possible to implement SMS sending in Drupal via the Strex Connect platform.

Examples of areas where the Drupal module have already been used:

  • Two-step verification with SMS code at login.
  • Mass communication in member solutions for sports management systems.
  • Mass communication with personalized content via our marketing and personalization solution for shopping malls.
  • Distribution of tracking and order status in our e-commerce solutions.

Questions about Drupal and the Strex module?

ASK US!

The main reasons why we want to use Strex for SMS handling is:

  • Powerful and easy to use management service on strexconnect.no.
  • Flexibility in relation to using several customer accounts and tagging of messages that make invoicing, re-invoicing and statistics easy to handle.
  • Good availability of support and the product team at Strex.
  • Competitive pricing.


 

Some facts about the integration

The module is an extension of Drupal's SMS Framework. The framework is designed to be able to be expanded with third-party providers of SMS services such as Strex. The framework itself takes care of, among other things:

  • Sending SMS via integrated gateways (Strex SMS gateway is now an option here). SMS Framework supports having multiple gateways in the same installation.
  • Collect, verify and store mobile number information on Drupal users.
  • Mass sending of SMS to Drupal users based on batch operations.
  • Send content or portions of content to mobile phones.

Technical information on how the SMS Framework and Strex integration specifically works and is set up can be found here.

How do I get started using Strex in Drupal?

If you are a customer of Ny Media already, just get in touch with your contact person, and we will help you get started.

If you have your own Drupal installation or are a company that offers Drupal services, then it is still very easy. All you need to do is:

  1. Create an agreement with Strex by filling out the following form.
  2. Download and install the module according to the instructions on drupal.org.
  3. Configure the module and start sending SMS from Drupal's SMS Framework functionality. More info can be found here.
  4. After you have used the module, you have a full overview of statistics etc. at strexconnect.no.

CONTACT STREX TODAY TO GET STARTED!

Ny Media: Strex is now integrated in Drupal!

Main Drupal Feed - Wed, 06/01/2022 - 21:21
Strex is now integrated in Drupal! thomas June 1, 2022

You can now use Strex to send SMS messages from Drupal. Ny Media and Strex have cooperated on a integration module that makes sure Strex can now be installed and used together with Drupal's SMS functionality.

Who is Strex and why do I need their SMS functionality in Drupal?

Strex is one of Norway's largest players in mobile payment and SMS communication, and is owned by the mobile operators Telenor, Telia and Ice. More than 4.6 million Norwegians have already used one or more of Strex's services. Strex has two main products:

  • Strex Connect which is a complete SMS platform for incoming and outgoing SMS
  • Payment solutions that are integrated into a large number of services in Norway.

The first version of the module concentrates on the SMS functionality. The module makes it possible to implement SMS sending in Drupal via the Strex Connect platform.

Examples of areas where the Drupal module have already been used:

  • Two-step verification with SMS code at login.
  • Mass communication in member solutions for sports management systems.
  • Mass communication with personalized content via our marketing and personalization solution for shopping malls.
  • Distribution of tracking and order status in our e-commerce solutions.

Questions about Drupal and the Strex module?

ASK US!

The main reasons why we want to use Strex for SMS handling is:

  • Powerful and easy to use management service on strexconnect.no.
  • Flexibility in relation to using several customer accounts and tagging of messages that make invoicing, re-invoicing and statistics easy to handle.
  • Good availability of support and the product team at Strex.
  • Competitive pricing.


 

Some facts about the integration

The module is an extension of Drupal's SMS Framework. The framework is designed to be able to be expanded with third-party providers of SMS services such as Strex. The framework itself takes care of, among other things:

  • Sending SMS via integrated gateways (Strex SMS gateway is now an option here). SMS Framework supports having multiple gateways in the same installation.
  • Collect, verify and store mobile number information on Drupal users.
  • Mass sending of SMS to Drupal users based on batch operations.
  • Send content or portions of content to mobile phones.

Technical information on how the SMS Framework and Strex integration specifically works and is set up can be found here.

How do I get started using Strex in Drupal?

If you are a customer of Ny Media already, just get in touch with your contact person, and we will help you get started.

If you have your own Drupal installation or are a company that offers Drupal services, then it is still very easy. All you need to do is:

  1. Create an agreement with Strex by filling out the following form.
  2. Download and install the module according to the instructions on drupal.org.
  3. Configure the module and start sending SMS from Drupal's SMS Framework functionality. More info can be found here.
  4. After you have used the module, you have a full overview of statistics etc. at strexconnect.no.

CONTACT STREX TODAY TO GET STARTED!

Ny Media: Strex is now integrated in Drupal!

Main Drupal Feed - Wed, 06/01/2022 - 21:21
Strex is now integrated in Drupal! thomas June 1, 2022

You can now use Strex to send SMS messages from Drupal. Ny Media and Strex have cooperated on a integration module that makes sure Strex can now be installed and used together with Drupal's SMS functionality.

Who is Strex and why do I need their SMS functionality in Drupal?

Strex is one of Norway's largest players in mobile payment and SMS communication, and is owned by the mobile operators Telenor, Telia and Ice. More than 4.6 million Norwegians have already used one or more of Strex's services. Strex has two main products:

  • Strex Connect which is a complete SMS platform for incoming and outgoing SMS
  • Payment solutions that are integrated into a large number of services in Norway.

The first version of the module concentrates on the SMS functionality. The module makes it possible to implement SMS sending in Drupal via the Strex Connect platform.

Examples of areas where the Drupal module have already been used:

  • Two-step verification with SMS code at login.
  • Mass communication in member solutions for sports management systems.
  • Mass communication with personalized content via our marketing and personalization solution for shopping malls.
  • Distribution of tracking and order status in our e-commerce solutions.

Questions about Drupal and the Strex module?

ASK US!

The main reasons why we want to use Strex for SMS handling is:

  • Powerful and easy to use management service on strexconnect.no.
  • Flexibility in relation to using several customer accounts and tagging of messages that make invoicing, re-invoicing and statistics easy to handle.
  • Good availability of support and the product team at Strex.
  • Competitive pricing.


 

Some facts about the integration

The module is an extension of Drupal's SMS Framework. The framework is designed to be able to be expanded with third-party providers of SMS services such as Strex. The framework itself takes care of, among other things:

  • Sending SMS via integrated gateways (Strex SMS gateway is now an option here). SMS Framework supports having multiple gateways in the same installation.
  • Collect, verify and store mobile number information on Drupal users.
  • Mass sending of SMS to Drupal users based on batch operations.
  • Send content or portions of content to mobile phones.

Technical information on how the SMS Framework and Strex integration specifically works and is set up can be found here.

How do I get started using Strex in Drupal?

If you are a customer of Ny Media already, just get in touch with your contact person, and we will help you get started.

If you have your own Drupal installation or are a company that offers Drupal services, then it is still very easy. All you need to do is:

  1. Create an agreement with Strex by filling out the following form.
  2. Download and install the module according to the instructions on drupal.org.
  3. Configure the module and start sending SMS from Drupal's SMS Framework functionality. More info can be found here.
  4. After you have used the module, you have a full overview of statistics etc. at strexconnect.no.

CONTACT STREX TODAY TO GET STARTED!

WPTavern: Jetpack Goes Modular With More Features Now Available as Individual Plugins

Wordpress Planet - Wed, 06/01/2022 - 21:01

Jetpack announced today that it is splitting out six of its most popular features into individual plugins. Automattic reports that the company received feedback from developers and site owners asking for the ability to use specific components of Jetpack as part of their own “tech stack” of plugins.

The six features that are now available as individual plugins include the following:

  • Jetpack Backup
    Real-time site backups on Automattic’s cloud infrastructure
  • Jetpack Protect
    Scan for vulnerabilities in WordPress core, themes, and plugins for free
  • Jetpack Boost
    Improve site speed and SEO for free in just a few clicks
  • Jetpack Social
    Automatically share new posts and products on social channels for free
  • Jetpack Search
    Help visitors find what they are looking for
  • Jetpack CRM
    Streamline communication, provide better customer service, and grow sales

Three of those plugins were already available as separate plugins (Backup, CRM, and Boost). The Protect, Boost, CRM, and Social plugins are free to use. Backup and Search require a paid plan in order to work. Jetpack representatives confirmed those three plugins fall under the WordPress.org guidelines for SaaS connection plugins.

For years developers have criticized Jetpack for being “bloated,” bundling too many features. In 2019, Jetpack acknowledged that the plugin had a discovery problem, where users who were not fully familiar with the plugin’s dozens of modules ended up installing plugins to perform functionality that Jetpack already includes. Automattic attempted to solve this by promoting paid upgrades as feature suggestions on the plugin search screen, a controversial move that violated the plugin directory’s guidelines and was promptly reversed.

The idea behind splitting out more features into individual plugins is that Jetpack users will be able to install only what they need instead of assuming the overhead for the all-in-one plugin. This is also a strategic change for Jetpack as it attempts to market its bulk licensing options for agencies. A more modular Jetpack will be more appealing to developers and Automattic plans to split out more features into individual plugins in the future.

“Over time, the products that exist as individual plugins may be extracted from the original one, but no matter which plugin you start with, the experience of adding features will be seamless,” Automattic growth marketer Simon Keating said.

The five million Jetpack users who are using the all-in-one-plugin will not experience any changes as the result of today’s news. As more features become individual plugins, users will still be able to install what they want from a single interface.

Gutenberg Times: Museum of Block Art is Open for Submissions!

Wordpress Planet - Wed, 06/01/2022 - 18:59

After launching the Museum of Block Art, a community project showcasing the power of the block editor and dedicated to pushing the limits of WordPress, folks began asking how they could submit their art pieces. While the #WPBlockArt hashtag worked to start, with the launch of WordPress 6.0 and nearly 25K views on the site, it felt time to offer a more official pathway along with a few folks to help review submissions when needed:

Contribute

As much as you can, please try to create art in the following spirit:

  • Using the block editor with core blocks (the blocks that come with WordPress), with very limited custom CSS (ideally none at all).
  • Using the latest version of WordPress (6.0).
  • Pushing the boundaries of what feels possible with WordPress.

In order to submit, you will need:

  • A high resolution screenshot of what you created (this is what will be featured).
  • The HTML Markup of the block(s).
  • A social media account or website that you want linked to for your submission. 
  • A title of your art piece.

If you’re looking for inspiration for your creations and wondering how folks have made theirs, I definitely recommend playing with dimension controls, duotone, and the Row/Stack/Group blocks. You can also check out the Index and view any individual piece you’d like to see how they were made thanks to the markup that’s included. 

In true WordPress community fashion, I won’t be alone in reviewing the submissions–I’ll have help from a lovely group of volunteers as needed. Please give a big thank you to Tammie Lister, Rachel Winchester, Rich Tabor, and Ana Segota for making up a lovely review crew. 

Stay tuned for more updates. Perhaps if submissions continue over more releases, the Museum of Block Art can even have special exhibits based on each release, further showing how the design tools continue to evolve as time goes on. Time (and the number of submissions) will tell! Can’t wait to see what you create. 

Lullabot: Component Libraries in Drupal

Main Drupal Feed - Wed, 06/01/2022 - 14:26

Component libraries have become one of the first things organizations require for new engagements. There are many reasons for organizations to want a component library, but the reality is that Drupal, and PHP in general, have not been in a good place to deliver great solutions in this area. This is why we have created the Component Libraries suite of modules.

Lullabot: Component Libraries in Drupal

Main Drupal Feed - Wed, 06/01/2022 - 14:26

Component libraries have become one of the first things organizations require for new engagements. There are many reasons for organizations to want a component library, but the reality is that Drupal, and PHP in general, have not been in a good place to deliver great solutions in this area. This is why we have created the Component Libraries suite of modules.

Lullabot: Component Libraries in Drupal

Main Drupal Feed - Wed, 06/01/2022 - 14:26

Component libraries have become one of the first things organizations require for new engagements. There are many reasons for organizations to want a component library, but the reality is that Drupal, and PHP in general, have not been in a good place to deliver great solutions in this area. This is why we have created the Component Libraries suite of modules.

Finalist Blog: Dummy content with Migrate

Main Drupal Feed - Wed, 06/01/2022 - 11:42
Credit: photo by enjoiskate8 Dummy content is very useful for testing and other purposes. In this blog post I'll present some of the many tools that Drupal has to create dummy content. I'll explain why I think Migrate is the tool that is most suitable for this task. I have presented about this topic at the at the Drupal Dev Days 2022. and at Drupaljam 2022. What is Dummy content? Dummy content is everything you would like to have available when you start a new website: so that could be pages, users, taxonomy terms. So it is not just nodes, it could also be menu's, paragraphs…

Finalist Blog: Dummy content with Migrate

Main Drupal Feed - Wed, 06/01/2022 - 11:42
Credit: photo by enjoiskate8 Dummy content is very useful for testing and other purposes. In this blog post I'll present some of the many tools that Drupal has to create dummy content. I'll explain why I think Migrate is the tool that is most suitable for this task. I have presented about this topic at the at the Drupal Dev Days 2022. and at Drupaljam 2022. What is Dummy content? Dummy content is everything you would like to have available when you start a new website: so that could be pages, users, taxonomy terms. So it is not just nodes, it could also be menu's, paragraphs…

mark.ie: Creating a Colour-picker field for Drupal

Main Drupal Feed - Wed, 06/01/2022 - 09:00

Demo/tutorial on how to create a color-picker field for a Drupal website.

mark.ie: Creating a Colour-picker field for Drupal

Main Drupal Feed - Wed, 06/01/2022 - 09:00

Demo/tutorial on how to create a color-picker field for a Drupal website.

OpenSense Labs: How to implement component based design systems

Main Drupal Feed - Wed, 06/01/2022 - 04:59
How to implement component based design systems Gurpreet Kaur Wed, 06/01/2022 - 10:29

When you think about building a robust website or application, you think of two important sets of people who make it possible, that is designers and developers. Both of them are responsible for creating user-friendly experiences, but they do it differently. 

The job description of designers and that of developers are not the same, not by any means. In simple terms, one of them designs and the other one executes it through code.

They are not synonymous with each other. 

Can their work become synonymous?
Can it be interchangeable? 
Can one perform the job of the other?

Yes, that is possible. And the answer is through component-based design systems, where designers don’t have to be dependent on developers to create new landing pages as they already have components to work with.

How does the component based design approach work?

Design systems are the new way of creating web designs and products through a shared medium between designers and developers. Using ready-made components that act as building blocks for the entire site, websites and applications can be envisioned to be more modular with reusable elements. 

Component-based design systems have brought with them a transition in the creation of digital products that are composed, arranged and assembled in any way you want or as many ways you want them to be.

These components will also include what your page wants to portray. It could be a text block, a contact form, a CTA button, an entire banner of photographs. Content or graphics, the choice is yours.

Now coming to the initial question I asked and answering it.

As the components are already programmed segments of a page, it becomes extremely easy for the designers to get an understanding of delivering a smooth user experience all by themselves. They get the things that’ll work and build the final product with clear rationale that the design requires.

Component based design systems have the ability to create consistent designs that align with the brand. They not just empower designers, but also pave the way for more scalable products. More on component based design systems here.

The Beneficial Saga of Component based Design

Like I said, component based design is bringing more to the world of digital designs. Let’s get a better understanding of what more entails.

Brings Consistency

Redundancy in designs;
Hard to track changes; 
Outdated styles;
Forgotten functionalities; 

All of these are problems faced by designers, developers and content editors when they are to maintain consistency in the brand voice across the website. 

What if brand identity and style guides are ingrained into each component of each page? Wouldn’t it drastically improve consistency everywhere? In each style, each function, each design and the entire brand?

It certainly would. 

Component based design systems do just that. They make room for intentional and pre-designed structures and processes that ensure the correct components are used. They act as references for styles and functions that go across the site. Thus, bringing consistency, irrespective of how many designers or developers are involved in the build.

Simplifies Management 

A component based website will be solely composed of components, meaning each segment on that site is a component and the possibility of it having been reused is high. 

So, when you maintain your website, you are essentially maintaining those individual components. 

You can manage changes by making miniscule edits or drastic upgrades to the designs. And you can do all of that using a single source file of the same components. The fact that each component has multiple use cases on multiple pages, a single change, irrespective of how big or small it is, would be made to the entire application. 

Enables Efficiency and Scalability

When building a design system, you have to know that you would be working with existing components in the future. Every component, when built, has a long shelf life because it along with its variations are going to be reused.

This fact about component based designs makes them efficient. Why?

Because developers would not need to reimplement a change in the future. The design system is always going to be broader than its current implementation. Its evaluation and build is what makes it concise to the application. 

Considering this, component based design systems also promote scalability. 

You can very easily extend existing components or simply assemble new segments. Working with a system that is extremely well defined makes scaling convenient as you can build on top of it. 

Another way to understand this is that you will have a component library that would keep growing with your site. These clearly comprehensible, reusable and flexible components will make your platform’s expansion convenient.

Elevates Modularity 

Each component in a design system is always going to be built from scratch. 

This eases the development process because every component can have variations built-in. They are not going to simply be adorned on a single page and become obsolete for anywhere else.

Components, by their nature, are more adaptable and less rigid, if at all. They can be used for any content area, be it a specific campaign or permanent display. With these, you can test iterations of your layout on the fly, all the while maintaining consistency of the brand voice.

Promotes Cross-functional Collaboration 

Component based design systems have become the epitome of collaboration. Based on what I have written so far, it’s pretty obvious.

Your organisation wouldn’t have operational silos, if you have design systems in place. Content, design and development can work together and that too cohesively. The approach of design systems towards design and execution makes it possible as it becomes unified. 

Breaking Apart the Design System 

The next phase of design systems is to understand what is encompassed by them. Of course, there are going to be the design principles. That's a given because consistency does need a set of rules. 

These principles are exactly, rules and values that help design teams take their designs forward. They could be something as simple as;

Making the user experience easy; 
Focusing on telling stories; 
Building a multi-device layout.

There are no standard sets of design principles that go with these systems. It’s your brand that would decipher them based on its needs.

Now, let’s come down to the more specific part.

Style Guide 

Colours; 
Typography; 
Logos; 
Tone of voice;
And specific front-end styles;

All of these sum up a style guide. They also differentiate a brand, give it an identity and set it apart from its counterparts. 

Style guides achieve the same through setting guidelines for branding, content and interactive elements on the site. The design deliverables become consistent because of style guides and the specific implementation methodology they set.

They can also come as part of a component library so that each element therein has relevant guidance and context to take forth.

Component Library 

You can call it a component library or you can call it a design library, whatever you do it’ll always be a designer and developer’s shop.

Component libraries enable the development and design team to comprehend and implement UI elements easily. They are thorough because every component that has been developed for the system would be in them with predetermined and reusable functionality. 

It’s obvious that a component library would include the visual illustrations of every single component. What is not obvious is that it is much more organised and comprehensive than that. 

  • Component name with uniqueness for each component; 
  • Description with a concise explanation of the components and their usage; 
  • Attributes for future customisations with the range of variable and adjustments that can be made;
  • Component state to recommend default changes;
  • Code excerpts of each component;
  • And finally, the frontend and backend frameworks for library implementation. 

A component library is quite diverse and versatile to that that it can also help developers avoid painful and redundant debugging.

Pattern Library 

Content structures; 
Layouts; 
Design templates; 

These are the gist of a pattern library, which is different from a component library as we discussed in the previous sub-heading. So, the common misconception that both of them are the same needs to be forgotten.

Instead of individual UI components of a component library, a pattern library boasts collections of element groups and layouts. Apart from that they are similar, in the sense that both of them are robust and can be adapted and reused for their components and patterns. More on the implementation of pattern libraries here.

Assembly of a Design System 

Based on the previous section, you must have gotten a basic understanding of how a component based design system is assembled. 

You would need to build;

A style guide; 
A component library;
And a pattern library for your system.

So, when we talk about the assembly, we’ll not be discussing these, but the bigger picture that transcends the individual builds.

Here it is.

Assess the current visual state 

As in any development process, you ought to begin with an assessment of the current state of affairs. In this case, it is the visual design and you need to audit it thoroughly. 

What you need to do is;

  • Analyse your product to have a review on all its front-end design components;
  • Create a catalogue of the components that you would be keeping;
  • Identify the inconsistencies in design and remember to overcome them later;
  • And be mindful of the CSS used along with the visual qualities of the components.

Once you have done that, you are ready for the next step.

Evaluate the build time 

Knowing what you are going to build doesn’t necessarily mean that you start building it. There are a lot of other parameters that you have to think ahead of the build. 

So, ask yourself;

What are the places a component is going to be used?
Will there be a difference between the same component used in two different places?
What are the kinds of functionalities a component will have?
Would two more components be interlinked or dependent for functionality?

Once you have an answer to these questions, you will have a better understanding of the build time per-component. This also helps in avoiding rewrites and wastage of time and resources because you are simply not focusing on the visuals. 

What’s more is you would have an overview of the kind of complexity and features all the components will offer, both combined and individually. Understand that design systems are not a repository, they are much more than that. So use them in a way that you get the best from them.

Define priority elements 

What are the components that are the most important?
What are the components that are needed first?
What are the components that will give a foundation for other components?

These questions help you define priorities of each component build and let you apply them throughout the development process.

There are a couple of ways you can go about building your design systems.

  • The first one is to develop the fundamental components first. By fundamental, I mean the most basic components. These could be buttons, colours, icons or even headings. Once that is out of the way, you can start working on more complex components.
  • The alternative approach could be building global elements first. These could be navigation and page layouts. This is advised because once a page layout is set, you have done the groundwork and the only thing left is to build up then.

After deciding on the first elements to build, the rest can be worked out using the Eisenhower Box principle. This tells us to prioritise on the basis of importance and the kind of urgency a component has. Evaluating it would somewhat depend on the features the said component is bringing to the table.

Adhere to documentation 

The development process of a design system involves a lot of steps and a lot of people to accomplish those steps. Thinking merely designers can build an entire design system is completely irrational.

Designers 
Developers
Content Editors 

Each person has a significant role to play. Considering developers, there are frontend and backend developers, who have entirely separate responsibilities. 

So, when you are planning the development of a design system, you need to think about the relationship between all the players involved in the build and how to make it effective, think about how the handoffs would happen and think about how you would divide responsibilities. 

The answer to all of these would be clear and concise documentation. Documenting and standardising have helped design systems remain as efficient as they boast to be. 

Special Mention for Brad Frost’s Atomic Design 

When component based design is mentioned, our mind definitely wanders off to Atomic Design, a concept of design system proposed by Brad Frost.

Brad conceptualised his methodology based on the principles of chemistry. It may sound strange, but it is very effective.

Let’s figure it out. 

As we know that everything that is matter is composed of atoms, which bond together to form molecules that combine to become organisms. And organisms are what make the universe. 

Taking the same concept to web design, the complete UI is broken down into fundamental pieces and they are then built back up. 

Creating design systems with atomic design has five levels.

Source: Brad Frost 
  • Atoms that encompass HTML tags, like form labels and buttons;
  • Molecules that are bonded atoms, like a form label and button together;
  • Organisms that are grouped molecules to form a complex and distinct section on a layout like a product grid;
  • Templates that are formed by organisms and make a page layout possible. 
  • Pages that are the culmination of the previous for and test the effectiveness of the work done thus far.

Atomic designs are clear in their methodology and enable teams to see their envisioned goal in better detail. They boast consistency and scalability and are the paradigm of component based design systems today. Read this guide on atomic design methodology to know more.

Easing Component-based Designs 

You know almost everything about design systems now, what you need to know now is what design systems you can leverage to ease the build of component based designs on your own. 

Yes, there is always the option of creating your own design systems, and many brands, Atlassian being one name, have conceptualised their own systems. However, for smaller brands and organisations, who do not have the resources to go on their own, there are plenty of options in the market. 

Here are the top five picks for you.

Storybook 

Storybook, an open source tool meant to design and develop UI components, personifies ease in the creation of a component based design. 

  • You can preview components as you build them;
  • You can inspect individual components once you have built them;
  • You can look and analyse the different states the built components would function in;
  • And you can also import components into Storybook.

With support from a dozen JavaScript libraries and plain HTML, Storybook is easy to use and amplifies the build process.

Source: Storybook
Pattern Lab 

Build, view, test and demonstrate your UI components rapidly with Pattern Lab. It allows you to prototype at massive speed with interactivity, instead of simply providing flat designs. 

With cross-browser and multi-device testing, Pattern Lab helps to efficiently implement modification with minimal to no involvement in the code base. 

A node-powered static site generator, it can deliver everything you would need for setting up your component based UI;

  • Nested patterns 
  • Designs empowered with dynamic data 
  • Atomic design language 
  • Starter Kits (refer image below) and more 

Pattern Lab is faster, achieves a greater degree of consistency and gives you the real value for your money.

Source: Pattern Lab
Material Design 

Android;
iOS;
Or the web; 

Material Design by Google is the design system that always creates high-quality digital experiences everywhere.

It tries to keep things simple, clear and concise for everyone to follow. With three main parts at its core, Principles, Components and Theming, it helps design teams get a better grip on understanding building and customising designs. 

Source: Material Design
Atlassian Design System 

Referred to as the end-to-end design language, the Atlassian Design System helps in creating simple, intuitive and functional digital experiences

Its USP is being a holistic design system that provides the design team everything they need, from components to pattern libraries and comprehensive insights on the brand itself, its stylistic foundations and even content. 

Source: Atlassian Design 
Bit 

Another open-source design tool, Bit drives component based development that are founded on composable software to create consistent and reusable platforms. 

  • It promotes autonomy and standards with distributed code and teams;
  • It facilitates cross team collaboration to scale;
  • It also enables a composable that scales with the platforms and never repeats itself.

In simple terms, Bit makes component based development easy, distributed, consistent, reusable and efficiently manageable. 

Source: Bit.dev
OpenSense Labs Connection with Component-based Designs 

OpenSense Labs has a long history with component based designs. We love working with components and they have served us well so far, enabling us to create some of our best work.

Here is a component based design tale for you.

Edredo: Our very own edtech platform

Last year, Edredo was rebranded from Techtud. The rebranding meant an overhaul of the design on the entire site and application. It would have been a massive undertaking had it not been for component based design. 

Edredo, previously Techtud, was partly built on the concept of component based design. This helped our design team, led by Sahil Sharma, to drive changes and make them more consistent. 

Making changes to global elements was a walk in the park. A modification in universal headers just meant changing the parent component and designs became consistent as a result. 

We could simply design a header and present that component’s design for approval before coding. Once the component’s design is approved, it was coded and design work on the next component began. 

This process was repeated until all the pieces were finished and “pages” could be assembled. It was especially useful when a different designer took over designing, followed by a different developer doing the coding of the component, as they can work in tandem for high efficiency. 

“As a designer, I personally feel that component based designing has improved consistency in design tremendously. Smallest changes like colour or font can be updated on the entire product across devices within seconds. It has made design more flexible for all future updates.” - Sahil Sharma, UI/UX Designer, OpenSense Labs 
The Final Word   “Component based development increases code reusability, reduces time duration and budget for the project and it is much easier to implement globally.” - Pritish Kumar, Technical Lead, OpenSense Labs 

Reusability of design matters today, component based design systems make that possible. Breaking down components into smaller chunks, building from there is far more efficient than traditional design methodology. So, component based designs are for the win, for developers, for designers and for content editors too.

Articles Off

OpenSense Labs: How to implement component based design systems

Main Drupal Feed - Wed, 06/01/2022 - 04:59
How to implement component based design systems Gurpreet Kaur Wed, 06/01/2022 - 10:29

When you think about building a robust website or application, you think of two important sets of people who make it possible, that is designers and developers. Both of them are responsible for creating user-friendly experiences, but they do it differently. 

The job description of designers and that of developers are not the same, not by any means. In simple terms, one of them designs and the other one executes it through code.

They are not synonymous with each other. 

Can their work become synonymous?
Can it be interchangeable? 
Can one perform the job of the other?

Yes, that is possible. And the answer is through component-based design systems, where designers don’t have to be dependent on developers to create new landing pages as they already have components to work with.

How does the component based design approach work?

Design systems are the new way of creating web designs and products through a shared medium between designers and developers. Using ready-made components that act as building blocks for the entire site, websites and applications can be envisioned to be more modular with reusable elements. 

Component-based design systems have brought with them a transition in the creation of digital products that are composed, arranged and assembled in any way you want or as many ways you want them to be.

These components will also include what your page wants to portray. It could be a text block, a contact form, a CTA button, an entire banner of photographs. Content or graphics, the choice is yours.

Now coming to the initial question I asked and answering it.

As the components are already programmed segments of a page, it becomes extremely easy for the designers to get an understanding of delivering a smooth user experience all by themselves. They get the things that’ll work and build the final product with clear rationale that the design requires.

Component based design systems have the ability to create consistent designs that align with the brand. They not just empower designers, but also pave the way for more scalable products. More on component based design systems here.

The Beneficial Saga of Component based Design

Like I said, component based design is bringing more to the world of digital designs. Let’s get a better understanding of what more entails.

Brings Consistency

Redundancy in designs;
Hard to track changes; 
Outdated styles;
Forgotten functionalities; 

All of these are problems faced by designers, developers and content editors when they are to maintain consistency in the brand voice across the website. 

What if brand identity and style guides are ingrained into each component of each page? Wouldn’t it drastically improve consistency everywhere? In each style, each function, each design and the entire brand?

It certainly would. 

Component based design systems do just that. They make room for intentional and pre-designed structures and processes that ensure the correct components are used. They act as references for styles and functions that go across the site. Thus, bringing consistency, irrespective of how many designers or developers are involved in the build.

Simplifies Management 

A component based website will be solely composed of components, meaning each segment on that site is a component and the possibility of it having been reused is high. 

So, when you maintain your website, you are essentially maintaining those individual components. 

You can manage changes by making miniscule edits or drastic upgrades to the designs. And you can do all of that using a single source file of the same components. The fact that each component has multiple use cases on multiple pages, a single change, irrespective of how big or small it is, would be made to the entire application. 

Enables Efficiency and Scalability

When building a design system, you have to know that you would be working with existing components in the future. Every component, when built, has a long shelf life because it along with its variations are going to be reused.

This fact about component based designs makes them efficient. Why?

Because developers would not need to reimplement a change in the future. The design system is always going to be broader than its current implementation. Its evaluation and build is what makes it concise to the application. 

Considering this, component based design systems also promote scalability. 

You can very easily extend existing components or simply assemble new segments. Working with a system that is extremely well defined makes scaling convenient as you can build on top of it. 

Another way to understand this is that you will have a component library that would keep growing with your site. These clearly comprehensible, reusable and flexible components will make your platform’s expansion convenient.

Elevates Modularity 

Each component in a design system is always going to be built from scratch. 

This eases the development process because every component can have variations built-in. They are not going to simply be adorned on a single page and become obsolete for anywhere else.

Components, by their nature, are more adaptable and less rigid, if at all. They can be used for any content area, be it a specific campaign or permanent display. With these, you can test iterations of your layout on the fly, all the while maintaining consistency of the brand voice.

Promotes Cross-functional Collaboration 

Component based design systems have become the epitome of collaboration. Based on what I have written so far, it’s pretty obvious.

Your organisation wouldn’t have operational silos, if you have design systems in place. Content, design and development can work together and that too cohesively. The approach of design systems towards design and execution makes it possible as it becomes unified. 

Breaking Apart the Design System 

The next phase of design systems is to understand what is encompassed by them. Of course, there are going to be the design principles. That's a given because consistency does need a set of rules. 

These principles are exactly, rules and values that help design teams take their designs forward. They could be something as simple as;

Making the user experience easy; 
Focusing on telling stories; 
Building a multi-device layout.

There are no standard sets of design principles that go with these systems. It’s your brand that would decipher them based on its needs.

Now, let’s come down to the more specific part.

Style Guide 

Colours; 
Typography; 
Logos; 
Tone of voice;
And specific front-end styles;

All of these sum up a style guide. They also differentiate a brand, give it an identity and set it apart from its counterparts. 

Style guides achieve the same through setting guidelines for branding, content and interactive elements on the site. The design deliverables become consistent because of style guides and the specific implementation methodology they set.

They can also come as part of a component library so that each element therein has relevant guidance and context to take forth.

Component Library 

You can call it a component library or you can call it a design library, whatever you do it’ll always be a designer and developer’s shop.

Component libraries enable the development and design team to comprehend and implement UI elements easily. They are thorough because every component that has been developed for the system would be in them with predetermined and reusable functionality. 

It’s obvious that a component library would include the visual illustrations of every single component. What is not obvious is that it is much more organised and comprehensive than that. 

  • Component name with uniqueness for each component; 
  • Description with a concise explanation of the components and their usage; 
  • Attributes for future customisations with the range of variable and adjustments that can be made;
  • Component state to recommend default changes;
  • Code excerpts of each component;
  • And finally, the frontend and backend frameworks for library implementation. 

A component library is quite diverse and versatile to that that it can also help developers avoid painful and redundant debugging.

Pattern Library 

Content structures; 
Layouts; 
Design templates; 

These are the gist of a pattern library, which is different from a component library as we discussed in the previous sub-heading. So, the common misconception that both of them are the same needs to be forgotten.

Instead of individual UI components of a component library, a pattern library boasts collections of element groups and layouts. Apart from that they are similar, in the sense that both of them are robust and can be adapted and reused for their components and patterns. More on the implementation of pattern libraries here.

Assembly of a Design System 

Based on the previous section, you must have gotten a basic understanding of how a component based design system is assembled. 

You would need to build;

A style guide; 
A component library;
And a pattern library for your system.

So, when we talk about the assembly, we’ll not be discussing these, but the bigger picture that transcends the individual builds.

Here it is.

Assess the current visual state 

As in any development process, you ought to begin with an assessment of the current state of affairs. In this case, it is the visual design and you need to audit it thoroughly. 

What you need to do is;

  • Analyse your product to have a review on all its front-end design components;
  • Create a catalogue of the components that you would be keeping;
  • Identify the inconsistencies in design and remember to overcome them later;
  • And be mindful of the CSS used along with the visual qualities of the components.

Once you have done that, you are ready for the next step.

Evaluate the build time 

Knowing what you are going to build doesn’t necessarily mean that you start building it. There are a lot of other parameters that you have to think ahead of the build. 

So, ask yourself;

What are the places a component is going to be used?
Will there be a difference between the same component used in two different places?
What are the kinds of functionalities a component will have?
Would two more components be interlinked or dependent for functionality?

Once you have an answer to these questions, you will have a better understanding of the build time per-component. This also helps in avoiding rewrites and wastage of time and resources because you are simply not focusing on the visuals. 

What’s more is you would have an overview of the kind of complexity and features all the components will offer, both combined and individually. Understand that design systems are not a repository, they are much more than that. So use them in a way that you get the best from them.

Define priority elements 

What are the components that are the most important?
What are the components that are needed first?
What are the components that will give a foundation for other components?

These questions help you define priorities of each component build and let you apply them throughout the development process.

There are a couple of ways you can go about building your design systems.

  • The first one is to develop the fundamental components first. By fundamental, I mean the most basic components. These could be buttons, colours, icons or even headings. Once that is out of the way, you can start working on more complex components.
  • The alternative approach could be building global elements first. These could be navigation and page layouts. This is advised because once a page layout is set, you have done the groundwork and the only thing left is to build up then.

After deciding on the first elements to build, the rest can be worked out using the Eisenhower Box principle. This tells us to prioritise on the basis of importance and the kind of urgency a component has. Evaluating it would somewhat depend on the features the said component is bringing to the table.

Adhere to documentation 

The development process of a design system involves a lot of steps and a lot of people to accomplish those steps. Thinking merely designers can build an entire design system is completely irrational.

Designers 
Developers
Content Editors 

Each person has a significant role to play. Considering developers, there are frontend and backend developers, who have entirely separate responsibilities. 

So, when you are planning the development of a design system, you need to think about the relationship between all the players involved in the build and how to make it effective, think about how the handoffs would happen and think about how you would divide responsibilities. 

The answer to all of these would be clear and concise documentation. Documenting and standardising have helped design systems remain as efficient as they boast to be. 

Special Mention for Brad Frost’s Atomic Design 

When component based design is mentioned, our mind definitely wanders off to Atomic Design, a concept of design system proposed by Brad Frost.

Brad conceptualised his methodology based on the principles of chemistry. It may sound strange, but it is very effective.

Let’s figure it out. 

As we know that everything that is matter is composed of atoms, which bond together to form molecules that combine to become organisms. And organisms are what make the universe. 

Taking the same concept to web design, the complete UI is broken down into fundamental pieces and they are then built back up. 

Creating design systems with atomic design has five levels.

Source: Brad Frost 
  • Atoms that encompass HTML tags, like form labels and buttons;
  • Molecules that are bonded atoms, like a form label and button together;
  • Organisms that are grouped molecules to form a complex and distinct section on a layout like a product grid;
  • Templates that are formed by organisms and make a page layout possible. 
  • Pages that are the culmination of the previous for and test the effectiveness of the work done thus far.

Atomic designs are clear in their methodology and enable teams to see their envisioned goal in better detail. They boast consistency and scalability and are the paradigm of component based design systems today. Read this guide on atomic design methodology to know more.

Easing Component-based Designs 

You know almost everything about design systems now, what you need to know now is what design systems you can leverage to ease the build of component based designs on your own. 

Yes, there is always the option of creating your own design systems, and many brands, Atlassian being one name, have conceptualised their own systems. However, for smaller brands and organisations, who do not have the resources to go on their own, there are plenty of options in the market. 

Here are the top five picks for you.

Storybook 

Storybook, an open source tool meant to design and develop UI components, personifies ease in the creation of a component based design. 

  • You can preview components as you build them;
  • You can inspect individual components once you have built them;
  • You can look and analyse the different states the built components would function in;
  • And you can also import components into Storybook.

With support from a dozen JavaScript libraries and plain HTML, Storybook is easy to use and amplifies the build process.

Source: Storybook
Pattern Lab 

Build, view, test and demonstrate your UI components rapidly with Pattern Lab. It allows you to prototype at massive speed with interactivity, instead of simply providing flat designs. 

With cross-browser and multi-device testing, Pattern Lab helps to efficiently implement modification with minimal to no involvement in the code base. 

A node-powered static site generator, it can deliver everything you would need for setting up your component based UI;

  • Nested patterns 
  • Designs empowered with dynamic data 
  • Atomic design language 
  • Starter Kits (refer image below) and more 

Pattern Lab is faster, achieves a greater degree of consistency and gives you the real value for your money.

Source: Pattern Lab
Material Design 

Android;
iOS;
Or the web; 

Material Design by Google is the design system that always creates high-quality digital experiences everywhere.

It tries to keep things simple, clear and concise for everyone to follow. With three main parts at its core, Principles, Components and Theming, it helps design teams get a better grip on understanding building and customising designs. 

Source: Material Design
Atlassian Design System 

Referred to as the end-to-end design language, the Atlassian Design System helps in creating simple, intuitive and functional digital experiences

Its USP is being a holistic design system that provides the design team everything they need, from components to pattern libraries and comprehensive insights on the brand itself, its stylistic foundations and even content. 

Source: Atlassian Design 
Bit 

Another open-source design tool, Bit drives component based development that are founded on composable software to create consistent and reusable platforms. 

  • It promotes autonomy and standards with distributed code and teams;
  • It facilitates cross team collaboration to scale;
  • It also enables a composable that scales with the platforms and never repeats itself.

In simple terms, Bit makes component based development easy, distributed, consistent, reusable and efficiently manageable. 

Source: Bit.dev
OpenSense Labs Connection with Component-based Designs 

OpenSense Labs has a long history with component based designs. We love working with components and they have served us well so far, enabling us to create some of our best work.

Here is a component based design tale for you.

Edredo: Our very own edtech platform

Last year, Edredo was rebranded from Techtud. The rebranding meant an overhaul of the design on the entire site and application. It would have been a massive undertaking had it not been for component based design. 

Edredo, previously Techtud, was partly built on the concept of component based design. This helped our design team, led by Sahil Sharma, to drive changes and make them more consistent. 

Making changes to global elements was a walk in the park. A modification in universal headers just meant changing the parent component and designs became consistent as a result. 

We could simply design a header and present that component’s design for approval before coding. Once the component’s design is approved, it was coded and design work on the next component began. 

This process was repeated until all the pieces were finished and “pages” could be assembled. It was especially useful when a different designer took over designing, followed by a different developer doing the coding of the component, as they can work in tandem for high efficiency. 

“As a designer, I personally feel that component based designing has improved consistency in design tremendously. Smallest changes like colour or font can be updated on the entire product across devices within seconds. It has made design more flexible for all future updates.” - Sahil Sharma, UI/UX Designer, OpenSense Labs 
The Final Word   “Component based development increases code reusability, reduces time duration and budget for the project and it is much easier to implement globally.” - Pritish Kumar, Technical Lead, OpenSense Labs 

Reusability of design matters today, component based design systems make that possible. Breaking down components into smaller chunks, building from there is far more efficient than traditional design methodology. So, component based designs are for the win, for developers, for designers and for content editors too.

Articles Off

OpenSense Labs: How to implement component based design systems

Main Drupal Feed - Wed, 06/01/2022 - 04:59
How to implement component based design systems Gurpreet Kaur Wed, 06/01/2022 - 10:29

When you think about building a robust website or application, you think of two important sets of people who make it possible, that is designers and developers. Both of them are responsible for creating user-friendly experiences, but they do it differently. 

The job description of designers and that of developers are not the same, not by any means. In simple terms, one of them designs and the other one executes it through code.

They are not synonymous with each other. 

Can their work become synonymous?
Can it be interchangeable? 
Can one perform the job of the other?

Yes, that is possible. And the answer is through component-based design systems, where designers don’t have to be dependent on developers to create new landing pages as they already have components to work with.

How does the component based design approach work?

Design systems are the new way of creating web designs and products through a shared medium between designers and developers. Using ready-made components that act as building blocks for the entire site, websites and applications can be envisioned to be more modular with reusable elements. 

Component-based design systems have brought with them a transition in the creation of digital products that are composed, arranged and assembled in any way you want or as many ways you want them to be.

These components will also include what your page wants to portray. It could be a text block, a contact form, a CTA button, an entire banner of photographs. Content or graphics, the choice is yours.

Now coming to the initial question I asked and answering it.

As the components are already programmed segments of a page, it becomes extremely easy for the designers to get an understanding of delivering a smooth user experience all by themselves. They get the things that’ll work and build the final product with clear rationale that the design requires.

Component based design systems have the ability to create consistent designs that align with the brand. They not just empower designers, but also pave the way for more scalable products. More on component based design systems here.

The Beneficial Saga of Component based Design

Like I said, component based design is bringing more to the world of digital designs. Let’s get a better understanding of what more entails.

Brings Consistency

Redundancy in designs;
Hard to track changes; 
Outdated styles;
Forgotten functionalities; 

All of these are problems faced by designers, developers and content editors when they are to maintain consistency in the brand voice across the website. 

What if brand identity and style guides are ingrained into each component of each page? Wouldn’t it drastically improve consistency everywhere? In each style, each function, each design and the entire brand?

It certainly would. 

Component based design systems do just that. They make room for intentional and pre-designed structures and processes that ensure the correct components are used. They act as references for styles and functions that go across the site. Thus, bringing consistency, irrespective of how many designers or developers are involved in the build.

Simplifies Management 

A component based website will be solely composed of components, meaning each segment on that site is a component and the possibility of it having been reused is high. 

So, when you maintain your website, you are essentially maintaining those individual components. 

You can manage changes by making miniscule edits or drastic upgrades to the designs. And you can do all of that using a single source file of the same components. The fact that each component has multiple use cases on multiple pages, a single change, irrespective of how big or small it is, would be made to the entire application. 

Enables Efficiency and Scalability

When building a design system, you have to know that you would be working with existing components in the future. Every component, when built, has a long shelf life because it along with its variations are going to be reused.

This fact about component based designs makes them efficient. Why?

Because developers would not need to reimplement a change in the future. The design system is always going to be broader than its current implementation. Its evaluation and build is what makes it concise to the application. 

Considering this, component based design systems also promote scalability. 

You can very easily extend existing components or simply assemble new segments. Working with a system that is extremely well defined makes scaling convenient as you can build on top of it. 

Another way to understand this is that you will have a component library that would keep growing with your site. These clearly comprehensible, reusable and flexible components will make your platform’s expansion convenient.

Elevates Modularity 

Each component in a design system is always going to be built from scratch. 

This eases the development process because every component can have variations built-in. They are not going to simply be adorned on a single page and become obsolete for anywhere else.

Components, by their nature, are more adaptable and less rigid, if at all. They can be used for any content area, be it a specific campaign or permanent display. With these, you can test iterations of your layout on the fly, all the while maintaining consistency of the brand voice.

Promotes Cross-functional Collaboration 

Component based design systems have become the epitome of collaboration. Based on what I have written so far, it’s pretty obvious.

Your organisation wouldn’t have operational silos, if you have design systems in place. Content, design and development can work together and that too cohesively. The approach of design systems towards design and execution makes it possible as it becomes unified. 

Breaking Apart the Design System 

The next phase of design systems is to understand what is encompassed by them. Of course, there are going to be the design principles. That's a given because consistency does need a set of rules. 

These principles are exactly, rules and values that help design teams take their designs forward. They could be something as simple as;

Making the user experience easy; 
Focusing on telling stories; 
Building a multi-device layout.

There are no standard sets of design principles that go with these systems. It’s your brand that would decipher them based on its needs.

Now, let’s come down to the more specific part.

Style Guide 

Colours; 
Typography; 
Logos; 
Tone of voice;
And specific front-end styles;

All of these sum up a style guide. They also differentiate a brand, give it an identity and set it apart from its counterparts. 

Style guides achieve the same through setting guidelines for branding, content and interactive elements on the site. The design deliverables become consistent because of style guides and the specific implementation methodology they set.

They can also come as part of a component library so that each element therein has relevant guidance and context to take forth.

Component Library 

You can call it a component library or you can call it a design library, whatever you do it’ll always be a designer and developer’s shop.

Component libraries enable the development and design team to comprehend and implement UI elements easily. They are thorough because every component that has been developed for the system would be in them with predetermined and reusable functionality. 

It’s obvious that a component library would include the visual illustrations of every single component. What is not obvious is that it is much more organised and comprehensive than that. 

  • Component name with uniqueness for each component; 
  • Description with a concise explanation of the components and their usage; 
  • Attributes for future customisations with the range of variable and adjustments that can be made;
  • Component state to recommend default changes;
  • Code excerpts of each component;
  • And finally, the frontend and backend frameworks for library implementation. 

A component library is quite diverse and versatile to that that it can also help developers avoid painful and redundant debugging.

Pattern Library 

Content structures; 
Layouts; 
Design templates; 

These are the gist of a pattern library, which is different from a component library as we discussed in the previous sub-heading. So, the common misconception that both of them are the same needs to be forgotten.

Instead of individual UI components of a component library, a pattern library boasts collections of element groups and layouts. Apart from that they are similar, in the sense that both of them are robust and can be adapted and reused for their components and patterns. More on the implementation of pattern libraries here.

Assembly of a Design System 

Based on the previous section, you must have gotten a basic understanding of how a component based design system is assembled. 

You would need to build;

A style guide; 
A component library;
And a pattern library for your system.

So, when we talk about the assembly, we’ll not be discussing these, but the bigger picture that transcends the individual builds.

Here it is.

Assess the current visual state 

As in any development process, you ought to begin with an assessment of the current state of affairs. In this case, it is the visual design and you need to audit it thoroughly. 

What you need to do is;

  • Analyse your product to have a review on all its front-end design components;
  • Create a catalogue of the components that you would be keeping;
  • Identify the inconsistencies in design and remember to overcome them later;
  • And be mindful of the CSS used along with the visual qualities of the components.

Once you have done that, you are ready for the next step.

Evaluate the build time 

Knowing what you are going to build doesn’t necessarily mean that you start building it. There are a lot of other parameters that you have to think ahead of the build. 

So, ask yourself;

What are the places a component is going to be used?
Will there be a difference between the same component used in two different places?
What are the kinds of functionalities a component will have?
Would two more components be interlinked or dependent for functionality?

Once you have an answer to these questions, you will have a better understanding of the build time per-component. This also helps in avoiding rewrites and wastage of time and resources because you are simply not focusing on the visuals. 

What’s more is you would have an overview of the kind of complexity and features all the components will offer, both combined and individually. Understand that design systems are not a repository, they are much more than that. So use them in a way that you get the best from them.

Define priority elements 

What are the components that are the most important?
What are the components that are needed first?
What are the components that will give a foundation for other components?

These questions help you define priorities of each component build and let you apply them throughout the development process.

There are a couple of ways you can go about building your design systems.

  • The first one is to develop the fundamental components first. By fundamental, I mean the most basic components. These could be buttons, colours, icons or even headings. Once that is out of the way, you can start working on more complex components.
  • The alternative approach could be building global elements first. These could be navigation and page layouts. This is advised because once a page layout is set, you have done the groundwork and the only thing left is to build up then.

After deciding on the first elements to build, the rest can be worked out using the Eisenhower Box principle. This tells us to prioritise on the basis of importance and the kind of urgency a component has. Evaluating it would somewhat depend on the features the said component is bringing to the table.

Adhere to documentation 

The development process of a design system involves a lot of steps and a lot of people to accomplish those steps. Thinking merely designers can build an entire design system is completely irrational.

Designers 
Developers
Content Editors 

Each person has a significant role to play. Considering developers, there are frontend and backend developers, who have entirely separate responsibilities. 

So, when you are planning the development of a design system, you need to think about the relationship between all the players involved in the build and how to make it effective, think about how the handoffs would happen and think about how you would divide responsibilities. 

The answer to all of these would be clear and concise documentation. Documenting and standardising have helped design systems remain as efficient as they boast to be. 

Special Mention for Brad Frost’s Atomic Design 

When component based design is mentioned, our mind definitely wanders off to Atomic Design, a concept of design system proposed by Brad Frost.

Brad conceptualised his methodology based on the principles of chemistry. It may sound strange, but it is very effective.

Let’s figure it out. 

As we know that everything that is matter is composed of atoms, which bond together to form molecules that combine to become organisms. And organisms are what make the universe. 

Taking the same concept to web design, the complete UI is broken down into fundamental pieces and they are then built back up. 

Creating design systems with atomic design has five levels.

Source: Brad Frost 
  • Atoms that encompass HTML tags, like form labels and buttons;
  • Molecules that are bonded atoms, like a form label and button together;
  • Organisms that are grouped molecules to form a complex and distinct section on a layout like a product grid;
  • Templates that are formed by organisms and make a page layout possible. 
  • Pages that are the culmination of the previous for and test the effectiveness of the work done thus far.

Atomic designs are clear in their methodology and enable teams to see their envisioned goal in better detail. They boast consistency and scalability and are the paradigm of component based design systems today. Read this guide on atomic design methodology to know more.

Easing Component-based Designs 

You know almost everything about design systems now, what you need to know now is what design systems you can leverage to ease the build of component based designs on your own. 

Yes, there is always the option of creating your own design systems, and many brands, Atlassian being one name, have conceptualised their own systems. However, for smaller brands and organisations, who do not have the resources to go on their own, there are plenty of options in the market. 

Here are the top five picks for you.

Storybook 

Storybook, an open source tool meant to design and develop UI components, personifies ease in the creation of a component based design. 

  • You can preview components as you build them;
  • You can inspect individual components once you have built them;
  • You can look and analyse the different states the built components would function in;
  • And you can also import components into Storybook.

With support from a dozen JavaScript libraries and plain HTML, Storybook is easy to use and amplifies the build process.

Source: Storybook
Pattern Lab 

Build, view, test and demonstrate your UI components rapidly with Pattern Lab. It allows you to prototype at massive speed with interactivity, instead of simply providing flat designs. 

With cross-browser and multi-device testing, Pattern Lab helps to efficiently implement modification with minimal to no involvement in the code base. 

A node-powered static site generator, it can deliver everything you would need for setting up your component based UI;

  • Nested patterns 
  • Designs empowered with dynamic data 
  • Atomic design language 
  • Starter Kits (refer image below) and more 

Pattern Lab is faster, achieves a greater degree of consistency and gives you the real value for your money.

Source: Pattern Lab
Material Design 

Android;
iOS;
Or the web; 

Material Design by Google is the design system that always creates high-quality digital experiences everywhere.

It tries to keep things simple, clear and concise for everyone to follow. With three main parts at its core, Principles, Components and Theming, it helps design teams get a better grip on understanding building and customising designs. 

Source: Material Design
Atlassian Design System 

Referred to as the end-to-end design language, the Atlassian Design System helps in creating simple, intuitive and functional digital experiences

Its USP is being a holistic design system that provides the design team everything they need, from components to pattern libraries and comprehensive insights on the brand itself, its stylistic foundations and even content. 

Source: Atlassian Design 
Bit 

Another open-source design tool, Bit drives component based development that are founded on composable software to create consistent and reusable platforms. 

  • It promotes autonomy and standards with distributed code and teams;
  • It facilitates cross team collaboration to scale;
  • It also enables a composable that scales with the platforms and never repeats itself.

In simple terms, Bit makes component based development easy, distributed, consistent, reusable and efficiently manageable. 

Source: Bit.dev
OpenSense Labs Connection with Component-based Designs 

OpenSense Labs has a long history with component based designs. We love working with components and they have served us well so far, enabling us to create some of our best work.

Here is a component based design tale for you.

Edredo: Our very own edtech platform

Last year, Edredo was rebranded from Techtud. The rebranding meant an overhaul of the design on the entire site and application. It would have been a massive undertaking had it not been for component based design. 

Edredo, previously Techtud, was partly built on the concept of component based design. This helped our design team, led by Sahil Sharma, to drive changes and make them more consistent. 

Making changes to global elements was a walk in the park. A modification in universal headers just meant changing the parent component and designs became consistent as a result. 

We could simply design a header and present that component’s design for approval before coding. Once the component’s design is approved, it was coded and design work on the next component began. 

This process was repeated until all the pieces were finished and “pages” could be assembled. It was especially useful when a different designer took over designing, followed by a different developer doing the coding of the component, as they can work in tandem for high efficiency. 

“As a designer, I personally feel that component based designing has improved consistency in design tremendously. Smallest changes like colour or font can be updated on the entire product across devices within seconds. It has made design more flexible for all future updates.” - Sahil Sharma, UI/UX Designer, OpenSense Labs 
The Final Word   “Component based development increases code reusability, reduces time duration and budget for the project and it is much easier to implement globally.” - Pritish Kumar, Technical Lead, OpenSense Labs 

Reusability of design matters today, component based design systems make that possible. Breaking down components into smaller chunks, building from there is far more efficient than traditional design methodology. So, component based designs are for the win, for developers, for designers and for content editors too.

Articles Off

WPTavern: LottieFiles Releases Official WordPress Plugin

Wordpress Planet - Wed, 06/01/2022 - 02:44

LottieFiles, a company that hosts thousands of Lottie animations and helps designers create and test their animations, has just released an official plugin for WordPress. The company recently raised $37M in a Series B round, passed three million users on its website, and is investing in making motion design more accessible.

Lottie’s open source animation file format is used by more than 135,000 designers and developers in websites and apps for Amazon, Google, Spotify, Microsoft, TikTok, Netflix, BBC, Uber, and other high profile companies. The JSON-based format was created by the design team at Airbnb and grew in popularity because of the small file size (600% smaller compared to GIFs), the fact that it is scalable at run-time, and its flexibility to be used across any platform. Lottie files can be used on iOS, Android, web and React Native without modification.

LottieFiles’ new WordPress plugin is available for free on WordPress.org. Once the plugin is installed and activated, it will prompt you to sign into your LottieFiles account or a create a free account. You will also be given the option to share the account with other users and copy Lottie files to the WordPress Media Library.

The plugin was made for the block editor. Inserting the LottieFiles block will launch a modal window where users can browse recent, featured, and popular Lottie animations. Users can also search through LottieFiles’ library of more than 50,000 animations or access private files from their accounts.

One of the benefits of using the plugin, as opposed to simply embedding an animation, is that the block settings allow users to easily adjust the Lottie size and background, along with the speed, looping, and controls display.

Although block libraries like Kadence Blocks have support for Lottie animations, LottieFiles’ official plugin is a single-block plugin and includes more block controls. It offers one of the most user friendly ways to insert animations into web pages, blog posts, or any content that could use a little a little motion design.

The LottieFiles team has been responsive on the support forums and in the reviews so far. In one instance where a user reported that the plugin adds its CSS on every page in the front and backend, instead of conditionally adding it when Lotties are displayed, the plugin’s developers said they are working on minimizing the CSS added to pages. LottieFiles is accepting bug reports and feature requests on their feedback site.

The Drop Times: Why is Drupal 7 Still Popular?

Main Drupal Feed - Tue, 05/31/2022 - 23:58
Drupal 8 has already reached end-of-life and Drupal 10 will soon release, yet the number of Drupal 7 websites seem to be pretty high. Lets find out why.

The Drop Times: Why is Drupal 7 Still Popular?

Main Drupal Feed - Tue, 05/31/2022 - 23:58
Drupal 8 has already reached end-of-life and Drupal 10 will soon release, yet the number of Drupal 7 websites seem to be pretty high. Lets find out why.

WordPress.org blog: People of WordPress: Dee Teal

Wordpress Planet - Tue, 05/31/2022 - 17:51

In this series, we share some of the inspiring stories of how WordPress and its global network of contributors can change people’s lives for the better. This month we feature a WordPress development and large project specialist on the difference the software and community can make to your career and life.

Dee’s story with computers started at school in New Zealand where discovering how a mouse worked and learning BASIC and Pascal was a catalyst for what later became a programming career.

At a time when computers were just becoming mainstream, there were no opportunities for girls in her school to consider this as a further option. She recalls: “No one thought to say, ‘Dee, you look like you’re good at this, you should pursue it…’. I mean, I was a girl (and I was told girls didn’t ‘do’ computers). No one in the circles I moved in really had any idea where this technology revolution would take us.”

With no particular career path into technology, Dee was encouraged in her final year of school to apply for a job in a bank where she worked and became a teller three years later. She gained financial independence, which enabled her to travel as a 20-year-old and spend the next three years exploring the US and Europe.

Looking back, she noted how the world had changed: the first computer mouse she had seen had come out in 1983, and 20 years later WordPress was founded.

Journey into coding

During those 20 years, Dee worked as a nanny, working in child care centers, in customer support, and as a temp.

In 1999, she packed up her bags once again, and moved from New Zealand to Australia. She took a place at a performing arts school where she honed her singing and performance skills and volunteered her time to the music director who was starting to experiment with sending out HTML newsletters and updates via email.

“And so my personal revolution began. On the day after I graduated from that course, I walked into a full-time role as that music director’s assistant and began my journey back to code.”

As part of that job, Dee edited and sent HTML newsletters on a weekly basis. This ignited her interest in programming, and she bought books about coding for the web and experimented on her home-built PC making web pages.

“I’m sure, like a lot of us, I remember the thrill of creating that first HTML file and seeing a ‘Hello World’ or similar heading rendered in the browser. From there, I was completely hooked.”

Dee Teal

Later she moved to the IT department and took on maintenance of all the websites. By 2004, she was working full-time as a webmaster. A year later, she was running a small business creating sites on the side. Four years after that, her business became her full-time job as she left employment to pursue her Masters Degree in Digital Communication and Culture.

Dee and other volunteers setting up for a local WordCamp

Dee found the theory and sociology behind the web, and its facilitation of human and machine communication fascinating.

She said: “I love the fact that the tech industry involves a constant constant curve of growth and discovery, which results in a perpetual exercise in finding creative elegant solutions for sticky problems.”

For Dee, being able to use her innate curiosity to leverage processes, people, and tools, fuelled by a focus on communicating a message, has been a defining inspiration in her work.

This combined fascination coincided with her meeting WordPress in 2009 and subsequently its community. She moved her existing blog to the software and it became the CMS of choice for all her client work.

The WordPress community can change your world

In 2011, she stumbled across WordCamps and by extension the WordPress community. Dee has reflected publicly that WordPress didn’t change her life, its community changed her world!

She flew on a whim from her then home in Sydney to attend a WordCamp in Melbourne she had found after a search for ‘WordPress Conferences’.

She said: “I met welcoming people, made friends, connected, and came back home excited and hopeful about continuing this connection with the wider WordPress community.”

Building a community locally around WordPress got off to a slow start in Sydney. From an inauspicious early WordPress Sydney meetup in the function room of a pub, her connection and involvement took off. Before long she was helping organize that meetup, and by the time she moved away from that great city it had branched into two meetups, and soon after, into three.

She was so inspired by the community that at the end of that first year and her second WordCamp, she raised her hand to help organize a WordCamp Sydney in 2012, and after moving interstate, WordCamp Melbourne in 2013.

“WordPress and any other software package exist to serve people.”

Dee Teal

Dee said: “WordPress, software, technology, the Internet will come and go, morph, and change, evolve. Maybe WordPress will last forever, maybe it will morph into something else, maybe one day it will look completely different than it did when I first started (actually, that’s true now). The thing that doesn’t change is the humanity around it. WordPress and any other software package exist to serve people.”

She added: “The thing that I have learned, not only through WordPress but in life, is that if we too serve the people around what we’re doing, we ourselves will grow, develop and change alongside the people we serve, and the tools we use to serve them.”

Some of the contributors to the WordPress 5.6 release

Dee was a coordinator for WordPress 5.6 release in 2020 and was able to encourage others to learn about the process.

Helping others and sharing knowledge through WordPress

Dee has been an advocate for cross-cultural collaboration and understanding in both WordPress and her work for a large distributed agency which has people from more than 24 countries and operates across 16 timezones. She has also written about closing the gap between diverse distributed teams and how to meet the challenges of cross cultural remote work.

Dee has given talks at WordCamps, including at WordCamp Europe in 2019, on developing ourselves, our relationships, and our communities in increasingly diverse environments.

With a strong desire to share her professional knowledge and experience, Dee hopes her involvement in the WordPress community from being part of a Release Squad in the Core Team, and volunteering in the community through organizing and speaking at WordCamp events, will inspire others to get involved.

“It’s the connections, it’s the friendships. It’s the network of work, referrals, support, help and encouragement.”

Dee Teal talking about the community that makes WordPress specialbenefits of the WordPress community Dee shared her experience with attendees at WordCamp Europe 2019

In contributing to WordPress and organizing community events around it, Dee found that for her: “At the end of the day it isn’t actually WordPress that matters. It’s those connections, it’s the friendships. It’s the network of work, referrals, support, help, encouragement that has kept me wired into this community and committed to helping other people find that connection and growth for themselves.”

Dee’s career in WordPress has moved through coding, into project management of large scale WordPress projects, and now into delivery leadership. Her connections to community have helped ‘fuel the transitions’ through these chapters of her life.

She said: “I believe that the place I’ve found and the opportunities I have had owe as much to my own desire and ambition as they do to the help, support and belief of the community around me; sometimes even more than I’ve felt in myself.”

She feels that she is ‘living proof’ that by helping, connecting, and resourcing other people, you can be helped, resourced and connected into places you had never thought possible.

This has enabled her to reach and have a career in technology that she did not know existed as a teenager playing with that first computer mouse and experimenting with code. Dee hopes her story will inspire others in their journey.

Share the stories

Help share these stories of open source contributors and continue to grow the community. Meet more WordPressers in the People of WordPress series.

Contributors

Thanks to Abha Thakor (@webcommsat), Meher Bala (@meher), Mary Baum (@marybaum), Chloe Bringmann (@cbringmann), Nalini Thakor (@nalininonstopnewsuk), and Larissa Murillo (@lmurillom) for work on this feature. Thank you to Josepha Haden (@chanthaboune) and Topher DeRosia (@topher1kenobe) for support of the series. Thank you too to @thewebprincess for sharing her experiences.

This article is inspired by an article originally published on HeroPress.com, a community initiative created by Topher DeRosia. It highlights people in the WordPress community who have overcome barriers and whose stories would otherwise go unheard.
Meet more WordPress community members in our People of WordPress series.

This People of WordPress feature is inspired by an essay originally published on HeroPress.com, a community initiative created by Topher DeRosia. It highlights people in the WordPress community who have overcome barriers and whose stories might otherwise go unheard. #HeroPress

Specbee: Build marketing landing pages quickly and easily with Drupal 9

Main Drupal Feed - Tue, 05/31/2022 - 12:45
Build marketing landing pages quickly and easily with Drupal 9 Shefali Shetty 31 May, 2022

If you’re a marketing professional reading this article, you know creating and running marketing campaigns is not as easy as it may seem. Developing a successful marketing campaign requires strategic planning, target audience & behavior analysis, determining the right channel, message design and competitive positioning.

In my experience so far as a marketing professional, I’ve learned that focusing more on the target customer and their needs helps us build and execute more effective, result-oriented marketing campaigns. Moreover, I have learned that today, customers' needs, pain points, decisions, and attention spans change extremely rapidly. And that's without mentioning other factors such as competition, technology updates, and innovation. As quickly shifting environments force marketers to roll out new and creative marketing campaigns, they need to do so on a more frequent basis than ever.

My most fun (and easiest) part of developing a marketing campaign is building ad landing pages. I’m sure as you read on, you’ll know why. You most likely already know that marketing ad campaigns (paid or free) need to be directed to their own, specific landing pages for better results. We are a Drupal development company and we use Drupal as our website’s CMS (very obviously). Currently we are running on Drupal 9 (and here are some reasons why you should be on Drupal 9 too) and creating new pages as and when we need is really easy. Take a look at how I create a new ad campaign page for a test campaign on “Drupal 9 Migration”.

But first, a little something about Content Types

Without getting too technical, let me go ahead and say that content types in Drupal are basically types of content :) Now if that confused you, here’s an example. If your website has various kinds of information like News, Articles, Video Gallery, Photo Gallery, etc., each of them can be classified as a content type. Each content type has its own sets of fields. For example, for Articles content type you will have fields like Title, Image, Body, URL alias, Meta description and so on. 

When you install Drupal 9, you get two content types by default - basic page and article. The basic page content type is usually used to create static pages where you would not update content very often. An article content type can be used for frequently updated pages like blogs, news, events, etc. You can further extend the flexibility of these default content types by installing other contributed modules but let’s not get too technical now. For deeper customization, find a Drupal partner who can customize and build content types that suits your business requirements. In this example today, I will explain how I create an Ad landing page content type for my marketing campaign.

A Few Must-Haves in your Landing Page

The basic goal of a landing page is to convert. It is not very likely that you see immediate conversions even if you have a great landing page design. But it is important to build your landing page in a way that users return to your page and convert sooner or later. Here are some key elements your landing page must have:

  • Clear and concise copy
  • An interactive element (an image or a video or 
  • A simple and short lead form
  • An attractive CTA (it could be your form too)
  • A trust element (certificates / verified / accreditations)
  • Make them an offer they cannot refuse :)
  • SEO optimization

And here are some things you should NOT have:

  • Too many navigation elements or outbound links that distracts the user
  • Unnecessary information and clutter
Let’s Design the Campaign

Now our website has been built by our Drupal developers using a component-based design approach. Each content type can use and reuse the various components when required. The ad campaign page that I’m going to create is a content type that has been customized to meet our marketing goals. We have used the Paragraphs module as the framework to build various paragraph types (or components). By default, Paragraphs do not have any paragraph types but the developer has complete flexibility to create custom paragraph types with a combination of fields.

So here’s how I create a new Ad Campaign page.

Step 1: Create a new Ad Page

Admin-> Content -> Add content -> Ad Page

  Step 2: Add content to the paragraph types

As you can see in the screenshot below, Title, Main Title, Description are the paragraph types.

 

Title - Not only do they provide your users with context on your page but the Title tag is a great place to start optimizing for SEO. The text that I enter here is going to be the Title tag text of my new campaign page. Drupal is great when it comes to SEO optimization. Now this text will also show up on the search results page as the title. So make sure your Title tag contains relevant keywords (starting with primary and then secondary) followed by your branding. 
Here, the title I’m using is: Drupal 9 Migration and Upgrade Services by Experts | Specbee

Main Title - Here’s where I add the main header (H1) of my page. I usually want this title to have keywords without making it too keyword-y (IYKYK) but this also needs to be attractive. Show your users what they can get with your product or service. Throwing in a question helps touch some pain points. Here, I have used keywords like “Easy”, “Fast”, “Seamless”, that resonate with the customer when they are looking for a Drupal migration service expert. 
I’m using this as the main title for my campaign : Looking for Easy, Fast and Seamless Drupal 9 migration services?

Step 3: Write a Description

The Description part is another paragraph type of CKEditor (we’re using version 4 here). I love using the CKEditor because it gives the editor so much control on styling elements and adding images of my choice. 

In this description, I want our prospective customers to know the process of our Drupal migration services. So along with adding an image of the steps, I will also add some text relevant to the message I want to convey.

Once I’m done typing out my text and styling it to an H2, I hit the Insert image icon, browse for the image and upload it.

 

Don’t forget to add an apt Alternative text to make sure your image is accessible to all. Drupal 9 makes it really easy for you to build an accessible website.

 

Once you hit Save, you will now see the image right there in your editor. You can align it as per your choice. I have chosen it to align with my text to the left.

  Step 4: Add credentials to build trust

It gets easier for prospective customers to trust you when they recognize familiar and impactful credentials on your landing page. It is important to have these trust factors in the first viewport. For our website, we have customized a Certificates component that has fields like title, image, and description. When I’m designing the page, I just have to pull out the certificates that I need to display (see image below).

  Step 5: Adding the form

Now that you have added enough charm and engaging elements in your landing page, here’s where the real deal happens - the form. Some important points to note about a landing page form :

  • Always make sure it is in the first viewport. That is, the user should be able to access it without having to scroll down.
  • Add other CTAs as you scroll down the page so that a click on that CTA again leads back to the form.
  • The form or the CTA button (Submit) should have a contrasting color when compared to the rest of the first viewport. This helps bring the user’s attention to it.
  • Try limiting the form elements to 5 fields or less. Not many users enjoy filling up long forms. 

In this campaign, both the CTA and the offer are in my form. We have used the very versatile Webform module that gives us the flexibility to create simple to complex forms very easily.

 

  • Webform Title - The title of my webform which will show up right above the form. I need to make sure it is clear and also has my offer. I have titled it as: Fill out this form to get your FREE Migration Audit Report 
  • Webform - This is a dropdown list of the webforms that we have created and used throughout the site. I have to select the one that suits my requirements at this point. I have chosen the ContactUs-Ads webform that we had created for our previous ad campaigns.
Step 6: URL alias

Having a user-friendly and impressionable URL comes with many benefits including that of search engine optimization. Once I’m done with designing the campaign, the next step is to give a friendly URL alias to my ad landing page. Drupal 9 has the URL alias module in core which helps in easily adding and editing aliases when needed.

On the right side of the page, click on the URL alias button and specify the URL you would like to use. I have used “/drupal-migration-testing” as mine.

  Step 7: Save it!

And I guess we’re done! Of course, I haven’t created a very elaborate page. I have only designed the first viewport of my campaign here in this example as I wanted to keep this short (1500+ words already!). Typically, I would also add other components like a bigger text block and a client list. 

If you don’t want to publish it yet, uncheck the Published checkbox and hit save. You can also Preview what your page will look like before you save it.

And now for the results!

Drupal Migration Testing

Final thoughts

I hope you’ve enjoyed reading this article as much as I did writing about my experience with landing pages. If you found this useful, please feel free to bookmark or share this article with your friends! Are you looking for a Drupal partner to help you build you a compelling, customized and interactive website where you as the editor have total control over your content? Get in touch with us and our Drupal experts would be happy to help!

Author: Shefali Shetty

​​Meet Shefali Shetty, Director of Marketing at Specbee. An enthusiast for Drupal, she enjoys exploring and writing about the powerhouse. While not working or actively contributing back to the Drupal project, you can find her watching YouTube videos trying to learn to play the Ukulele :)

Drupal Drupal Development Drupal Planet Subscribe to our Newsletter Now Subscribe Leave this field blank

Leave us a Comment

  Recent Blogs Image Build marketing landing pages quickly and easily with Drupal 9 Image What to expect in Drupal 10 Image Auditing your Drupal Website - A Checklist Want to extract the maximum out of Drupal? TALK TO US Featured Success Stories

Upgrading and consolidating multiple web properties to offer a coherent digital experience for Physicians Insurance

Upgrading the web presence of IEEE Information Theory Society, the most trusted voice for advanced technology

Great Southern Homes, one of the fastest growing home builders in the United States, sees greater results with Drupal 9

View all Case Studies

Pages