xDruple: An Object Oriented Path Forward for Drupal 7

Thursday, January 25, 2018

xTuple introduces open source xDruple to the Drupal Development Community at DrupalCon 2018

At the 2018 DrupalCon North America held April 9-13 at the Music City Center in Nashville, Tenn., xTuple will introduce the community to xDruple, available under the Lesser General Public License (LGPL). xDruple is a developer-oriented, object-oriented programming (OOP) application framework for Drupal 7 which is compatible with major core and contributed Drupal modules.

Drupal 8 was a huge leap in the right direction and improved the developers’ experience drastically. Unfortunately, a large portion of the open source community remains left behind and unable to utilize best development practices introduced by Drupal 8. As Drupal founder Dries Buytaert mentioned during his #Driesnote at the 2017 DrupalCon in Baltimore, Md., nearly one million websites are “stuck” on Drupal 7. Almost a year later, that number has barely decreased according to Drupal.org’s core statistics.

Josh Fischer, Product Manager for xTupleCommerce, asks, "What if there was a way to ease the transition from Drupal 7 to Drupal 8 or even Drupal 9? Or, what if Drupal developers could realize the modern and efficient benefits of Drupal 8 while working in Drupal 7?"

Fischer leads the development team engineering revolutionary business-to-business (B2B) eCommerce Web Portals which are integrated with open source xTuple Enterprise Resource Planning (ERP) — to solve productivity and customer relationship issues for every business type and size. 

Inadvertently along the way, xTuple's development team solved the transition from Drupal 7 to Drupal 8 (or Drupal 9) dilemma with the xDruple system. Built over the last four years, xDruple integrates seamlessly with Drupal 7 and with business management system xTuple, the open source Enterprise Resource Planning (ERP).

xTuple's solution is general enough to be useful to others, and it can help organizations work with enterprise-grade Drupal 7 installations by:

  • Improving maintainability, speeding up development and simplifying support of applications
  • Providing an enterprise level application framework on top of Drupal 7 that integrates with major core and contributed APIs
  • Embracing best development practices in Drupal 7 including unit testing, code-driven development, and maximum OOP capabilities of PHP7.1
  • Shortcutting major Drupal APIs to speed up development of the most critical and complicated components like custom form element and field types
  • Dependency management with Composer
  • Separating as much business logic code from Drupal global functions as possible, allowing unit testing of that business logic
  • Offering the ability to statically check code, making refactoring and maintenance seamless by using PHP7.1 and the best OOP practices
  • Targeting maximum compatibility between existing code and the upcoming Drupal 9 to speed up migration from Drupal 7 to Drupal 8 or future versions

Fischer writes extensively for xTuple University: Introducing xDruple — An efficient object-oriented Drupal 7 and blogs about xDruple — Solution for upgrading from Drupal 7 to Drupal 8 and xDruple: Benefits of Drupal 8 in Drupal 7.

Early Access for Drupal Developers

Currently, xTuple is migrating and documenting all components of the framework to public access on GitHub. Drupal Developers interested in being one of the first to see the code may sign-up for early access.