Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
This plugin's installer ran successfully
Server metrics [RAM: ▲0.49MB] [CPU: ▼2.96ms] Passed 4 tests
Analyzing server-side resources used by Twitch Wall
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.97 ▲0.50 | 39.76 ▼2.56 |
Dashboard /wp-admin | 3.83 ▲0.53 | 47.41 ▼4.56 |
Posts /wp-admin/edit.php | 3.88 ▲0.52 | 48.24 ▲2.74 |
Add New Post /wp-admin/post-new.php | 6.37 ▲0.48 | 81.92 ▼7.44 |
Media Library /wp-admin/upload.php | 3.69 ▲0.46 | 40.88 ▲5.52 |
[StreamWeasels] Twitch Wall /wp-admin/options-general.php?page=twitch-tv-wall | 3.67 | 34.84 |
[Add-On] Wall /wp-admin/admin.php?page=streamweasels-wall | 3.63 | 40.42 |
Install Plugins /wp-admin/plugins.php?page=tgmpa-install-plugins | 3.86 | 33.90 |
Server storage [IO: ▲0.47MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
The plugin installed successfully
Filesystem: 31 new files
Database: no new tables, 6 new options
New WordPress options |
---|
db_upgraded |
widget_recent-comments |
can_compress_scripts |
widget_theysaidso_widget |
theysaidso_admin_options |
widget_recent-posts |
Browser metrics Passed 4 tests
An overview of browser requirements for Twitch Wall
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,915 ▲154 | 13.45 ▼0.92 | 7.96 ▲6.37 | 40.09 ▲1.02 |
Dashboard /wp-admin | 2,240 ▲60 | 5.61 ▼0.11 | 82.40 ▼6.29 | 43.05 ▲0.74 |
Posts /wp-admin/edit.php | 2,157 ▲54 | 2.17 ▲0.14 | 36.79 ▲1.39 | 37.31 ▼0.66 |
Add New Post /wp-admin/post-new.php | 1,566 ▲28 | 23.17 ▲0.07 | 653.26 ▼14.93 | 59.50 ▼3.24 |
Media Library /wp-admin/upload.php | 1,456 ▲56 | 4.21 ▼0.01 | 94.76 ▼23.16 | 46.25 ▼2.69 |
[StreamWeasels] Twitch Wall /wp-admin/options-general.php?page=twitch-tv-wall | 1,551 | 9.39 | 288.71 | 79.80 |
[Add-On] Wall /wp-admin/admin.php?page=streamweasels-wall | 808 | 1.71 | 26.07 | 27.53 |
Install Plugins /wp-admin/plugins.php?page=tgmpa-install-plugins | 1,035 | 2.07 | 24.79 | 27.89 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | Verifying that this plugin uninstalls completely without leaving any traces
You still need to fix the following
- Zombie WordPress options were found after uninstall: 6 options
- db_upgraded
- widget_theysaidso_widget
- widget_recent-comments
- can_compress_scripts
- theysaidso_admin_options
- widget_recent-posts
Smoke tests 50% from 4 tests
Server-side errors 0% from 1 test
🔹 Test weight: 20 | This is a shallow check for server-side errors
Smoke test failed, please fix the following
- > GET request to /wp-admin/admin.php?page=streamweasels-wall
- > Warning in wp-content/plugins/ttv-easy-embed-wall/admin/class-streamweasels-wall-pro-admin.php+153
include(wp-content/plugins/admin/partials/streamweasels-admin-display.php): failed to open stream: No such file or directory
- > GET request to /wp-admin/admin.php?page=streamweasels-wall
- > Warning in wp-content/plugins/ttv-easy-embed-wall/admin/class-streamweasels-wall-pro-admin.php+153
include(): Failed opening 'wp-content/plugins/admin/partials/streamweasels-admin-display.php' for inclusion (include_path='.:/usr/share/php')
SRP 50% from 2 tests
🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Almost there! Just fix the following items
- 3× GET requests to PHP files trigger server-side errors or Error 500 responses:
- > PHP Fatal error
Uncaught Error: Call to undefined function plugin_dir_url() in wp-content/plugins/ttv-easy-embed-wall/admin/partials/streamweasels-wall-pro-admin-display.php:38
- > PHP Fatal error
Uncaught Error: Call to undefined function get_option() in wp-content/plugins/ttv-easy-embed-wall/public/partials/streamweasels-wall-pro-public-display.php:19
- > PHP Fatal error
Uncaught Error: Call to undefined function did_action() in wp-content/plugins/ttv-easy-embed-wall/includes/class-streamweasels-tgmpa.php:2109
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
There were no browser issues found
Optimizations
Plugin configuration 93% from 29 tests
readme.txt Passed 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
7 plugin tags: twitch, twitch api, twitch streams, twitch wall, twitch widget...
ttv-easy-embed-wall/twitch-wall.php 85% from 13 tests
The primary PHP file in "Twitch Wall" version 2.1.5 is used by WordPress to initiate all plugin functionality
The following require your attention:
- Main file name: Please rename the main PHP file in this plugin to the plugin slug ("ttv-easy-embed-wall.php" instead of "twitch-wall.php")
- Text Domain: Since WordPress version 4.6 the text domain is optional; if specified, it must be the same as the plugin slug
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
Everything looks great! No dangerous files found in this plugin7,886 lines of code in 23 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
JSON | 2 | 0 | 0 | 5,036 |
PHP | 12 | 640 | 2,161 | 2,245 |
Sass | 2 | 3 | 6 | 531 |
JavaScript | 5 | 16 | 29 | 72 |
CSS | 2 | 0 | 0 | 2 |
PHP code Passed 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
No complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.48 |
Average class complexity | 23.93 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 206.00 |
Average method complexity | 3.57 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 34.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 15 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 15 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 134 | |
▷ Static methods | 7 | 5.22% |
▷ Public methods | 106 | 79.10% |
▷ Protected methods | 23 | 17.16% |
▷ Private methods | 5 | 3.73% |
Functions | 9 | |
▷ Named functions | 9 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 4 | |
▷ Global constants | 1 | 25.00% |
▷ Class constants | 3 | 75.00% |
▷ Public constants | 3 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
1 PNG file occupies 0.06MB with 0.04MB in potential savings
Potential savings
Compression of 1 random PNG file using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
admin/img/sw-full-logo.png | 62.43KB | 26.24KB | ▼ 57.97% |