How Our Ratings Work
Through our years of working with Drupal, we've found that there's more than a few gotchas when trying to figure out what the right module is for a given integration need. Many apps have no apparent integration option, others have so many it's difficult to know which to pick.
We've tried to simplify the process of looking for Drupal integrations by summarizing the state of various modules for each app, in one central place per app. We draw on our experience with various modules to assess their capabilities.
How do we rate each Drupal integration?
First and foremost, by experience. Our developers analyze the modules available and rate their stability, usage, known issues, and community response rate. If any additional development or custom code is required, as is often the case, we take into consideration how difficult the development process is.
From here, we take reputable feedback from the Drupal community into careful consideration and deliver it objectively back to you so an informed next-step can be taken.
The Rating System
Below is a quick rundown of what our ratings mean and some of the criteria we use to assess various facets of each module.
Module stability is based on the reported maintenance status, development status, bug response rate, reported installs, and latest commits. For example, a module with 10 installs is generally considered to be less stable than one with 1,000+ reported installs. Unfortunately, just because a module says it's being actively maintained doesn't mean that's actually true. We sift through the indicators to determine stability more acurately.
Default Features is determined by how much the module can do compared to how much the targeted service allows for. What this means varies by the app and the module in question. Generally we base this on how much of the target service the module actually covers. Note that this doesn't mean that it's necessarily simple to take advantage of the features, merely that they're present. In fact, usually the more features a module has, the higher the complexity. We'll mark a module has "Developers Only" if the module has good features but is only designed to be an API module.
Integration Complexity is rated based on how much effort is required, whether that's writing custom code or configuration. Low complexity would involve little to no code. Moderate complexity would be around 100 lines of custom code. High complexity involves working with the app's development team and support ticketing system to do proper testing of custom code. We also take into account how many things can go wrong and the magnitude of the consequences if they do; sometimes the complexity comes on the testing side.
Documentation is pretty straightforward. We look at how well documented the module is as well as how well documented the API is for the integration. A good rating here could look like simple documentation for the module but great documentation for the API of the given app. We compare the documentation to the capabilities of the module or API than to just a flat quantity. Sometimes a couple of paragraphs is actually sufficient.