Getting Started & Technical Guide

Cross-Platform Edition • Windows 10/11 & macOS

1. Overview & Architecture

D3 HTML to Video is a high-performance, local-first cross-platform desktop application engineered to convert interactive web animations (HTML5, CSS keyframes, JavaScript, SVG, Canvas 2D, and Three.js/WebGL) into broadcast-quality MP4 (H.264 / yuv420p) video files without requiring cloud subscriptions or per-minute credit burns.

Zero Dependencies Architecture: D3 embeds its own sandboxed Chromium browser and static FFmpeg binary for your platform. You do not need to install Node.js, Python, Git, Playwright, or FFmpeg on your operating system.

2. Installation & Setup

A. Windows 10 & 11 Installation

  1. Download D3-Motion-Setup.exe.
  2. Double-click the installer. Follow the on-screen steps to install the application and create desktop/start menu shortcuts.
  3. Launch D3 Motion from your desktop or start menu.

B. macOS Installation & First-Time Launch Guide

D3 Motion supports both Apple Silicon (M1/M2/M3/M4) and Intel Macs:

  • Apple Silicon (M-Series): Download D3-Motion-Mac-arm64.dmg
  • Intel (x64): Download D3-Motion-Mac-x64.dmg
⚠️ How to Open D3 Motion on macOS (Gatekeeper Instructions)

Because D3 Motion is an independent professional desktop utility distributed directly to creators outside the Mac App Store, macOS Gatekeeper may show a notice on first launch: "D3 Motion cannot be opened because it is from an unidentified developer."

The Standard Way to Open (First Launch Only):
  1. Drag D3 Motion.app into your /Applications folder.
  2. In Finder, open Applications.
  3. Right-click (or hold the Control key and click) on D3 Motion.
  4. Select Open from the context menu.
  5. A confirmation dialog will appear with an "Open" button. Click Open.

✓ Once opened this way, macOS permanently saves your approval. You can launch D3 Motion by simply double-clicking or from Spotlight in the future!

❓ What If You Missed That and macOS Blocked the App?

If you double-clicked the app directly and macOS showed a warning dialog with only "Cancel" or "Move to Trash", do not worry! You can easily approve it using either of the following two quick solutions:

Solution 1: System Settings (Recommended)
  1. Open the Apple Menu () in the top-left corner and choose System Settings (or System Preferences).
  2. Click Privacy & Security in the left sidebar.
  3. Scroll down to the Security section.
  4. You will see a note: "D3 Motion was blocked from use because it is not from an identified developer."
  5. Click the Open Anyway button.
  6. Enter your Mac password or use Touch ID, then click Open when prompted.
Solution 2: One-Line Terminal Command (Instant Fix)

If Gatekeeper quarantine prevents launching, open the macOS Terminal app (press Cmd + Space, type Terminal, press Enter) and run:

xattr -d com.apple.quarantine "/Applications/D3 Motion.app"

Press Return, and D3 Motion will open immediately without any security warnings!

3. Quick Start (Drag · Drop · Download)

  1. Launch App: Open D3 Motion from your Applications or Desktop.
  2. Import Project: Drag and drop your .html file (or a .zip archive containing your project files) directly into the dashed dropzone. You can also click Choose HTML / ZIP to select a file via the native file picker.
  3. Configure Settings: Select your desired output resolution, frame rate (24, 30, or 60 FPS), duration in seconds, zoom/pan, background color, and render quality.
  4. Preview & Render: Check the live preview stage to verify rendering behavior, then click Render MP4.
  5. Save Export: When rendering concludes, click Save MP4 to choose a destination or Show file to reveal the output video in your system file manager.

4. Supported Project Formats

A. Single Standalone HTML File (.html / .htm)

Ideal for self-contained animations with inline CSS, embedded SVG, or JavaScript libraries loaded from reliable CDNs or embedded as inline scripts.

B. ZIP Project Archives (.zip)

For projects structured across multiple files and subdirectories. Your ZIP archive should include an entry HTML file (e.g., index.html) at the root level, alongside relative directories for assets:

my-animation.zip/
├── index.html       (Entry file)
├── style.css        (Stylesheets)
├── script.js       (Animation logic)
├── assets/         (Images, audio, video)
└── fonts/          (Custom web fonts)

5. Output Settings & Resolutions

PRESET LABEL DIMENSIONS ASPECT RATIO RECOMMENDED USE CASE
Landscape · 1080p 1920 × 1080 16:9 Standard YouTube, website hero videos, client presentations
Landscape · 1440p 2560 × 1440 16:9 High-definition crisp motion graphics, monitors
Landscape · 4K UHD 3840 × 2160 16:9 Broadcast television, ultra-high resolution master archives
Portrait · 1080p 1080 × 1920 9:16 TikTok, Instagram Reels, YouTube Shorts
Square · 1080p 1080 × 1080 1:1 Instagram feed, LinkedIn square motion carousels

6. Best Practices for Flawless Motion Exports

Font Synchronization

D3 automatically waits for document.fonts.ready before beginning recording. However, if using custom web fonts loaded from external Google Fonts or Typekit, bundling the font files (.woff2 or .ttf) locally inside your ZIP archive ensures 100% offline consistency without network latency.

Canvas & Three.js Loop Timing

For deterministic animations, tie your render loop to elapsed time or frame counts rather than real-world clock intervals where possible. For example:

// Recommended: Compute angle from requestAnimationFrame timestamp
function render(timestamp) {
  const elapsed = timestamp * 0.001; // in seconds
  cube.rotation.y = elapsed * 1.5;
  renderer.render(scene, camera);
  requestAnimationFrame(render);
}
requestAnimationFrame(render);

7. Troubleshooting & FAQs

Why is my preview blank?

Ensure your ZIP contains an index.html (or index.htm) file at the root or within the main directory. If your HTML uses absolute paths (e.g., /styles.css instead of ./styles.css), switch to relative paths so the local server can resolve them properly.

Where are my rendered videos stored?

Rendered videos are automatically saved to your system's default user media folder (Videos\D3 Motion\ on Windows or ~/Movies/D3 Motion/ on macOS). You can immediately access or copy them using the Save MP4 or Show file buttons on the success screen.

Is my data uploaded to any remote server?

No. All rendering, browser execution, frame capture, and FFmpeg encoding happen entirely on your computer's CPU and GPU. Your projects and videos never leave your local machine.