{"id":400750,"date":"2026-11-13T11:11:21","date_gmt":"2026-11-13T11:11:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/battery-surf-bench\/"},"modified":"2026-11-14T11:42:33","modified_gmt":"2026-11-14T11:42:33","slug":"battery-surf-bench","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/battery-surf-bench\/","author":17608021,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"7.1.4","requires":"7.0","requires_php":"8.1","requires_plugins":null,"header_name":"Battery Surf Bench","header_author":"Erdem Bircan","header_description":"Benchmarks battery drain by simulating real-world web surfing.","last_updated":"2026-11-14 11:42:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/erdembircan\/battery-surf-bench","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":116,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"erdembircan","date":"2026-11-13 11:10:55","revision":3800260},"1.1.0":{"tag":"1.1.0","author":"erdembircan","date":"2026-11-14 11:42:33","revision":3801789}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3800260,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3800260,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3800260,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3800260,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3801789,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"landingPage\":\"\\\/wp-admin\\\/admin.php?page=bsbench-start-benchmark\",\"preferredVersions\":{\"php\":\"8.3\",\"wp\":\"latest\"},\"features\":{\"networking\":true},\"login\":true,\"steps\":[{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"battery-surf-bench\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3800260,"resolution":"1","location":"assets","locale":"","width":2880,"height":1800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3800260,"resolution":"2","location":"assets","locale":"","width":2880,"height":1800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3800260,"resolution":"3","location":"assets","locale":"","width":2880,"height":1800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3800260,"resolution":"4","location":"assets","locale":"","width":2880,"height":1800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3800260,"resolution":"5","location":"assets","locale":"","width":2880,"height":1800}},"screenshots":{"1":"The cockpit mid-run: the surfer reads its way through a bundled article while the cockpit's header tracks the battery, both drain rates and the projected full-battery runtime.","2":"A finished run's postcard, reopened from the Sessions screen: the measured drain staircase against the projected full discharge, with the run's key figures.","3":"Setting up a run: a fixed duration or a target drop, a ready-made surfer personality or your own mix, and the playback speed.","4":"The Sessions screen keeps every run, with its status, battery span, drain rates and projected full-battery runtime.","5":"The settings screen: choose the pages the surfer visits from the five bundled pages and your own posts and pages, and put them in order."}},"plugin_section":[],"plugin_tags":[98238,6650,247,50497,1591],"plugin_category":[54],"plugin_contributors":[178166],"plugin_business_model":[],"class_list":["post-400750","plugin","type-plugin","status-publish","hentry","plugin_tags-battery","plugin_tags-benchmark","plugin_tags-performance","plugin_tags-power","plugin_tags-testing","plugin_category-security-and-spam-protection","plugin_contributors-erdembircan","plugin_committers-erdembircan"],"banners":{"banner":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/banner-772x250.png?rev=3800260","banner_2x":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/banner-1544x500.png?rev=3800260","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/icon-128x128.png?rev=3800260","icon_2x":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/icon-256x256.png?rev=3800260","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/screenshot-1.png?rev=3800260","caption":"The cockpit mid-run: the surfer reads its way through a bundled article while the cockpit's header tracks the battery, both drain rates and the projected full-battery runtime."},{"src":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/screenshot-2.png?rev=3800260","caption":"A finished run's postcard, reopened from the Sessions screen: the measured drain staircase against the projected full discharge, with the run's key figures."},{"src":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/screenshot-3.png?rev=3800260","caption":"Setting up a run: a fixed duration or a target drop, a ready-made surfer personality or your own mix, and the playback speed."},{"src":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/screenshot-4.png?rev=3800260","caption":"The Sessions screen keeps every run, with its status, battery span, drain rates and projected full-battery runtime."},{"src":"https:\/\/ps.w.org\/battery-surf-bench\/assets\/screenshot-5.png?rev=3800260","caption":"The settings screen: choose the pages the surfer visits from the five bundled pages and your own posts and pages, and put them in order."}],"raw_content":"<!--section=description-->\n<p>Battery Surf Bench is a WordPress plugin that measures your device's real-world battery drain. It unleashes a simulated web surfer on a course of content pages, samples your battery for the whole run, and projects an honest drain rate from what it actually measured.<\/p>\n\n<p>No lab hardware and no server of your own: just your browser, your battery, and a surfer that never gets tired.<\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=X8CwzH_P4-g<\/p>\n\n<h4>Made for WordPress Playground<\/h4>\n\n<p>Battery Surf Bench is built to run in WordPress Playground, which runs a complete WordPress site, server and database included, inside your browser tab. <a href=\"https:\/\/wordpress.org\/plugins\/battery-surf-bench\/?preview=1\">Try Battery Surf Bench in your browser<\/a>: Playground starts a fresh site with the plugin installed and its cockpit open, with no server to rent, nothing to install and no account to create.<\/p>\n\n<p>A battery benchmark should be something anyone with a laptop can run, not only people who already run a WordPress site. It measures the device in front of you, so the whole test, site included, runs on that device. Every Playground starts from the same clean WordPress, which keeps results comparable across laptops and browsers and keeps benchmarking away from any real site you run. The site, its database and your recorded sessions stay in your browser.<\/p>\n\n<p>Playground autosaves your recent sites in the browser; choose Save in browser storage to keep a site and its sessions for good. In Playground the page server runs on your device too, so a run also counts the work of serving each page: compare Playground runs with other Playground runs. The plugin installs on any WordPress site as well, if you'd rather use your own.<\/p>\n\n<h4>An experiment in browser-native software<\/h4>\n\n<p>Battery Surf Bench is also an experiment. Software that needs a server usually needs someone to host it, and software that doesn't usually has to stay small. We wanted to find out whether a desktop-grade application, with live dashboards, real-time charts, settings and a database of results, can skip that trade-off. WordPress provides the application platform, WordPress Playground handles everything a server and a database would, and you open a link and use the app.<\/p>\n\n<h4>Highlights<\/h4>\n\n<ul>\n<li><strong>A surfer, not a script.<\/strong> The simulated visitor makes its own decisions as it browses. No two runs play out the same.<\/li>\n<li><strong>A live cockpit.<\/strong> A dedicated dashboard shows the whole run as it happens: battery readouts, projections, and the surfer itself browsing in a live viewport.<\/li>\n<li><strong>Honest math.<\/strong> Drain rates come from regression over the sampled battery curve, and no number is reported before the data can support one.<\/li>\n<li><strong>Every run remembered.<\/strong> Each benchmark is saved as a session you can browse, reopen, and compare.<\/li>\n<li><strong>Yours to shape.<\/strong> Choose the workload, the surfer's personality, the run mode, and the pace.<\/li>\n<\/ul>\n\n<h4>A benchmark that browses like a person<\/h4>\n\n<p>The surfer is not a scripted macro. At every moment, its possible behaviors compete for its attention, weighted by its personality and by what the current page actually offers, and the winner plays out. The behavior profile is tuned from published battery-benchmark methodologies and real-user browsing telemetry, and it shows:<\/p>\n\n<ul>\n<li><strong>It reads.<\/strong> Genuine reading pauses on text-dense pages, with occasional scroll-backs to re-read something it passed.<\/li>\n<li><strong>It watches.<\/strong> Video pages get real watch time through the actual embedded player, started, watched, and paused by the surfer itself.<\/li>\n<li><strong>It admires.<\/strong> Content images earn a lingering dwell, cursor and all.<\/li>\n<li><strong>It fidgets.<\/strong> Idle cursor drift, micro-scrolls, even the occasional absent-minded text selection.<\/li>\n<li><strong>It gets bored.<\/strong> Leaving a page is a decision the surfer makes, not a timer expiring.<\/li>\n<\/ul>\n\n<p>Ready-made surfer personalities cover the spectrum, from a patient, text-hungry scholar to a restless doomscroller. Want something more specific? Open the customizer and shape your own visitor against a fixed budget: how briskly it moves, how long it stays put, how strongly text pulls at it, how strongly images and video do, and how twitchy it gets when idle.<\/p>\n\n<h4>A course worth surfing<\/h4>\n\n<p>Five bundled pages give the surfer a balanced, realistic workload out of the box: a long-form article, an image gallery, a skimmable listicle, a video feature, and a link hub. Each carries its own self-contained design, so the workload stays consistent no matter which theme the site runs. Prefer your own content? The settings screen lets you build a custom course from any of your site's posts and pages (those render through your theme, exactly as visitors see them), reorder it freely, and mix in the bundled pages wherever you like. Pages later removed or unpublished quietly drop out of the rotation without breaking your saved configuration.<\/p>\n\n<h4>The cockpit<\/h4>\n\n<p>Every run happens in the cockpit, a purpose-built dashboard that stays out of the data's way:<\/p>\n\n<ul>\n<li><strong>Two run modes:<\/strong> benchmark for a fixed duration (5 minutes to 4 hours), or until the battery drops a chosen number of percentage points.<\/li>\n<li><strong>Three speeds:<\/strong> run at true-to-life 1x, or compress time at 4x or 10x for demos and quick checks.<\/li>\n<li><strong>Live readouts:<\/strong> battery level, a responsive 10-minute drain rate, a stable whole-session rate, and projected time-to-empty, all updating as the samples come in.<\/li>\n<li><strong>A watchable run:<\/strong> the surfer browses inside a live viewport, with playful captions narrating what it's up to.<\/li>\n<li><strong>Run protection built in:<\/strong> a screen wake-lock keeps the display from sleeping mid-run, a leave-confirmation guard saves you from an accidental tab close, and a finish chime announces a run that completes on its own (mutable, and it remembers your choice).<\/li>\n<li><strong>Charger-aware:<\/strong> a benchmark won't start while you're plugged in. If the charger connects mid-run, the run pauses automatically and resumes when you unplug, with the plugged-in time excluded from the math.<\/li>\n<\/ul>\n\n<h4>Numbers you can trust<\/h4>\n\n<ul>\n<li><strong>Regression, not guesswork.<\/strong> Battery level is sampled continuously and fitted with least-squares regression, so a brief plateau or a noisy reading doesn't skew the verdict.<\/li>\n<li><strong>No premature verdicts.<\/strong> The plugin waits for enough distinct battery steps before quoting a rate. It would rather say \"calibrating\" than make something up.<\/li>\n<li><strong>Clear projections.<\/strong> Time-to-empty is projected live and drawn on the summary chart: the measured drain staircase against a dashed full-discharge projection.<\/li>\n<li><strong>A summary worth keeping.<\/strong> Every finished run produces an illustrated postcard-style summary with the verdict, the drain chart, and stat tiles for elapsed time, battery levels at start and end, points dropped, both drain rates, and time-to-empty.<\/li>\n<\/ul>\n\n<h4>Every run remembered<\/h4>\n\n<p>Every run, whether it finished, was stopped early, or got interrupted, is stored as a benchmark session:<\/p>\n\n<ul>\n<li><strong>Sessions screen:<\/strong> a sortable admin grid of every past run with status, mode, browser, battery span, drain rates, and duration.<\/li>\n<li><strong>Session detail:<\/strong> reopen any session to its full summary, rebuilt from the stored samples.<\/li>\n<li><strong>Portable data:<\/strong> each session keeps the browser and OS it ran on, the exact run configuration, and the complete sample log, all available over the site's own REST API for your own analysis.<\/li>\n<li><strong>One-click start:<\/strong> launch a fresh benchmark straight from the admin bar, anywhere in wp-admin.<\/li>\n<\/ul>\n\n<h4>Private by design<\/h4>\n\n<ul>\n<li><strong>Operator-only, everywhere.<\/strong> The cockpit, the surf pages, the sessions, the settings: all require WordPress's <code>manage_options<\/code> capability, which administrators have. Public visitors can't reach any of it.<\/li>\n<li><strong>No footprint.<\/strong> Course pages are served as ephemeral, in-memory pages, so nothing new appears on your site. All they leave behind is WordPress's usual cache of the video page's YouTube embed code, as any embed does.<\/li>\n<li><strong>No telemetry.<\/strong> All sampling and math happen locally in your browser, and sessions save only to your own site. The one outside contact is YouTube, which serves the video on the bundled course's video page (see External services below).<\/li>\n<\/ul>\n\n<h4>Speaks your language<\/h4>\n\n<p>Fully translation-ready. Help translate Battery Surf Bench into your language on <a href=\"https:\/\/translate.wordpress.org\/projects\/wp-plugins\/battery-surf-bench\/\">translate.wordpress.org<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>Battery Surf Bench connects to one external service: YouTube, which hosts the video on the bundled course's video page, \"Watch: Nineteen Seconds That Started It All\". Video is part of everyday browsing and one of the heaviest loads a browser puts on a battery, so the course includes it.<\/p>\n\n<p>Nothing is sent until an operator starts a benchmark, and the video only ever appears on the operator-gated benchmark page, never on your public site. When the surfer reaches the video page during a run:<\/p>\n\n<ul>\n<li>Your site's server fetches the video's embed code from YouTube's oEmbed endpoint, sending the video's address, as WordPress does for any YouTube link in a post.<\/li>\n<li>The operator's browser loads YouTube's embedded player from youtube-nocookie.com, YouTube's privacy-enhanced embed. As with any YouTube embed, YouTube receives the operator's IP address and browser details, and once the video plays it may set cookies and collect usage data under its own terms and privacy policy.<\/li>\n<\/ul>\n\n<p>The same happens for a YouTube video on any of your own pages that you add to the course. The plugin itself sends no telemetry or analytics anywhere: every measurement stays in the operator's browser and is saved only to your own site.<\/p>\n\n<ul>\n<li>YouTube: https:\/\/www.youtube.com\/<\/li>\n<li>YouTube Terms of Service: https:\/\/www.youtube.com\/t\/terms<\/li>\n<li>Google Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h3>Source code<\/h3>\n\n<p>The scripts and styles in the plugin's <code>build\/<\/code> folder are compiled from TypeScript and SCSS. The complete source, with its build configuration, is public on GitHub: https:\/\/github.com\/erdembircan\/battery-surf-bench<\/p>\n\n<p>To build it yourself, install Node.js 24 with pnpm, and PHP 8.1 or later with Composer. Then, in a clone of the repository:<\/p>\n\n<ol>\n<li><code>pnpm install<\/code> and <code>composer install<\/code> install the dependencies.<\/li>\n<li><code>composer zip:production<\/code> runs the lints and tests, compiles <code>src\/<\/code> into <code>build\/<\/code>, assembles the finished plugin in <code>dist\/battery-surf-bench\/<\/code>, and zips it into <code>zip\/battery-surf-bench.zip<\/code>, exactly as it ships.<\/li>\n<\/ol>\n\n<h3>Third-party resources<\/h3>\n\n<p>Battery Surf Bench bundles the following third-party resources. Each is under a license compatible with the GPL.<\/p>\n\n<h4>Fonts<\/h4>\n\n<p>The five typefaces ship as unmodified woff2 files from their @fontsource packages, under the SIL Open Font License 1.1 (https:\/\/opensource.org\/licenses\/OFL-1.1).<\/p>\n\n<ul>\n<li>Anton: Copyright 2020 The Anton Project Authors (https:\/\/github.com\/googlefonts\/AntonFont)<\/li>\n<li>Caveat: Copyright 2014 The Caveat Project Authors (https:\/\/github.com\/googlefonts\/caveat)<\/li>\n<li>Hanken Grotesk: Copyright 2021 The Hanken Grotesk Project Authors (https:\/\/github.com\/marcologous\/hanken-grotesk)<\/li>\n<li>Pacifico: Copyright 2018 The Pacifico Project Authors (https:\/\/github.com\/googlefonts\/Pacifico)<\/li>\n<li>Space Mono: Copyright 2016 The Space Mono Project Authors (https:\/\/github.com\/googlefonts\/spacemono)<\/li>\n<\/ul>\n\n<h4>Icons<\/h4>\n\n<ul>\n<li>The surfer's pointing-hand cursor is adapted from Font Awesome Free's \"hand-pointer\" icon, Copyright 2026 Fonticons, Inc. (https:\/\/fontawesome.com), licensed under CC BY 4.0 (https:\/\/creativecommons.org\/licenses\/by\/4.0\/). Changes: the finger grooves are removed, the frame is padded, and the shape is drawn over an outline.<\/li>\n<li>Several interface icons (reset, save, check, chevron, warning, external link, and speaker on and off) are taken or adapted from Feather, Copyright (c) 2013-2023 Cole Bemis (https:\/\/github.com\/feathericons\/feather), MIT License.<\/li>\n<\/ul>\n\n<h4>JavaScript libraries<\/h4>\n\n<p>Compiled into the scripts in <code>build\/<\/code>:<\/p>\n\n<ul>\n<li>DataViews and Icons from the Gutenberg project, Copyright 2016-2026 by the contributors (https:\/\/github.com\/WordPress\/gutenberg), GPL-2.0-or-later.<\/li>\n<li>Ariakit, Copyright (c) 2025-present Ariakit FZ-LLC (https:\/\/github.com\/ariakit\/ariakit), MIT License.<\/li>\n<li>use-sync-external-store, Copyright (c) Meta Platforms, Inc. and affiliates (https:\/\/github.com\/facebook\/react), MIT License.<\/li>\n<li>clsx, Copyright (c) Luke Edwards (https:\/\/github.com\/lukeed\/clsx), MIT License.<\/li>\n<li>remove-accents, Copyright (c) 2015 Marin Atanasov (https:\/\/github.com\/tyxla\/remove-accents), MIT License.<\/li>\n<li>dnd kit, Copyright (c) 2021, Claud\u00e9ric Demers (https:\/\/github.com\/clauderic\/dnd-kit), MIT License.<\/li>\n<\/ul>\n\n<h4>PHP libraries<\/h4>\n\n<p>In <code>vendor\/<\/code>, each with its license file:<\/p>\n\n<ul>\n<li>psr\/container, Copyright (c) 2013-2016 container-interop and Copyright (c) 2016 PHP Framework Interoperability Group (https:\/\/github.com\/php-fig\/container), MIT License.<\/li>\n<li>Composer's autoloader, Copyright (c) Nils Adermann, Jordi Boggiano (https:\/\/github.com\/composer\/composer), MIT License.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<p>The quickest way to run a benchmark is WordPress Playground, with nothing to install: <a href=\"https:\/\/wordpress.org\/plugins\/battery-surf-bench\/?preview=1\">try it in your browser<\/a>, unplug your laptop, and start a benchmark from the cockpit.<\/p>\n\n<p>To install it on your own site:<\/p>\n\n<ol>\n<li>Upload the plugin to <code>wp-content\/plugins\/battery-surf-bench<\/code>, or install it through the Plugins screen.<\/li>\n<li>Activate the plugin through the Plugins screen in WordPress.<\/li>\n<li>Unplug your laptop, open the Battery Surf Bench admin menu (or the Start Benchmark shortcut in the admin bar), and start a benchmark from the cockpit.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20my%20own%20wordpress%20site%3F\"><h3>Do I need my own WordPress site?<\/h3><\/dt>\n<dd><p>No. Open the plugin in WordPress Playground (see Installation) and it runs on a fresh WordPress site inside your browser, with nothing to host or install. It works on your own site too.<\/p><\/dd>\n<dt id=\"who%20can%20run%20a%20benchmark%3F\"><h3>Who can run a benchmark?<\/h3><\/dt>\n<dd><p>Only users with WordPress's <code>manage_options<\/code> capability, which administrators have. The cockpit, the simulated surf pages and all recorded sessions are gated behind that capability; anonymous and unauthorised users cannot reach them.<\/p><\/dd>\n<dt id=\"which%20browsers%20are%20supported%3F\"><h3>Which browsers are supported?<\/h3><\/dt>\n<dd><p>Battery measurement relies on the Battery Status API, currently available in Chromium-based browsers (Chrome, Edge, Opera and others) on battery-powered devices. The cockpit detects support up front and blocks the run with a clear warning, instead of reporting a fabricated rate, if the browser cannot provide battery readings.<\/p><\/dd>\n<dt id=\"can%20i%20benchmark%20my%20own%20pages%20instead%20of%20the%20bundled%20ones%3F\"><h3>Can I benchmark my own pages instead of the bundled ones?<\/h3><\/dt>\n<dd><p>Yes. The settings screen lets you compose the surf course from your own posts and pages alongside (or instead of) the bundled ones, and reorder the sequence freely. Pages that are later trashed or unpublished drop out of the rotation automatically without breaking your saved configuration.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20contact%20external%20servers%20or%20track%20users%3F\"><h3>Does the plugin contact external servers or track users?<\/h3><\/dt>\n<dd><p>The plugin itself sends no telemetry, analytics or phone-home requests. Its one outside contact is YouTube, for the video on the bundled course's video page: during a run, your site fetches that video's embed code from YouTube, and the operator's browser loads YouTube's player. The External services section of the description lists what is sent and when, with links to YouTube's terms and privacy policy.<\/p><\/dd>\n<dt id=\"why%20is%20there%20a%20youtube%20video%20in%20the%20surf%20course%3F\"><h3>Why is there a YouTube video in the surf course?<\/h3><\/dt>\n<dd><p>Because real-world browsing includes video, and video is one of the heaviest things a browser asks of a battery; leaving it out would understate the drain. The video plays in YouTube's privacy-enhanced embed: it never autoplays, it stays muted, and the surfer decides when to watch and when to move on. It is only ever shown to the operator running a benchmark, and a YouTube embed on your own selected surf pages behaves the same way during a run.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New: the plugin page can start Battery Surf Bench in WordPress Playground, right in your browser.<\/li>\n<li>Fix: the readme's WordPress Playground links are now clickable.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Find out how fast web surfing really drains your battery, with a benchmark that browses like a human instead of a script.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/400750","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=400750"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/erdembircan"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=400750"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=400750"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=400750"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=400750"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=400750"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=400750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}