Masonite Framework is a modern and developer-centric Python web framework, built with two important goals in mind — batteries included and an extremely extensible architecture. It’s perfect for beginner developers getting into their first web applications as well as experienced developers that need to utilize the full potential of Masonite to get their applications done.
As an open source framework, Masonite strives to have a thriving community. They encourage developers (beginner or experienced) to contribute to their repository. At the same time, Joe, creator of Masonite, wanted to ensure only healthy code is introduced to their framework.
To integrate Continuous Quality in their workflow, Masonite was looking for a static code analysis solution that would help:
DeepSource’s native integration with GitHub requires minimal configuration. It took a few clicks and less than ten minutes to complete the setup, giving Masonite a jump start. Additionally, the checks fit right in the pull request workflow, facilitating detection of issues early in the development life cycle.
Firstly, the analysis time is low. Everytime a contributor raises a pull request, DeepSource automatically runs the analysis and returns results within seconds. “DeepSource is always the first check to come back and I can see it quickly, review it and make changes in a minute or two,” said Joe.
Secondly, it checks the codebase against 520+ types of issues and detects even hard to spot issues for Python, saving Masonite’s maintainers a lot of time that was earlier spent on manual code reviews. Joe said, “I can rely on DeepSource to check a plethora of other things I no longer need to spend a lot of time on.”
DeepSource analyzer is highly customizable. Joe easily defined thresholds in the dashboard to ensure the analysis suits the code context. For instance, he tweaked the rules to ignore an issue on the file pattern. It improved the relevancy of issues raised as well as boosted the confidence while merging a pull request when the check passed.
DeepSource also tags verbose explanations with the issues which Joe thinks help them become better developers.
Along with experienced developers, Masonite also encourages first-time contributors with zero knowledge making the framework more vulnerable to errors & code inconsistencies. Since DeepSource scans the code for style inconsistencies, it creates a virtual synergy amongst contributors encouraging them to adhere to consistent coding standards, and ensure Masonite’s maintainability.