
Research
/Security News
TensorLake npm SDK Compromised in ChainDrop Shai-Hulud Credential-Stealing Attack
Tensorlake npm SDK version 0.5.144 was compromised in a ChainDrop / Shai-Hulud attack, delivering credential-stealing malware.
@deckflow/deckhtml
Advanced tools
Languages: English · 简体中文 · 繁體中文 · Français · Deutsch · Español · 日本語 · 한국어
Convert HTML files, stdin, or URLs into PPTX or PNG presentations from your terminal.
Run without installing:
npx -y @deckflow/deckhtml@latest index.html -o deck.pptx
npm install -g @deckflow/deckhtml
deckhtml --version
Convert a single HTML file (output defaults to the same path and base name):
deckhtml index.html
# → index.pptx
Specify an output path:
deckhtml index.html -o deck.pptx
Pipe HTML from stdin:
cat index.html | deckhtml - -o deck.pptx
Convert multiple HTML files in order:
deckhtml page1.html page2.html page3.html -o deck.pptx
Convert a hosted page:
deckhtml https://example.com/deck.html -o deck.pptx
| Format | Description |
|---|---|
pptx | PowerPoint deck output (default) |
png | PNG frame output |
deckhtml index.html --format png -o frames
| Mode | Description |
|---|---|
auto | Use cloud when an API key is configured; otherwise run locally |
local | Always run locally (no API key required) |
cloud | Always run in the cloud (API key required) |
deckhtml index.html --mode local
deckhtml index.html --mode cloud -o deck.pptx
These flags require cloud mode:
| Flag | Description |
|---|---|
--rebuild-svg | Rebuild SVG objects |
--rebuild-chart | Rebuild chart objects |
--embed-fonts | Embed fonts into the output |
--map-motion | Map animations into the output |
deckhtml index.html \
-o deck.pptx \
--mode cloud \
--rebuild-svg \
--rebuild-chart \
--embed-fonts \
--map-motion
Authentication is only required for cloud execution and cloud-only flags. Local conversion works without an API key.
deckhtml auth login
deckhtml auth status
deckhtml config set api-key <key>
For CI, Docker, or agent environments, set the environment variable (takes precedence over stored credentials):
export DECKHTML_API_KEY=your-api-key
Persistent settings:
| Command | Description | Default |
|---|---|---|
deckhtml config set api-key <key> | API key for cloud requests | — |
deckhtml config set size <size> | PPTX dimensions | 1920x1080 |
deckhtml config set webhook <url> | Default callback URL | — |
deckhtml config set retention-hours <n> | Cloud file retention (hours) | 3 |
Credentials are stored locally at ~/.deckflow/credentials.
| Flag | Description | Default |
|---|---|---|
-h, --help | Show help | — |
--version | Show version | — |
-o, --output <path> | Output path | Same base name as input |
-v, --verbose | Detailed logs to stderr | false |
--quiet | Only errors and final result | false |
--json | Machine-readable JSON on stdout | false |
--report | Generate a conversion report | Off |
--mode <mode> | auto, local, or cloud | auto |
--render-wait <seconds> | Wait before capturing each page | 3 |
--format <format> | pptx or png | pptx |
--webhook <url> | Cloud callback URL | Config |
--retention-hours <n> | Cloud file retention (hours) | Config |
--quiet and --verbose cannot be used together.
deckhtml index.html -o deck.pptx --json
{
"ok": true,
"input": ["index.html"],
"output": "deck.pptx",
"format": "pptx",
"mode": "local"
}
Use the package as a library in Node.js:
import { convertHtmlToPptx } from '@deckflow/deckhtml';
const result = await convertHtmlToPptx({
input: 'index.html',
output: 'deck.pptx',
});
Detailed CLI documentation is available in the docs/cli/ directory.
MIT
FAQs
Deprecated: renamed to @deckflow/html2deck. Compatibility re-export of @deckflow/html2deck.
The npm package @deckflow/deckhtml receives a total of 27 weekly downloads. As such, @deckflow/deckhtml popularity was classified as not popular.
We found that @deckflow/deckhtml demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.

Research
/Security News
Tensorlake npm SDK version 0.5.144 was compromised in a ChainDrop / Shai-Hulud attack, delivering credential-stealing malware.

Research
/Security News
Socket found 16 malicious Firefox extensions designed to steal crypto wallet recovery phrases and private keys using cloned Rabby and OKX interfaces.

Product
Socket now scans VS Code extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.