Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
The plugin installed gracefully, with no errors
Server metrics [RAM: ▲4.96MB] [CPU: ▲10.12ms] Passed 4 tests
A check of server-side resources used by Gutenberg Blocks by BlockArt – Gutenberg Editor, Website Builder, Page Builder with Sections, Template Library & Starter Sites
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 5.63 ▲2.16 | 49.17 ▲8.19 |
Dashboard /wp-admin | 9.14 ▲5.83 | 55.48 ▲7.58 |
Posts /wp-admin/edit.php | 9.28 ▲5.92 | 61.71 ▲10.53 |
Add New Post /wp-admin/post-new.php | 12.17 ▲6.29 | 875.98 ▲795.67 |
Media Library /wp-admin/upload.php | 9.15 ▲5.92 | 46.44 ▲14.19 |
Server storage [IO: ▲10.46MB] [DB: ▲0.12MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
This plugin installed successfully
Filesystem: 320 new files
Database: no new tables, 9 new options
New WordPress options |
---|
widget_theysaidso_widget |
theysaidso_admin_options |
widget_recent-comments |
can_compress_scripts |
_blockart_activation_time |
db_upgraded |
_blockart_activation_redirect |
widget_recent-posts |
_blockart_version |
Browser metrics Passed 4 tests
Gutenberg Blocks by BlockArt – Gutenberg Editor, Website Builder, Page Builder with Sections, Template Library & Starter Sites: an overview of browser usage
There were no issues detected in relation to browser resource usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,848 ▲86 | 14.67 ▲0.39 | 1.56 ▼0.25 | 36.90 ▼6.84 |
Dashboard /wp-admin | 2,249 ▲75 | 5.61 ▼0.04 | 100.37 ▲7.66 | 42.17 ▲0.92 |
Posts /wp-admin/edit.php | 2,154 ▲54 | 2.01 ▲0.05 | 37.84 ▼6.17 | 36.04 ▼3.32 |
Add New Post /wp-admin/post-new.php | 6,326 ▲4,785 | 21.48 ▼1.45 | 970.07 ▲369.23 | 41.40 ▼11.43 |
Media Library /wp-admin/upload.php | 1,458 ▲64 | 4.27 ▲0.09 | 96.25 ▼2.92 | 40.62 ▼2.61 |
Settings /wp-admin/admin.php?page=blockart#/settings | 1,477 | 10.94 | 367.29 | 94.23 |
Products /wp-admin/admin.php?page=blockart#/products | 1,215 | 6.81 | 246.71 | 52.48 |
Help /wp-admin/admin.php?page=blockart#/help | 1,197 | 6.56 | 133.21 | 61.93 |
Blocks /wp-admin/admin.php?page=blockart#/blocks | 1,569 | 10.57 | 254.98 | 64.18 |
Dashboard /wp-admin/admin.php?page=blockart#/dashboard | 1,220 | 6.61 | 136.66 | 60.11 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.12MB] 75% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
You still need to fix the following
- This plugin does not fully uninstall, leaving 9 options in the database
- widget_recent-comments
- widget_recent-posts
- theysaidso_admin_options
- _blockart_version
- can_compress_scripts
- _blockart_activation_time
- db_upgraded
- widget_theysaidso_widget
- _blockart_activation_redirect
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
The smoke test was a success, however most plugin functionality was not tested
SRP 50% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
The following issues need your attention
- 130× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/MayaInstaller.php:4
- > PHP Fatal error
Uncaught Error: Interface 'Sabberworm\\CSS\\Property\\AtRule' not found in wp-content/plugins/blockart-blocks/vendor/sabberworm/php-css-parser/src/Property/Charset.php:16
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/ChefInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/KanboardInstaller.php:13
- > PHP Fatal error
Uncaught Error: Class 'Sabberworm\\CSS\\RuleSet\\RuleSet' not found in wp-content/plugins/blockart-blocks/vendor/sabberworm/php-css-parser/src/RuleSet/DeclarationBlock.php:26
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/PiwikInstaller.php:9
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/KodiCMSInstaller.php:4
- > PHP Fatal error
Uncaught Error: Class 'Composer\\Installers\\BaseInstaller' not found in wp-content/plugins/blockart-blocks/vendor/composer/installers/src/Composer/Installers/OsclassInstaller.php:5
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is just a short smoke test looking for browser issues
There were no browser issues found
Optimizations
Plugin configuration 86% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file describes your plugin functionality and requirements and it is parsed to prepare the your plugin's listing
These attributes need to be fixed:
- Screenshots: Add descriptions for screenshots #1, #2, #3, #4, #5, #6, #7 in blockart-blocks/assets to your readme.txt
blockart-blocks/blockart.php 77% from 13 tests
"Gutenberg Blocks by BlockArt – Gutenberg Editor, Website Builder, Page Builder with Sections, Template Library & Starter Sites" version 2.0.8's main PHP file describes plugin functionality and also serves as the entry point to any WordPress functionality
You should first fix the following items:
- Text Domain: Since WordPress version 4.6 the text domain is optional; if specified, it must be the same as the plugin slug
- Main file name: Even though not officially enforced, the main plugin file should be the same as the plugin slug ("blockart-blocks.php" instead of "blockart.php")
- Description: The description should be shorter than 140 characters (currently 205 characters long)
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of programming languages used in this plugin; dangerous file extensions are not allowed
Everything looks great! No dangerous files found in this plugin146,945 lines of code in 299 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JavaScript | 41 | 10,622 | 11,680 | 93,365 |
JSON | 33 | 0 | 0 | 42,134 |
PHP | 221 | 1,893 | 5,316 | 10,680 |
Markdown | 2 | 166 | 0 | 707 |
CSS | 2 | 8 | 0 | 59 |
PHP code Passed 2 tests
This is a very shot review of cyclomatic complexity and code structure
Great job! No cyclomatic complexity issues were detected in this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.39 |
Average class complexity | 6.46 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 161.00 |
Average method complexity | 2.65 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 23.00 |
Code structure | ||
---|---|---|
Namespaces | 16 | |
Interfaces | 3 | |
Traits | 1 | |
Classes | 193 | |
▷ Abstract classes | 8 | 4.15% |
▷ Concrete classes | 185 | 95.85% |
▷ Final classes | 1 | 0.54% |
Methods | 639 | |
▷ Static methods | 48 | 7.51% |
▷ Public methods | 480 | 75.12% |
▷ Protected methods | 79 | 12.36% |
▷ Private methods | 80 | 12.52% |
Functions | 80 | |
▷ Named functions | 58 | 72.50% |
▷ Anonymous functions | 22 | 27.50% |
Constants | 35 | |
▷ Global constants | 12 | 34.29% |
▷ Class constants | 23 | 65.71% |
▷ Public constants | 23 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Using a strong compression for your PNG files is a great way to speed-up your plugin
2 PNG files occupy 0.01MB with 0.00MB in potential savings
Potential savings
Compression of 2 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
dist/f7346e9b478a5ef6043bcfd5a5e04922.png | 2.41KB | 1.42KB | ▼ 41.05% |
dist/013a9830e30a4609108d32425ebc776b.png | 4.00KB | 2.40KB | ▼ 40.01% |