{"id":244905,"date":"2025-08-07T14:17:58","date_gmt":"2025-08-07T14:17:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/cubelaunch\/"},"modified":"2025-12-02T12:30:39","modified_gmt":"2025-12-02T12:30:39","slug":"cubelaunch","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/cubelaunch\/","author":23302908,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.3","stable_tag":"1.0.3","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"CubeLaunch","header_author":"DigiBrief","header_description":"Displays rotatable shapes with customisable faces for shortcode or block editor insertion, or a separate Coming Soon override.","assets_banners_color":"2b2b2b","last_updated":"2025-12-02 12:30:39","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/paypal.me\/digibrief","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":10,"downloads":420,"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":"digibrief","date":"2025-08-07 14:36:43"},"1.0.1":{"tag":"1.0.1","author":"digibrief","date":"2025-08-08 12:38:02"},"1.0.2":{"tag":"1.0.2","author":"digibrief","date":"2025-08-25 10:13:50"},"1.0.3":{"tag":"1.0.3","author":"digibrief","date":"2025-12-02 12:30:39"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3341105,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.gif":{"filename":"icon-256x256.gif","revision":3341105,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3341105,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3341105,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":{"cubelaunch\/shape":{"apiVersion":2,"name":"cubelaunch\/shape","title":"CubeLaunch Shape","category":"widgets","description":"Embeds a configured CubeLaunch 3D shape.","keywords":["cubelaunch","shape","3d","webgl","cube","pyramid"],"supports":{"html":false,"align":true},"attributes":{"shapeId":{"type":"number","default":0},"sizePreset":{"type":"string","enum":["small","medium","large"],"default":"medium"},"align":{"type":"string","default":"none"},"overrideBackgroundColor":{"type":"string","default":""},"caption":{"type":"string","default":""}},"textdomain":"cubelaunch","editorScript":"file:..\/..\/build\/index.js","editorStyle":"file:..\/..\/build\/index.css","style":"file:..\/..\/build\/style-index.css","render":"cubelaunch_render_shape_block"}},"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3341105,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3341105,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3341105,"resolution":"3","location":"assets","locale":""}},"screenshots":{"1":"screenshot-1.png \u2013 Configuring the \u201cComing Soon\u201d page with a 3D pyramid.","2":"screenshot-2.png \u2013 Adding and customizing a CubeLaunch Shape block in the editor.","3":"screenshot-3.png \u2013 Rendered interactive 3D shapes on the front-end."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[783,1220,802,80,805],"plugin_category":[43],"plugin_contributors":[246042],"plugin_business_model":[],"class_list":["post-244905","plugin","type-plugin","status-publish","hentry","plugin_tags-3d","plugin_tags-block","plugin_tags-coming-soon","plugin_tags-shortcode","plugin_tags-webgl","plugin_category-customization","plugin_contributors-digibrief","plugin_committers-digibrief"],"banners":{"banner":"https:\/\/ps.w.org\/cubelaunch\/assets\/banner-772x250.png?rev=3341105","banner_2x":"https:\/\/ps.w.org\/cubelaunch\/assets\/banner-1544x500.png?rev=3341105","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/cubelaunch\/assets\/icon-128x128.gif?rev=3341105","icon_2x":"https:\/\/ps.w.org\/cubelaunch\/assets\/icon-256x256.gif?rev=3341105","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/cubelaunch\/assets\/screenshot-1.png?rev=3341105","caption":"screenshot-1.png \u2013 Configuring the \u201cComing Soon\u201d page with a 3D pyramid."},{"src":"https:\/\/ps.w.org\/cubelaunch\/assets\/screenshot-2.png?rev=3341105","caption":"screenshot-2.png \u2013 Adding and customizing a CubeLaunch Shape block in the editor."},{"src":"https:\/\/ps.w.org\/cubelaunch\/assets\/screenshot-3.png?rev=3341105","caption":"screenshot-3.png \u2013 Rendered interactive 3D shapes on the front-end."}],"raw_content":"<!--section=description-->\n<p>Bored of static content? CubeLaunch lets you embed interactive 3D <strong>cubes<\/strong> and <strong>pyramids<\/strong> powered by WebGL\u2014via a Gutenberg block, a shortcode, or a site\u2011wide \u201cComing Soon\u201d overlay.<\/p>\n\n<p><strong>Key features<\/strong>\n* <strong>Interactive 3D<\/strong>: drag to spin (X\/Y) with inertia; pinch to zoom on touch devices.\n* <strong>Cubes &amp; pyramids<\/strong> with <strong>custom faces<\/strong> (images from the Media Library; built\u2011in 1:1 cropper).\n* <strong>Gutenberg block<\/strong> with <strong>Small \/ Medium \/ Large<\/strong> presets + optional background\u2011color override.\n* <strong>Shortcode<\/strong> to embed anywhere shortcodes are supported.\n* <strong>Mobile\u2011friendly scrolling<\/strong>: on phones we add slim, invisible \u201cscroll rails\u201d around the canvas so the page still scrolls naturally even when the cube is under your thumb (side rails via CSS; top\/bottom rails via a tiny JS helper). All adjustable via CSS variables.\n* <strong>Coming Soon overlay<\/strong> (optional): a full\u2011page teaser with your shape, copy and a form (shortcodes\/HTML).<\/p>\n\n<p><strong>Quick mobile tips<\/strong>\n- Want smaller cubes on phones? Set <code>--cl-mobile-size<\/code> per instance (or change the global defaults in <code>:root<\/code>).\n- Want easier scrolling near the cube? We already add invisible \u201crails\u201d on phones. Tweak <code>--cl-rail-width<\/code> (sides) and <code>--cl-rail-height<\/code> (top\/bottom). Set them to <code>0<\/code> to disable.<br \/>\n<strong>Note:<\/strong> Mobile \u201crails\u201d affect embedded cubes (Block\/Shortcode), <strong>not<\/strong> the Coming Soon overlay.<\/p>\n\n<p><strong>Why Choose CubeLaunch?<\/strong><\/p>\n\n<p>Whether you're looking to create a unique product highlight, an engaging call-to-action, or simply add a touch of interactive flair to your website, CubeLaunch provides an easy-to-use solution. Its \"Coming Soon\" mode is perfect for building anticipation and capturing leads before your full site goes live. Ideal for portfolios, digital agencies, product launches, or any site wanting to make a memorable first impression.<\/p>\n\n<p><strong>CubeLaunch Pro (optional)<\/strong>\nUnlock extras when you need them:\n* Video textures for dynamic faces\n* Stocks &amp; crypto charts on faces (auto\u2011updating)\n* Clickable face URLs to link to products or pages\n* Texture rotation options\n* Optional Z\u2011axis spin<\/p>\n\n<p><strong>See it in action \u2192<\/strong> <strong><a href=\"https:\/\/digibrief.com\">DigiBrief.com<\/a><\/strong><\/p>\n\n<h3>Basic Usage<\/h3>\n\n<p><strong>A) Coming Soon overlay<\/strong>\n- Admin \u2192 <strong>CubeLaunch \u2192 Coming Soon Settings<\/strong>.\n- Configure the shape + faces, text, and (optionally) a signup form (shortcode or HTML).\n- Enable the overlay. Visitors who aren\u2019t logged in will see your Coming Soon page.<\/p>\n\n<p><strong>B) Gutenberg Block - Reusable shapes (CPT) for Posts &amp; Pages<\/strong>\n- Admin \u2192 <strong>CubeLaunch \u2192 Shapes for Pages &amp; Posts<\/strong> \u2192 <strong>Add New Shape Configuration<\/strong>.\n- Choose Cube or Pyramid, set faces\/background, Publish.\n- In the block editor, search for and insert the <strong>\u201cCubeLaunch Shape\u201d<\/strong> block and pick your saved configuration.\n- Adjust \u201cSmall \/ Medium \/ Large\u201d in block settings.<\/p>\n\n<p><strong>C) Shortcodes<\/strong>\n- On the same Shapes for Pages &amp; Posts screen, each saved shape shows a shortcode you can paste into page builders, widgets, or classic editor.\n- Example (paste <strong>literally<\/strong>):<\/p>\n\n<pre><code>  [cubelaunch_shape id=\"123\"]\n<\/code><\/pre>\n\n<ul>\n<li><p>You can add your own class for per\u2011instance CSS:<\/p>\n\n<p>[cubelaunch_shape id=\"123\" class=\"my-promo-cube\"]<\/p><\/li>\n<\/ul>\n\n<h3>Third Party Libraries<\/h3>\n\n<p>This plugin incorporates the following third-party libraries. We are grateful to their developers for making their work available.<\/p>\n\n<ul>\n<li><p><strong>glMatrix<\/strong><\/p>\n\n<ul>\n<li>Source: Originally from https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/gl-matrix\/2.8.1\/gl-matrix-min.js (Now bundled locally in <code>\/vendor\/js\/<\/code>)<\/li>\n<li>License: MIT License<\/li>\n<li>License URI: https:\/\/github.com\/toji\/gl-matrix\/blob\/master\/LICENSE.md<\/li>\n<li>Copyright (c) 2015-2021, Brandon Jones, Colin MacKenzie IV.<\/li>\n<\/ul><\/li>\n<li><p><strong>Cropper.js<\/strong><\/p>\n\n<ul>\n<li>Source: Originally from https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/cropperjs\/1.5.12\/cropper.min.js (Now bundled locally in <code>\/vendor\/js\/<\/code>)<\/li>\n<li>License: MIT License<\/li>\n<li>License URI: https:\/\/github.com\/fengyuanchen\/cropperjs\/blob\/main\/LICENSE<\/li>\n<li>Copyright (c) 2015-present Chen Fengyuan<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li><strong>Automatic<\/strong>: Plugins \u2192 Add New \u2192 search \u201cCubeLaunch\u201d \u2192 Install \u2192 Activate.<\/li>\n<li><strong>Manual<\/strong>: Upload the <code>cubelaunch.zip<\/code> via Plugins \u2192 Add New \u2192 Upload Plugin.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='what%20image%20sizes%20work%20best%20for%20the%20faces%3F'><h3>What image sizes work best for the faces?<\/h3><\/dt>\n<dd><p>Square images generally work best, especially for cube faces. For pyramid sides, the image will be masked into a triangle. We recommend images around 512x512 pixels to 1024x1024 pixels for a good balance of quality and performance. The built-in cropper helps you get a 1:1 aspect ratio.<\/p><\/dd>\n<dt id='how%20do%20i%20size%20cubes%20on%20mobile%3F'><h3>How do I size cubes on mobile?<\/h3><\/dt>\n<dd><p>We ship CSS variables so you can tune sizes without <code>!important<\/code>.<\/p>\n\n<p><strong>Defaults<\/strong> (affect embedded cubes only, not Coming Soon):<\/p>\n\n<pre><code>:root{\n  --cl-mobile-size-default: 85vw;  \/* shortcodes &amp; blocks with no preset *\/\n  --cl-mobile-size-small:   70vw;\n  --cl-mobile-size-medium:  85vw;\n  --cl-mobile-size-large:   90vw;\n  --cl-rail-width:          20%;   \/* left\/right rails (each side) *\/\n  --cl-rail-height:         16%;   \/* top\/bottom rails (each edge) *\/\n}\n<\/code><\/pre>\n\n<p><strong>Change all cubes<\/strong> (Appearance \u2192 Customize \u2192 Additional CSS):<\/p>\n\n<pre><code>:root{\n  --cl-mobile-size-default: 78vw;\n  --cl-mobile-size-medium:  78vw;\n}\n<\/code><\/pre>\n\n<p><strong>Change just one cube<\/strong> (add a class, then override the var):\n- Block \u2192 select the block \u2192 Advanced \u2192 Additional CSS class(es): <code>my-promo-cube<\/code>\n- Shortcode (paste literally):<\/p>\n\n<pre><code>  [cubelaunch_shape id=\"123\" class=\"my-promo-cube\"]\n<\/code><\/pre>\n\n<ul>\n<li><p>CSS:<\/p>\n\n<p>@media (max-width:600px){\n    .my-promo-cube{ --cl-mobile-size: 75vw; }\n  }<\/p><\/li>\n<\/ul><\/dd>\n<dt id='what%20are%20%E2%80%9Cscroll%20rails%E2%80%9D%3F%20can%20i%20disable%20them%3F'><h3>What are \u201cscroll rails\u201d? Can I disable them?<\/h3><\/dt>\n<dd><p>On small screens we add slim, invisible strips around the canvas so vertical scrolling remains easy even when your finger starts on the cube.<\/p>\n\n<ul>\n<li><strong>Side rails (left\/right)<\/strong> are pseudo\u2011elements (CSS).<\/li>\n<li><strong>Top\/bottom rails<\/strong> are tiny overlay elements added by a small JS helper.<\/li>\n<\/ul>\n\n<p><strong>Per instance:<\/strong><\/p>\n\n<pre><code>@media (max-width:600px){\n  .my-promo-cube{\n    --cl-rail-width:  0;   \/* disable side rails *\/\n    --cl-rail-height: 0;   \/* disable top\/bottom rails *\/\n  }\n}\n<\/code><\/pre>\n\n<p><strong>Shipped opt\u2011out classes<\/strong> (add to the wrapper):\n- <code>cl-rails-off<\/code> \u2192 turns off both\n- <code>cl-rails-x-off<\/code> \u2192 turns off side rails only\n- <code>cl-rails-y-off<\/code> \u2192 turns off top\/bottom rails only<\/p><\/dd>\n<dt id='can%20i%20place%20a%20class%20on%20a%20shortcode%3F'><h3>Can I place a class on a shortcode?<\/h3><\/dt>\n<dd><p>Yes (paste literally):<\/p>\n\n<pre><code>[cubelaunch_shape id=\"123\" class=\"homepage-hero\"]\n<\/code><\/pre><\/dd>\n<dt id='can%20developers%20change%20the%20defaults%20in%20php%3F'><h3>Can developers change the defaults in PHP?<\/h3><\/dt>\n<dd><p>Use the <code>cubelaunch_mobile_css<\/code> filter to alter the values we inject:<\/p>\n\n<pre><code>add_filter( 'cubelaunch_mobile_css', function( $args ){\n  $args['sizes']['default'] = '82vw';\n  $args['sizes']['small']   = '68vw';\n  $args['sizes']['medium']  = '82vw';\n  $args['sizes']['large']   = '92vw';\n  $args['rail_width']       = '18%'; \/\/ side rails\n  $args['rail_height']      = '12%'; \/\/ top\/bottom rails\n  \/\/ $args['breakpoint']     = 640;  \/\/ optional\n  \/\/ $args['enable_rails_x'] = true; \/\/ optional (side rails)\n  \/\/ $args['enable_rails_y'] = true; \/\/ optional (top\/bottom rails)\n  return $args;\n});\n<\/code><\/pre><\/dd>\n<dt id='can%20i%20use%20videos%20or%20charts%20on%20the%20faces%3F'><h3>Can I use videos or charts on the faces?<\/h3><\/dt>\n<dd><p>Image textures are supported in this free version. Video textures, auto-updating stock\/crypto charts on faces, clickable URLs, and texture rotation are premium features available in <strong>CubeLaunch Pro<\/strong>.<\/p><\/dd>\n<dt id='how%20do%20i%20add%20a%20subscription%20form%20to%20the%20%22coming%20soon%22%20page%3F'><h3>How do I add a subscription form to the \"Coming Soon\" page?<\/h3><\/dt>\n<dd><p>In the <code>CubeLaunch<\/code> &gt; <code>Coming Soon Settings<\/code>, there's a field for \"Subscription Form Integration\". You can paste a shortcode from your favorite forms plugin (like Contact Form 7, Gravity Forms, WPForms) or HTML embed code from services like Mailchimp or ConvertKit.<\/p><\/dd>\n<dt id='is%20the%20plugin%20responsive%3F'><h3>Is the plugin responsive?<\/h3><\/dt>\n<dd><p>Yes. Desktop sizing uses vmin presets; on small screens we switch to CSS\u2011variable widths (above). You can override them per instance.<\/p><\/dd>\n<dt id='will%20cubelaunch%20slow%20down%20my%20website%3F'><h3>Will CubeLaunch slow down my website?<\/h3><\/dt>\n<dd><p>No, CubeLaunch doesn\u2019t touch your server. Each shape is rendered in the visitor\u2019s browser with WebGL, so the only performance factors are the viewer\u2019s device and how big the images\/videos you give it are.<\/p><\/dd>\n<dt id='what%20are%20the%20browser%20requirements%3F'><h3>What are the browser requirements?<\/h3><\/dt>\n<dd><p>CubeLaunch uses WebGL for rendering the 3D shapes. Most modern desktop and mobile browsers support WebGL. If WebGL is not supported or disabled, a fallback message will be displayed. The admin interface requires a modern browser (no Internet Explorer 11 support).<\/p><\/dd>\n<dt id='where%20can%20i%20get%20support%3F'><h3>Where can I get support?<\/h3><\/dt>\n<dd><p>For support with the free version of CubeLaunch, please use the support forum on the WordPress.org plugin page.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Update: Confirmed compatibility with WordPress 6.9.<\/li>\n<li>Security\/Standards: Replaced direct $_POST access with filter_input() and improved sanitization to comply with Plugin Check.<\/li>\n<li>Standards: Prefixed global-scope variables in template and uninstall files to prevent potential conflicts.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fix: Eliminated black halo\/\u201cshadow\u201d around PNG\/WebP textures with transparency on WebGL shapes. \nThe fragment shader now composites the sampled texel <strong>over white<\/strong> using its alpha \n(<code>mix(vec3(1.0), texel.rgb, texel.a)<\/code>) instead of branching on <code>alpha == 0.0<\/code>. \nThis prevents black-matte bleed from straight\/lossy alpha during filtering\/mipmapping.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: Elementor placeholder visibility.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Embed interactive, rotatable, pinch and zoom 3D cubes or pyramids with custom faces via Gutenberg blocks, shortcodes, or a site-wide Coming Soon page.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/244905","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=244905"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/digibrief"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=244905"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=244905"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=244905"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=244905"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=244905"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=244905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}