# Project pack: BentoPDF @ dafb6f8 Facts about **BentoPDF** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > BentoPDF is a collection of PDF tools (merge, split, edit, convert, sign, compress and more) that run completely inside your web browser using WebAssembly. There is no server processing your files, so it works offline once loaded and is easy to host as a static website. ## Setup path (checked 2026-11-03) - **Start here, no Docker:** Use it in a web browser; nothing to install on your computer. - Offer Docker only if the person asks or this path fails. The commands further down may use Docker; they are not the starting point. - Verdict source: https://bentopdf.com - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/alam00000/bentopdf - Pinned commit: `dafb6f8e188591bf5838728542d4cd234b8d4a75`. Use exactly this version. - Zip the person can download in a browser: https://github.com/alam00000/bentopdf/archive/dafb6f8e188591bf5838728542d4cd234b8d4a75.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://bentopdf.com/faq.html - Live demo: https://bentopdf.com. The official site runs the tools in your browser. Files stay on your device. - Licence: **AGPL-3.0-only**. Free to use and change. If other people use your changed version, including over a network (for example a website you host for them), you must offer them your source code under the same licence. Using it privately for yourself or your household has no extra obligations. BentoPDF is also sold under a separate commercial licence. The open version is AGPL. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/alam00000/bentopdf bespoke-bentopdf cd bespoke-bentopdf git checkout --detach dafb6f8e188591bf5838728542d4cd234b8d4a75 # Prepare development requirements and local configuration first. npm install npm run dev ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh docker run -d --name bentopdf -p 3000:8080 ghcr.io/alam00000/bentopdf-simple:latest # then open http://localhost:3000 ``` - Tools these commands use: Docker for a trial, Node 22 for development - Develop: `npm run dev` - Test: `npm test` - Check/lint: `npm run lint` - Build: `npm run build` - Stack: typescript, html, css (Vite, Tailwind, pdf-lib, PDF.js, WebAssembly). Difficulty for a non-developer with an AI: **easy**. A static front-end site built with Vite. Each tool is a page and a TypeScript module. No back end to run. Personal data: **no**. Stored in: Nothing is stored on a server. Files stay in your browser while you work. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/bentopdf/dafb6f8/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/bentopdf/dafb6f8/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/bentopdf/dafb6f8/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/bentopdf/dafb6f8/r3/SKILL.md)