{"id":333000,"date":"2026-08-17T11:35:19","date_gmt":"2026-08-17T11:35:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/dokimiai-try-on-for-woocommerce\/"},"modified":"2026-08-17T11:34:52","modified_gmt":"2026-08-17T11:34:52","slug":"dokimiai-woo","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/dokimiai-woo\/","author":23524269,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.0","stable_tag":"1.5.0","tested":"7.0.4","requires":"7.0","requires_php":"7.4","requires_plugins":null,"header_name":"DokimiAI Try-On for WooCommerce","header_author":"DokimiAI","header_description":"Real-time virtual try-on for WooCommerce earrings, running in the customer's browser. Camera video never leaves the device.","assets_banners_color":"fbeef5","last_updated":"2026-08-17 11:34:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/dokimiai.io\/en\/","header_author_uri":"https:\/\/dokimiai.io\/en\/company\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":39,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.5.0":{"tag":"1.5.0","author":"dokimiai","date":"2026-08-17 11:34:52"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3651098,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3651098,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3651098,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3651098,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.5.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[147393,276095,162370,148223,286],"plugin_category":[45],"plugin_contributors":[276096],"plugin_business_model":[],"class_list":["post-333000","plugin","type-plugin","status-publish","hentry","plugin_tags-augmented-reality","plugin_tags-earrings","plugin_tags-face-detection","plugin_tags-virtual-try-on","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-dokimiai","plugin_committers-dokimiai"],"banners":{"banner":"https:\/\/ps.w.org\/dokimiai-woo\/assets\/banner-772x250.png?rev=3651098","banner_2x":"https:\/\/ps.w.org\/dokimiai-woo\/assets\/banner-1544x500.png?rev=3651098","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/dokimiai-woo\/assets\/icon-128x128.png?rev=3651098","icon_2x":"https:\/\/ps.w.org\/dokimiai-woo\/assets\/icon-256x256.png?rev=3651098","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>DokimiAI is a virtual try-on service (https:\/\/dokimiai.io). This plugin is its\nWooCommerce client: it adds a \"Try On\" button to your product pages so customers\ncan see your earrings on themselves in real time using their webcam.<\/p>\n\n<p>For privacy, the try-on itself runs entirely in the shopper's browser. The webcam\nvideo is never uploaded and the face landmarks are never sent anywhere \u2014 face\ntracking (MediaPipe Face Mesh) and image compositing happen locally on the\nvisitor's device. What the DokimiAI service provides is the try-on runtime: a set\nof fixed, versioned, immutable static assets that the browser downloads when the\ntry-on modal is opened (see \"External services\" below for the exact files and\ntheir checksums).<\/p>\n\n<p>No account is required. Paid plans of the DokimiAI service (hosted at\ndokimiai.io) add optional service-side features; this plugin is complete and\nfully functional on its own.<\/p>\n\n<p>An internet connection is required, because the browser downloads the try-on\nruntime assets from the service when the try-on is opened.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Real-time earring try-on on the product page, in a modal opened by a \"Try On\" button.<\/li>\n<li>In-modal color and size selection: choosing a color switches the overlay image instantly; the choice is written back to the product's selectors so the cart keeps it.<\/li>\n<li>Drag each earring with one finger to fine-tune its position, and zoom the camera with a three-finger gesture.<\/li>\n<li>Share the result: copy a caption, save the snapshot, or post to X \/ use the native share sheet \u2014 with an optional light skin-smoothing for social posts.<\/li>\n<li>Per-product enable toggle, category, and per-color overlay image.<\/li>\n<li>Fully translatable: English is the source language, with a Japanese translation bundled.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin is a client of the DokimiAI virtual try-on service\n(https:\/\/dokimiai.io) and relies on it for one thing: delivering the browser\ntry-on runtime.<\/p>\n\n<p>The virtual try-on runs entirely in the visitor's browser using the MediaPipe\nFace Mesh runtime (Google, Apache License 2.0). The non-readable runtime and\nmodel binaries are served by the DokimiAI service from\nhttps:\/\/cdn.dokimiai.io\/ over a fixed, versioned, immutable path:<\/p>\n\n<ul>\n<li>\/mediapipe\/face_mesh\/0.4.1633559619\/face_mesh_solution_simd_wasm_bin.wasm\nSHA256: fb9e9cfe8b83a914e40eab2efd3b0d92a61f82a7c968589f223ab2a7e331d314<\/li>\n<li>\/mediapipe\/face_mesh\/0.4.1633559619\/face_mesh_solution_packed_assets.data\nSHA256: dbe5905c582c0462cdaea17e7e6ecea92edaa8cccc515c5e2e7291f2cbb5fb99<\/li>\n<li>\/mediapipe\/face_mesh\/0.4.1633559619\/face_mesh.binarypb\nSHA256: 139546bf05aebb33e2611b6b945f3a1629c316ca924e33cec1547c85ddef9f53<\/li>\n<\/ul>\n\n<p>These are the unmodified artifacts from the npm package @mediapipe\/face_mesh\nversion 0.4.1633559619 (https:\/\/www.npmjs.com\/package\/@mediapipe\/face_mesh).\nThe versioned path is immutable \u2014 a runtime update publishes a new version\ndirectory rather than overwriting these files \u2014 so the served bytes always match\nthe checksums above.<\/p>\n\n<p>When (and only when) a visitor opens the try-on modal on a try-on-enabled product\npage, their browser downloads these three files. No personal data is sent with\nthese requests: the requests carry no query string, no cookies, and no visitor\nidentifiers. Camera frames and face landmarks are never uploaded.<\/p>\n\n<p>All JavaScript this plugin uses \u2014 including the MediaPipe Face Mesh solution\nentry point and the WebAssembly\/asset-loader glue \u2014 is bundled inside the plugin\nand loads from your own site; only the three non-readable binaries above are\ndelivered by the service.<\/p>\n\n<p>The optional \"Powered by DokimiAI\" credit (off by default) is an ordinary\nhyperlink to dokimiai.io; the plugin does not transmit any data to that URL.<\/p>\n\n<p>Service terms and privacy:<\/p>\n\n<ul>\n<li>Terms of service: https:\/\/dokimiai.io\/en\/legal\/terms\/<\/li>\n<li>Privacy policy:   https:\/\/dokimiai.io\/en\/legal\/privacy\/<\/li>\n<\/ul>\n\n<h3>Bundled Third-Party Libraries &amp; Source Files<\/h3>\n\n<p>This plugin bundles the following third-party JavaScript, served from your own\nsite:<\/p>\n\n<ul>\n<li>MediaPipe Face Mesh and Camera Utils (Google) \u2014 Apache License 2.0.\nSource: https:\/\/github.com\/google-ai-edge\/mediapipe\nThe full license text is bundled at assets\/mediapipe\/LICENSE \u2014 a verbatim\ncopy of the upstream LICENSE file (the Apache License 2.0 together with the\nUTF-8 decoder notice it carries). The upstream project ships no separate\nNOTICE file.<\/li>\n<\/ul>\n\n<p>The bundled MediaPipe JavaScript consists of exactly these files under\nassets\/mediapipe\/ (unmodified vendor files):<\/p>\n\n<ul>\n<li>camera_utils\/camera_utils.js \u2014 camera frame-loop helper; enqueued by the\nplugin on product pages with try-on enabled.<\/li>\n<li>face-mesh\/face_mesh.js \u2014 Face Mesh solution entry point; enqueued by the\nplugin alongside camera_utils.js.<\/li>\n<li>face-mesh\/face_mesh_solution_packed_assets_loader.js \u2014 model asset loader;\nrequested by face_mesh.js when the try-on starts (from your own site).<\/li>\n<li>face-mesh\/face_mesh_solution_simd_wasm_bin.js \u2014 WebAssembly runtime glue;\nrequested by face_mesh.js when the try-on starts (from your own site).<\/li>\n<li>LICENSE \u2014 the Apache License 2.0 text covering the above and the runtime\nbinaries delivered by the service (see \"External services\").<\/li>\n<\/ul>\n\n<p>The three non-readable runtime binaries these files load\n(face_mesh_solution_simd_wasm_bin.wasm, face_mesh_solution_packed_assets.data,\nand face_mesh.binarypb) are not bundled; they are delivered by the DokimiAI\nservice as described under \"External services\".<\/p>\n\n<h4>Source code and build<\/h4>\n\n<p>This plugin ships its complete, human-readable source. The in-browser try-on\nwidget (assets\/js\/dokimiai-tryon.js) is compiled with esbuild from the\nTypeScript sources included under build\/src\/.<\/p>\n\n<p>To rebuild the widget from source:<\/p>\n\n<ol>\n<li>Install Node.js 18 or later.<\/li>\n<li>From the build\/ directory, run: npm install<\/li>\n<li>Then run: npm run build:widget<\/li>\n<\/ol>\n\n<p>This regenerates assets\/js\/dokimiai-tryon.js from build\/src\/tryon-core.ts using\nthe esbuild configuration in build\/build.mjs. The node_modules directory is not\nshipped; npm install restores the exact build tool (esbuild) declared in\nbuild\/package.json. No minified code is shipped without its corresponding\nsource.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to the <code>\/wp-content\/plugins\/dokimiai-woo<\/code> directory, or install it through the Plugins screen.<\/li>\n<li>Activate the plugin through the Plugins screen.<\/li>\n<li>Edit a product, open the \"DokimiAI Try-On\" box, enable it, choose the category, and set the overlay image.<\/li>\n<\/ol>\n\n<p>Note: Overlay images must use https:\/\/ URLs. On HTTPS stores, http:\/\/ images\nare blocked by the browser (mixed content) and will not display. Use the\n\"Add image\" button or enter an https:\/\/ URL.<\/p>\n\n<p>Note: The visitor's browser needs an internet connection the first time it opens\nthe try-on, in order to download the runtime assets described under \"External\nservices\". They are then cached by the browser.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20require%20woocommerce%3F\"><h3>Does it require WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. WooCommerce 10.9 or later must be installed and active.<\/p><\/dd>\n<dt id=\"what%20does%20the%20plugin%20download%20from%20an%20external%20server%3F\"><h3>What does the plugin download from an external server?<\/h3><\/dt>\n<dd><p>Only the three MediaPipe runtime binaries listed under \"External services\",\nserved by the DokimiAI service CDN (cdn.dokimiai.io). They are fetched by the\nvisitor's browser when the try-on modal is opened, and then cached. All of the\nplugin's JavaScript loads from your own site. See \"External services\" for the\nexact files, checksums, and privacy details.<\/p><\/dd>\n<dt id=\"is%20camera%20video%20uploaded%20anywhere%3F\"><h3>Is camera video uploaded anywhere?<\/h3><\/dt>\n<dd><p>No. Face tracking and compositing happen locally in the visitor's browser. The\ncamera image and face landmarks are never uploaded.<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20dokimiai%20account%3F\"><h3>Do I need a DokimiAI account?<\/h3><\/dt>\n<dd><p>No. No account and no key is needed. This plugin is complete and fully\nfunctional on its own.<\/p><\/dd>\n<dt id=\"the%20try-on%20opens%20but%20the%20product%20image%20%28earring%29%20does%20not%20appear\"><h3>The try-on opens but the product image (earring) does not appear<\/h3><\/dt>\n<dd><p>The overlay image URL must use https:\/\/. On HTTPS stores, http:\/\/ images are\nblocked by the browser as mixed content. Use the \"Add image\" button, or enter\nan https:\/\/ URL.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Removed the 20-product limit \u2014 try-on can now be enabled on any number of products. The plugin has no built-in restrictions of any kind.<\/li>\n<li>Added uninstall cleanup: the plugin's own options are removed when it is deleted. Per-product try-on settings are kept, so re-installing restores them.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>The MediaPipe Face Mesh runtime binaries (.wasm\/.data\/.binarypb) are now delivered by the DokimiAI service CDN (cdn.dokimiai.io) from a fixed, versioned, immutable path with SHA256 checksums published in the readme, instead of being bundled in the plugin. This also reduces each store's own bandwidth. All of the plugin's JavaScript continues to load from your own site.<\/li>\n<li>Added an \"External services\" description of the service, the server called, and the account requirement, per the WordPress.org plugin guidelines for service plugins.<\/li>\n<li>Documented that an internet connection is required for the browser to fetch the runtime assets.<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Removed an unused, empty (0-byte) file from the MediaPipe runtime (face_mesh_solution_simd_wasm_bin.data \u2014 referenced by nothing).<\/li>\n<li>Documented the complete MediaPipe file inventory in the readme; every file is verified to load at runtime via network capture on a clean WordPress install.<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Removed the remaining plan constants and filters \u2014 the plugin is a single free edition with no plan branching.<\/li>\n<li>Removed an unused REST endpoint (local usage counter) and its admin display.<\/li>\n<li>Documented the 20-product try-on limit in the feature list.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>First WordPress.org release. Provides earring try-on, sharing, and an optional skin-smoothing touch-up.<\/li>\n<li>The \"Try On\" button CSS is enqueued via wp_add_inline_style() rather than printed inline.<\/li>\n<li>Try-on can be enabled on up to 20 products.<\/li>\n<li>Fully internationalized: the PHP UI and the JavaScript bundle are translatable; English is the source, with a Japanese translation bundled.<\/li>\n<\/ul>","raw_excerpt":"Real-time virtual try-on for WooCommerce earrings, powered by the DokimiAI service. Camera video never leaves the shopper&#039;s browser.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/333000","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=333000"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dokimiai"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=333000"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=333000"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=333000"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=333000"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=333000"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=333000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}