Skip to content
Redfin Solutions logoRedfin Solutions logoContact


a computer circuit board background

DDEV, You're Still the One!

By Chris | June 12, 2024

It's been a number of years since we made the switch to DDEV, and have regretted it not once on any given day.

DrupalCon Portland 2024 Logo

DrupalCon Portland: A Recap from Redfin CTO, Chris Wells

By Chris | May 13, 2024

DrupalCon Portland was a success! Read on to see Chris' reflection on topics at the event such as Contribution Day, Project Browser, and more.

Webby Awards logo

University of New England's Website Awarded 2024 Webby Honoree

The 2024 Webby Awards finalists have been announced, and we're excited to have UNE's site recognized as an honoree!


What to Expect During the Redfin Solutions Discovery Process

You have a site that needs upgrading, or an idea that needs implementing. We’re here to help. Here’s what to know in order to get the most out of a successful discovery with Redfin Solutions.

Organizers meeting

Event Organizers Working Group (EOWG)

By Leslie | December 26, 2023

Leslie Glynn, Manager of Customer Success and Project Browser Initiative lead, talks about the drupal EOWG.

A restaurant's menu on a table

The 'Disclosure Menu' Module

Learn about Redfin's new menu solution.

Polypane: A Command Center for Developers

By Jessica | September 13, 2023

Polypane operates as a command center for developers – a central hub that consolidates essential tools, streamlining processes and maximizing efficiency.

The CKEditor5 logo adjusted by a wrench with the Drupal logo on the handle

How to Build Custom CKEditor5 Plugins for Drupal

Drupal 10 is here, and with it comes CKEditor5 and a whole new paradigm for custom text editor plugins.

A building at Princeton University with ivy on the walls

DrupalCamp New Jersey 2023: My Retrospective

By Chris | April 04, 2023

Chris had the opportunity to present and attend DrupalCamp New Jersey in 2023. What follows is the recap of sessions he attended as well as his enthusiasm for the Contribution Day.

Notion logo

Making Developers' Lives Easier with Notion

Let's talk about Notion - a productivity and project management web application that we all love here at Redfin, and you will too.

Redfin team 2022

Redfin Solutions Gives Back to Drupal and You Can Too

By Leslie | February 03, 2023

Drupal has been the cornerstone of Redfin Solutions' success building digital experiences since 2009. Starting with Drupal 4.7, we have created websites primarily in the non-profit and higher-ed space using Drupal. Patrick Corbett and Chris Wells, Redfin’s co-owners, have always subscribed to the idea of giving back to the Drupal community that has provided the CMS framework used in their business. They believe that agencies like theirs that benefit from the Drupal technology should be “makers” instead of “takers” in the Drupal space. There are so many ways to do that.

Portrait of contractor, Rishi

From Pune to Portland: Contractor Spotlight on Rishi Kulshreshtha

Meet Rishi, one of two international contractors here at Redfin Solutions. Rishi is a Drupal developer who started at our company in the summer of 2021. He currently resides in Pune, India, with plans to relocate to the United States in 2023.

Coding and Coronavirus: An Interview with Jessica Nolette

Meet Jessica, Redfin Solutions’ Junior Front-End Developer. Jessica’s journey to becoming a developer is unique and untraditional, catalyzed by the events of the coronavirus pandemic.

Where you can find Redfin Solutions at DrupalCon Prague 2022?

By Leslie | September 20, 2022

Drupal icon over open books.

Leading Drupal’s Project Browser Strategic Initiative

By Chris | April 12, 2022

Project Browser is one of Drupal’s six current strategic initiatives aimed at providing a friendlier experience to new users and site builders by making it easy to find and install modules right from a Drupal site. Redfin’s Chris Wells and Leslie Glynn are the initiative leads appointed by Drupal’s founder, Dries Buytaert.

red sign with white text reading for hire

Job Opening: Operations Coordinator

By Patrick | April 11, 2022

A person holds a globe under one arm.

Optimizing Drupal for Nonprofit Organizations

By Mariele | March 27, 2022

Nonprofits have unique needs in the digital sphere. In this post, we’ll explore how Redfin leverages Drupal’s flexibility and scalability to help nonprofit organizations reach diverse audiences and achieve goals that further their missions.

Magnifying glass hovering over a laptop keyboard

How to Develop a Drupal SEO Strategy

By Mariele | February 08, 2022

Learn about the state of SEO today and follow our checklist for increasing organic traffic to your site by making the most of Drupal’s core features and SEO modules.

Red for hire sign

Open Position for Full-Stack Drupal Developer

A group of students in black graduation caps

Scalable Drupal Websites for Higher Education

Higher education websites need to speak to a number of audiences—prospective and current students, faculty and staff, and alumni are just a few! Moreover, higher education websites need to represent a number of stakeholders—academic departments, athletics, facilities, advancement, and more! With all of these users and stakeholders, institutions need the ability to centrally control their brand, offer flexible solutions, and integrate with different software platforms and systems. Drupal’s robust open-source community ensures all this is possible.

Delta Site System logo next to Redfin Solutions logo

Redfin’s Delta Site System: Helping Clients Create Customizable Websites at Scale

Redfin's Delta Site System (DSS) helps clients who have a need to quickly launch and maintain new Drupal websites. DSS gives our clients the ability to define a “template” website, so that new sites can use the same themes (look and feel), modules (enhanced functionality), and configuration (content types and taxonomies), while also allowing for customization at the individual website level.

Computer monitor on desk showing orange and white human stick figure

Accessible Website Design and Why It Matters

Is your website WCAG compliant? The Web Content Accessibility Guideline (WCAG) is an internationally recognized set of guidelines that can help ensure your website is adhering to accessibility best practices. After all, it’s important that the people who view your website can complete tasks that align with your organization’s goals.

White arrows on wood

Upgrading Drupal 7 to Drupal 9: What to expect

As a Drupal 7 user or website owner, it’s important to understand what’s next for your web presence as Drupal 7 and Drupal 8 reach their respective end-of-life. This guide will help you understand what to expect so that you can plan accordingly and get a sense for the resources you’ll need to allocate to upgrade Drupal 7 to 9.

People working together with laptops

How to Find the Right Drupal Web Design Agency

Learn the right questions to ask and the red flags to avoid when choosing a Drupal website design agency.

A vacuum cleaning up confetti after a party

Migrate Drupal WYSIWYG to Paragraphs

How to build an automated migration that can intelligently divide ambiguous WYSIWYG content into your specific destination paragraphs.

A film slide held up to the light

Drupal Migrate Basic Fields to Entity References

The Drupal migration pipeline wants each source entity to go to one destination entity, but a single node may need to transform its text fields and list text fields into several entity references. So how do you break up data from one entity and migrate it into multiple entities?

White lego bricks

Migrating into Layout Builder

By Chris | May 26, 2021

This year at DrupalCon North America Redfin Solutions’ CTO Chris Wells had the honor to speak for the first time at a DrupalCon. His presentation Migrating into Layout Builder had the privilege of being one of the most well-attended sessions of the conference.

A boat stuck on a beach

Connecting a Transact SQL Database to Drupal

How to connect a Transact SQL database to Drupal and migrate its content.

A series of connected pipelines

Migration Custom Source Plugin

Example code implementing hook_cron

Custom Migration Cron Job

An outline of different options for running a custom migration on a cron job in Drupal 8.

People working together with laptops

Design for Better Communication with Developers

As a designer and front-end developer, the infamous designer-developer handoff has often been between me and myself. Having spent a lot of time in both roles, as well as having worked closely with other designers and developers, I’ve learned a few practices that help me to answer developer questions right from the start.

Accessible Entry sign on brick wall

Writing Accessible Content in a Content Management System

Accessibility isn’t just a concern for web developers. With content being dynamically created, there are a few points content editors can keep in mind to make sure their content is accessible to everyone. Following accessibility standards helps non-visual users, but can also help all users find and understand the information they’re looking for.

Child holding colorful crayons

Creating a User-Centered Website

Rural Aspirations came to us with the idea for Community Learning for ME. The goal of this project was to create a tool for educators and families to find reliable resources specific to their needs. We knew that for this to be successful it was crucial to keep our focus on the user.

Drupal Association logo with surf

Support the Drupal Association During Uncertain Times

By Leslie | March 26, 2020

The Drupal Association faces a lot of uncertainty regarding DrupalCon Minneapolis due to the COVID-19 pandemic. As one of the community-elected members of the Drupal Association Board of Directors, I am reaching out to the Drupal community for your support. So how can you and the rest of the Drupal Community help?

dictionaries in multiple languages

Display Multilingual Drupal 8 Views

The Drupal 8 core Views module is a big part of why Drupal 8 websites work so well. It takes advantage of Drupal’s structure to create features from recommended content to directories and search pages. However, you can quickly run into complications when implementing a view, especially if your website is multilingual.

The Redfin team rebuilds the website to reflect the new brand.

Redfin Solutions Rebrand

As 2019 slows down, it’s time to show off the most exciting project we’ve been working on: the complete Redfin Solutions rebrand. We created a new brand narrative and visual identity to represent the modern and powerful technology we use, and to better reflect our core values.

splash awards logo on waves background

2019 International Splash Awards

At the beginning of October, Redfin Solutions received a nomination for the 2019 International Splash Award in the Tools & Apps category. We worked with Savant to create a custom Fixture Design Tool for their website, which we progressively decoupled from their Drupal website using React.


Leveraging Custom and Third Party Libraries in React Native: Part 3

By Jacob | September 17, 2019

This is the last in a series of blog posts about creating an app with React Native. To get started with React Native, read the Basics of React Native: Part 1. If you want to include content from a Drupal website in the app, read Integrating Content with React Native: Part 2.

lots of builders working on a house together

Integrating Drupal Content with a React Native App: Part 2

By Jacob | September 10, 2019

This is the second of three of blog posts about creating an app with React Native. To get started with React Native, read the Basics of React Native. Once you are familiar with the system and have an app, it is time to fill it out with content.

yellow building crane against blue sky

Basics of React Native: Part 1

By Jacob | September 03, 2019

Redfin Solutions started using React Native in early June when a client needed an app that could integrate with their Drupal website. This is the first in a series of three blog posts that will cover what we learned and what we found the most useful while using React Native.


Lightspeed Interview with Jacob

After another summer working as the Intern Developer at Redfin Solutions, Jacob Morin leaves us to go back to the University of Maine for the fall semester. Before Jacob left, he answered some questions about his internship in a lightspeed interview.

blank tag with leaf

The Meaning of Google Tag Manager's Non-Interaction Hit Events

By Patrick | August 21, 2019

When adding custom Analytics events via Google Tag Manger, make sure to set "Non-Interaction Hit" to "True" if you don't want that event to count towards the bounce rate. Otherwise, if the event fires on a page, GA will think you didn't bounce and subsequently set that session's page bounce rate to 0.

Ruth headshot

Lightspeed Interview with Ruth

This week marks the third year that Ruth Leopold, our unicorn Designer and Front-end Developer has been with Redfin. In celebration of this workiversary, she answered some questions in a Lightspeed Interview.

three monitors on a desk

Embedding a React App in a Drupal 8 Site

By Chris | April 10, 2019

Lots of people in the Drupal community are eager to learn React these days, following Dries's announcement that React is coming to Drupal. At NEDCamp in 2018 I presented on how to dip your toe into embedding a react application into a Drupal framework.

laptop and a coffee cup on a desk

How to Override CKEditor Build Config in Drupal 8

We recently ran into a situation in which we wanted to override this configuration in order to disable a plugin. There is some information in this `build-config.js` file about replacing it with a non-minified build for development purposes, but nothing about overriding it. Here's how we did it.

white arrow and blue background painted on bricks showing the onward, the way forward

Progressive Decoupling: A React App in Drupal

By Chris | November 15, 2018

Redfin will be presenting a session there on our toe-dipping foray into the world of "progressively decoupling" Drupal. Recently, I was on an episode to explore a little bit more about React and Drupal together--this should whet your appetite for the session at NEDCamp.

library with books in a pattern sorted by color

Getting Started with Herman: Living Style Guides and Pattern Libraries

By Chris | March 29, 2018

At Redfin, we've tried a number of these tools, including Sam Richard's Style Prototyping approach, and attended trainings for Pattern Lab. What attracted me to Herman was the common predicament of the small-to-medium project and its budget's ability (or inability) to deliver on these prototypes.

facebook login on a computer

Controlling Facebook Preview Images with the Metatag Module

Have you ever posted a link to facebook and wondered where the image comes from in the post preview? Ever wondered if this image is even correct or relevant to what you are posting?

birds migrating

Understanding Drupal 8's Migrate API

By Chris | November 20, 2017

Redfin has implemented many Drupal 8 migrations to date both from CSV data sources and legacy Drupal sites (Drupal 6 and 7). As a result, we want to share with you what we've learned in hopes of saving you the time often spent in the trials and errors of data migration.

laptop showing code on screen and coffee on coffee table

Adding tabindex and jQuery keypress to make anchor-less links more accessible

A twig template modification added tabbing capability to the accordion and with just a few lines of javascript we invoked a click event listener on a return/enter keypress event to show/hide accordion content.

wanderer searching for something and looking into the sun over green hills

Why are my CiviCRM Smart Group counts different from the "Edit Search Criteria" search results?

By Chris | November 06, 2017

In CiviCRM, there's a feature called "Smart Groups," which lets you automatically create a group of contact records based on a search criteria. Maybe it's a tag, maybe it's a certain type of contact, or maybe it's members from a certain region.

salesforce logo sign on building

Pulling Salesforce Data in as Taxonomy Terms in D7

Salesforce Suite is a group of modules for Drupal that allows for pulling data from Salesforce into Drupal, as well as pushing data from Drupal to Salesforce. In this blog post, we’ll look at using that hook to pull three Salesforce custom fields (select lists) into Drupal as taxonomy terms in three vocabularies.

person at laptop holding credit card

CashNET module for Ubercart / Drupal 7.x

By Chris | September 21, 2017

Redfin is happy to announce that thanks to the efforts of vetchneons, we have at long last released a -dev version of the CashNET module for Ubercart in Drupal 7. CashNET is a payment processor used by a lot of institutions in the higher education realm.

screen with a google analytics dashboard

Add to Dashboard Report Button Removed from Google Analytics

By Patrick | August 17, 2017

Google seems to be slowly favoring their newer, more fully-featured, Data Studio over existing Analytics dashboard and reports. Recently, the "Add to Dashboard" functionality was removed.

Drupal 8 contrib (contribution) modules

Installing D8 Contrib Modules

In Drupal 8 there are a handful of ways you can install contrib modules to your project and here we’ll discuss some of the pros and cons of each.

character set

Handling High Unicode Character Sets in Web Fonts

When odd characters are displayed instead of the intended text, it’s often due to the font not supporting “high unicode” characters like the marcon character over the letter “a”: ā. Checking the google font @import url in a SASS file showed that the latin extended character set was not included.

locked door

Installing (FREE) Let's Encrypt SSL Certificates on Acquia

By Chris | May 02, 2017

Recently, one of our Enterprise clients asked for some help installing SSL certificates on their Acquia-hosted Stage and Development environments. Rather than pay, we decided to try it out with Let's Encrypt.

windows symbol

Auto Hiding Scrollbars for IE10, IE11, & Edge

Recently, we had some pesky scrollbars hanging around in IE11 and Edge that were showing up unnecessarily. To hide them when the user isn't interacting with them, here's what you can do.

Redfin Solutions homepage with lots of other tabs open

"Close Tabs to the Right" with Safari

By Chris | February 01, 2017

I've recently switched my "daily driver" for web surfing to Safari on my Mac. But there's definitely one thing I missed, and that's "Close tabs to the right."

green sea urchin shell on beach

Redfin's Front-End Shell: Bundler, Susy, Compass, Breakpoint, and more!

By Chris | November 16, 2016

While we at Redfin don't really yet have a full on base theme for every project, one thing we do use is our "bundler shell." This forms the basis of any Drupal 7 or 8 theme we build, and in fact, is really just the framework for the front-end.

cat hiding under blanket

Hide Empty View: Block Display

You create a great block display in Views. You configure it just right for your pages and then, it shows up, or part of it does, on pages where there is no content to fill it? As a relative newbie to Drupal Views, this stumped me for a bit.

page with ribbon bookmark

Hide “Page Title” quickly using Display Suite in Drupal 7

By Chris | April 03, 2013

I wish that it were more intuitive to find, but for all those who struggle with “hiding” the page titles, Display Suite makes it really easy to choose to hide the page title for a specific Content Type or for a particular Node.

lots of colorful tabs in an open book

Sanitizing Drupal's default $tabs

By Chris | March 19, 2013

I am constantly re-working Drupal's tabs to look a little bit more like a pile of bricks, and I've finally decided to stop reinventing the wheel and to document the CSS that makes them display more sanely. I hope this snippet helps some other folks, too.

girl holding camera in front of her face

Easy Image Captions in Drupal 7

For some reason I have a huge mental block when it comes to image captions. So, I recently tried jCaption and found that it can do everything Image Caption did, plus it's more flexible.

metal mailboxes

Stashing stuff in $_SESSION in your form's _submit handler in Drupal

By Chris | December 10, 2010

Today I was trying to figure out why in the name of all that good in the world why I couldn't use $_SESSION in my form's _submit handler. As it turns out, I actually CAN put stuff into $_SESSION, it's just that when you want to pull something OUT of $_SESSION later, that's not where it is.

arrow carved into wall

Create a Redirect in Drupal's .htaccess For The Base URL

By Patrick | July 26, 2010

I recently needed to redirect a client's traffic from their old URL to a new one. In this case, they wanted any traffic going to plain to go to and all other traffic to go to[equivalent URI] (e.g., -->

windows keyboard

Replicate MySQL's MD5() Function in SQL Server 2005 Using HASHBYTES()

By Patrick | March 23, 2009

MySQL and PostgreSQL's MD5() functions are nice, simple, ways to hash your data. Unfortunately, SQL Server 2005 and up (sorry, in order to get it working in SQL Server 2000, you'll need to try a stored procedure), you can use the HASHBYTES() function.

Mac and coffee cup on table with scenic background

Update Subversion on Mac OS X

By Patrick | March 18, 2009

If you just want to update your subversion client (command line), read on.

mac laptop

Creating a .bash_profile on your mac

By Patrick | March 18, 2009

A typical install of OS X won't create a .bash_profile for you. When you want to run functions from your command line, this is a must-have.