Skip to main content

OneKit

OneKit

One simple toolkit. Your files stay yours.

GitHub stars PyPI Apache-2.0 Python 3.11+

An offline Python toolkit for conversions, PDFs, images, archives, fonts, file inspection, encryption, developer utilities, OCR and comparisons. Use this CLI or the graphical interface at onekit.org. Both use the same processing core and catalog.

Status: release candidate 0.2.0. Stable downloads exist only after the release workflow completes. The distribution is onekit-tools; the separately owned PyPI project called onekit is unrelated.

Install

Python 3.11+ is required. The universal wheel supports Windows, macOS and Linux on x64/ARM64. Optional native libraries and external engines have additional platform requirements.

After publication:

python -m pip install onekit-tools
python -m pip install "onekit-tools[pdf,images,documents]"
onekit list
onekit doctor

From a source checkout:

python -m pip install -e ".[all,test]"
python -m onekit --help
python -m pytest -q

The base CLI has no runtime dependencies. Install only the extras you need. all includes the standard Python families; cryptographic signing uses the separate signing extra. Install native engines separately. For Node-based developer tools, install Node.js 24+ and run onekit engines install. Processing never silently downloads compiler/converter programs.

Use

onekit run pdf-merge first.pdf second.pdf -o combined.pdf
onekit run pdf-extract-pages document.pdf --options '{"pages":"1,3-5"}' -o selected.pdf
onekit run image-convert image.png --options '{"format":"webp"}' -o image.webp
onekit run diff-notebook before.ipynb after.ipynb --options '{"mode":"code"}' -o changes.json
onekit run security-encrypt private-folder --ask-password -o private.onekit
onekit run security-decrypt private.onekit --ask-password -o restored

Options are JSON objects; pass them as one quoted shell argument. Use --ask-password for secrets. Existing outputs are preserved unless you pass --force.

onekit list --group pdf, onekit list --json and onekit doctor TOOL_ID expose contracts and requirements. Every tool has a directory under tools, containing metadata and a pointer to its shared implementation. See the CLI guide for options and limits.

Toolkit

Family Capabilities
Converters Markdown, HTML, LaTeX, PDF, Word, PowerPoint, images, Base64, Excel, CSV and JSON
PDF Merge/split, page selection/order/removal, compression, repair, text overlays, rotation, digital signatures, encryption/unlock, external PDF/A conversion/validation
Images Extract embedded PDF images, compress, crop and change format
Media Audio/video conversion through separately installed FFmpeg
Archives / fonts ZIP/TAR variants; TTF/OTF containers and WOFF/WOFF2
Inspector / security Type signatures, structure, metadata, encoding, hashes, text counts; authenticated encrypted file/folder archives
Developer Language-specific formatting, parser/compiler validation and selected minification
OCR Scanned images/PDF to searchable PDF, Word, Markdown, LaTeX, HTML and JSON
Diff Text, code, normalized JSON, notebooks, LaTeX, PDF and Word text

Content-preserving operations and conversions with compromises are distinguished explicitly. PDF-to-Word reconstructs extracted text, not original layout. OCR is not guaranteed exact. Fonts retain their outline technology. The browser exposes only tools verified in its worker; native-only features remain in development there.

Pipelines and development

onekit pipeline --steps workflow.json INPUTS -o OUTPUT accepts a portable onekit-workflow JSON document exported by the web app, or a legacy ordered JSON array of { "tool": "...", "options": {} } steps. Each receives prior outputs. Single-input steps map over multiple outputs; merge steps receive the collection. Incompatible types stop processing.

Read architecture, engine setup and licenses, release operations, contribution requirements and security. New features and fixes require regression tests. GitHub Actions checks platform compatibility, browser contracts, native integrations, security, licenses and packaging before publication. Dependabot monitors locks, browser requirements, Node engines, Actions and Docker. Conservative compatible lock-only updates can auto-merge after all checks.

Report bugs and suggestions through GitHub issues or the website request board. Contributors can find work in either place.

License and creator

Created by Mattia Piazzalunga. Copyright © 2026 Mattia Piazzalunga. Licensed under Apache-2.0; see NOTICE, AUTHORS.txt and CONTRIBUTORS.txt. Third-party components retain their licenses. External engines are separate programs with their own redistribution obligations.

Export and reimport workflows without processing input files:

onekit workflow export steps.json -o workflow.onekit.json
onekit workflow import workflow.onekit.json -o saved-workflow.json
onekit pipeline --steps saved-workflow.json input.json -o output.json

The web app imports and exports the same versioned JSON, including block positions and expansion state. Workflow files contain tool settings; input files and passwords are excluded from exports. Reenter passwords before running. Browser imports report unsupported tools or option values without replacing the current workflow. CLI-only workflows can still be imported, exported and run with the CLI.

Metadata

Release files for onekit-tools 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for onekit-tools 0.2.0
File Size Uploaded
onekit_tools-0.2.0.tar.gz 295.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for onekit-tools 0.2.0
File Interpreter ABI Platform
onekit_tools-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 362.2 kB

Release files / onekit_tools-0.2.0.tar.gz

Download URL onekit_tools-0.2.0.tar.gz
Size 295.5 kB
Tags Source
SHA-256 checksum
How to use checksums
accbb4b2e85f58b2b17ab781318be45b9d4bda9501aaf9221d0bbf51000dd1ec
BLAKE2b-256 checksum
How to use checksums
4d216f23054cff3b82202218bc27a47c9e4c0df14f97ab320514afb3de02df4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / onekit_tools-0.2.0-py3-none-any.whl

Download URL onekit_tools-0.2.0-py3-none-any.whl
Size 66.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
92c240dbd956096e376f80ebf3361e7d32c2ecfedae0bcb9765ca2d4eb3c407b
BLAKE2b-256 checksum
How to use checksums
7cb1effae5338d8bb8bcd3c2b0f2c29a7a26d41a1c45e4c4a14f7599f7e8f816
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page