Snorkle Embed lets users add an interactive Snorkle Visual block to the WordPress Gutenberg editor. Sign in to your Snorkle account directly from the block, browse your library of interactive scientific visuals, select one, and publish it as a responsive embedded visual — no coding required.
Features
- Sign in to your Snorkle Labs account without leaving the WordPress editor
- Browse your full visual library with thumbnail previews
- Paste any valid vis.snorkle.io URL directly to embed a specific visual
- Adjustable display width and height
- Language selector for anatomy visuals (35 languages supported)
- Session persists per WordPress login — sign in once, works across all posts and pages
- Works on any theme — outputs a clean, responsive iframe
External Services
This plugin relies on two external services, both operated by Snorkle Labs. No data is sent to any third party.
1. Snorkle Authentication & Library API (api.snorkle.io)
This service is used to authenticate the WordPress editor user with their Snorkle account and to retrieve their library of visuals.
- What is sent: The user’s email address and password are sent directly from their browser to api.snorkle.io over HTTPS when they click “Sign in”. After login, a session token is stored in WordPress user meta and sent on subsequent requests to fetch the visual library. No credentials are ever stored in plain text.
- When it is sent: Only when the WordPress editor user actively signs in to their Snorkle account from within the block editor, or when the block editor fetches the visual library. Nothing is sent on the frontend to visitors viewing published pages.
2. Snorkle Visual Embed Service (vis.snorkle.io)
This service delivers the interactive visual content. It functions the same way as embedding a YouTube or Vimeo video — the published block outputs a standard HTML iframe pointing to vis.snorkle.io. No plugin code runs on the frontend; the browser loads the iframe directly from the Snorkle service.
- What is sent: The iframe URL (which identifies the specific visual). Standard browser request headers (IP address, user agent) are sent by the browser as part of loading any iframe, the same as any embedded content.
- When it is sent: Only when a visitor loads a page or post that contains a published Snorkle Visual block.
Snorkle Privacy Policy | Snorkle Terms of Service
Source Code & Building
The complete, human-readable source code for this plugin is included in the src/ directory of the plugin package.
The JavaScript assets in build/ are compiled from src/ using @wordpress/scripts (webpack). To rebuild from source:
- Install Node.js 18 or later.
- From the plugin directory run:
npm install
- Then run:
npm run build
The entry point is src/index.js. The block metadata is in src/block.json.