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 0.5.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 0.5.0
File Size Uploaded
fmjl-0.5.0.tar.gz 37.7 kB Details

Built distribution (wheel)

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

Total release size: 74.2 kB

Release files / fmjl-0.5.0.tar.gz

Download URL fmjl-0.5.0.tar.gz
Size 37.7 kB
Tags Source
SHA-256 checksum
How to use checksums
decffb28dfc81afc77b7d7044de84508b559966493db4767aa126eabfcbe178d
BLAKE2b-256 checksum
How to use checksums
ecfd9b35b332cf6a707b1fe6b0fa1324b22694caec399b0de495c92fbf0a0eca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

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

Download URL fmjl-0.5.0-py3-none-any.whl
Size 36.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
200d13673754e2eee9a6ab875217ac79fef8e2ee4cbabe4501fe5e9ecfe0a9b6
BLAKE2b-256 checksum
How to use checksums
81321935fca447882829ec4374e0dae3d2a6fb4374fb146d2a9f8aa4946cf8be
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.0.1

2 release files

1.0.0

2 release files

This release

0.5.0 This release

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