Show HN: SnapPDF – 任意のURLを1回のHTTP呼び出しで印刷可能なPDFに変換
プロジェクトごとにヘッドレスChromiumをセットアップする手間を省くため、URLをPOSTするだけで印刷可能なPDFを返すAPI「SnapPDF」を公開した。用紙サイズ、向き、スケールのオプションに対応し、ユーザー側でのブラウザインストールは不要。コードはGitHubで公開されており、事前にクローンしなくてもライブインスタンスで試すことができる。
背景メモ
- SnapPDFは、任意のURLを1回のHTTPリクエストで印刷可能なPDFに変換するAPI。開発者が「毎回ヘッドレスChromeをセットアップするのが面倒」という実体験から生まれた、実用的なユーティリティ。
- 類似の既存サービスとしては、Browserless(有料API)、Gotenberg(セルフホスト型)、あるいはcloud上のPlaywright/Puppeteerサービスがある。それらと比べてSnapPDFは「超シンプルに1エンドポイントだけ」に特化しているのが特徴。
- ヘッドレスChrome(Headless Chromium)とは、GUIを持たない状態でHTMLレンダリングやJS実行を行えるブラウザ。請求書・レポート・帳票などのサーバー側PDF生成でよく使われるが、設定や依存関係が面倒なことで知られる。
- プロジェクトはDockerベースで、GitHubにコードが公開(MITライセンス)。ライブデモも提供されており、試用できる。