Non-profit organisations are in a constant need to improve their reach and visibility. Digital provides the ability for a message to reach more people all around the world. Drupal is used by hundreds of NGOs to create, customize, and amplify their mission in order to effect real-world change.
I would like to thank QED42 for providing Ashoka with a team of curious, excited, always-on-their-toes, hardcore professionals.
Build Team Manager, Ashoka, Innovators for the Public, Global Office, Washington DC.
"One of my colleagues asked me why I was so happy to get back to work after just a week's holiday and I realized that it's because I missed working with my QED42 team so much that it felt great to be back at work! I would like to thank QED42 for providing Ashoka with a team of curious, excited, always-on-their-toes, hardcore professionals. What makes this relationship even more special is the heart and soul these developers bring into their work and workplace. Over the three years, we have grown from one Senior developer to a full-fledged development team that successfully migrated, manages, and sustains a complex, multilingual website for an organization with a presence in over 90 countries. We look forward to many more successful adventurous journeys with you folks!"
- Maintaining the technical infrastructure
- Migrating Ashoka.org’s parent website from Drupal 7 to Drupal 8
- Content architecture enhancements to support their new website design
- Localization has been the primary requirement from the start of the project. Every page on the site has the potential of having a localized version for all the countries.
- We could have achieved this in multisite setup. However, maintaining a multisite setup could be a big challenge for smaller teams that maintain a site for all the countries. Thus we chose to go the multilingual way.
- We used Drupal core’s in-built ability to create a language for each country. (For eg. EN-IN, EN-US, FR-FR, FR-SN, etc.)
- There are standard blocks and localized blocks for each region/country. As per the selected regions, the localized block content keeps changing. (For eg. client testimonials, featured stories, etc.)
- We created a hierarchy of languages which allowed an option to fall-back to shared content. (For eg. Content created in EN (English) is served on both EN-IN and EN-US; however, the content editors from each country can choose to override the entire content or a part of it.)
We migrated the website from Drupal 7 to Drupal 8 while maintaining the existing technical infrastructure.
- Server Maintenance - Clients websites were on AWS servers, and they required maintenance and CD (continuous deployment).
- Website maintenance - This included keeping the core and contrib updated along with bug fixes.
- The contrib modules in Drupal 7 core did not completely support localization and component-based architecture. Migrating to Drupal 8 solved that.
- Content types, taxonomy, vocabulary, and other configurations were developed in Drupal 8 to enable optimizations.
- We then mapped data in the respective fields from Drupal 7 to Drupal 8’s content architecture and conducted mapping for 93 Drupal entities which included migration for content types, paragraphs, taxonomies, users, media, URL aliases, and redirects.
- The team wrote automated scripts for automated migrations and executed the migration to Drupal 8.
- Ashoka wanted to redesign their website using component-based design.
- The existing content architecture did not support this.
- We changed the content architecture that facilitated the heavy use of paragraphs to build components.
Ashoka used salesforce to maintain their fellow data. Our integration allowed seamless syncing of data from Salesforce to our Drupal 8 website.Image
SOLR search integration
SOLR search is implemented for search indexing. The entire Drupal content is indexed in SOLR, allowing a faster search.Image
Third-party recruitment portal
The integration enabled fetching of all the updates and changes made to the career portal (Jobvite) onto Ashoka’s career page.Image