Skip to main content

FMJL

FMJL, short for Format, Markdown, JSON Lines, stores a document as one JSON object per line: one element (heading, paragraph, table, formula, image, caption...) with a stable id, a content hash, its page and position, and who may read it. People write and edit the same document as normal Markdown; the tool converts both ways without renumbering anything.

pip install fmjl            # converter, checker, Word importer, chunks
pip install fmjl[pdf]       # adds the PDF importer (PyMuPDF)

fmjl notes.md               # Markdown  -> notes.fmjl, then checks it
fmjl notes.fmjl             # .fmjl     -> notes.md, ids kept
fmjl report.pdf             # PDF       -> report.fmjl, report.md, images/
fmjl report.docx            # Word      -> the same
fmjl chunks report.fmjl     # retriever-ready chunks as JSON Lines

From Python: import fmjl; fmjl.load, fmjl.chunks, fmjl.changed_chunks, fmjl.check.

Rulebook, examples, benchmark and the VS Code extension: https://github.com/rupakkumar-76319/fmjl

Metadata

Release files for fmjl 1.1.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 fmjl 1.1.0
File Size Uploaded
fmjl-1.1.0.tar.gz 48.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fmjl 1.1.0
File Interpreter ABI Platform
fmjl-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 94.0 kB

Release files / fmjl-1.1.0.tar.gz

Download URL fmjl-1.1.0.tar.gz
Size 48.9 kB
Tags Source
SHA-256 checksum
How to use checksums
54a43b83539e3b6d9fba0d7993dc392e9b9ad78b5980de396024f379fbb12074
BLAKE2b-256 checksum
How to use checksums
34611e51f22a18b6545026f01cfa82765d8ddf095d562d385fcc8928e3821ab3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release files / fmjl-1.1.0-py3-none-any.whl

Download URL fmjl-1.1.0-py3-none-any.whl
Size 45.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e7062a01c276bf8e28d0c1a0e229c3fbcb03ac86f6a91851d621f0f66186aa11
BLAKE2b-256 checksum
How to use checksums
57b01d20fe062a522a67e5e7be56bea1fc2698bae2eacbff0d6f174088caf249
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release history Release notifications | RSS feed

1.1.2

2 release files

1.1.1

2 release files

This release

1.1.0 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.5.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