Skip to main content
SplitMe-AI Logo

Break down your docs. Build up your knowledge.

A Markdown text splitter for modular docs and maximum flexibility.

separator

What is SplitmeAI?

SplitmeAI is a Python module that addresses challenges in managing large Markdown files, particularly when creating and maintaining structured static documentation sites such as Mkdocs.

Key Features:

  • Section Splitting: Breaks down large Markdown files into smaller, manageable sections based on specified heading levels.
  • Hierarchy Preservation: Maintains parent heading context within each split file.
  • Filename Sanitization: Generates clean, unique filenames for each section, ensuring compatibility and readability.
  • Reference Link Management: Extracts and appends reference-style links used within each section.
  • Reference Link Conversion: Convert all inline links to reference-style links for improved readability and maintainability.
  • Link Validation: Checks and validates all links within a Markdown file for accuracy and integrity.
  • Thematic Break Handling: Recognizes and handles line breaks (---, ***, ___) for intelligent content segmentation.
  • MkDocs Integration: Automatically generates an mkdocs.yml configuration file based on the split sections.
  • CLI Support: Provides a user-friendly Command-Line Interface for seamless operation.

Quick Start

Installation

Install from PyPI using your preferred package manager listed below.

 pip

Use pip (recommended for most users):

pip install -U splitme-ai

 pipx

Install in an isolated environment with pipx:

❯ pipx install splitme-ai

 uv

For the fastest installation use uv:

❯ uv tool install splitme-ai

Usage

Using the CLI

Let's take a look at some examples of how to use the splitme-ai CLI.

Splitting a Markdown File

Example 1: Split a Markdown file on heading level 2 (default setting):

splitme-ai \
    --split.i docs/examples/data/README-AI.md \
    --split.settings.o docs/examples/output-h2

Example 2: Split on heading level 2 and generate an mkdocs.yml configuration file:

splitme-ai \
    --split.i docs/examples/data/README-AI.md \
    --split.settings.o docs/examples/output-h2 \
    --split.settings.mkdocs

Example 3: Split on heading level 3:

splitme-ai \
    --split.i docs/examples/data/README-AI.md \
    --split.settings.o docs/examples/output-h3 \
    --split.settings.hl "###"

Example 4: Split on heading level 4:

splitme-ai \
    --split.i docs/examples/data/README-AI.md \
    --split.settings.o docs/examples/output-h4 \
    --split.settings.hl "####"
Converting Reference Links

Example 5: Convert inline links to reference-style links:

splitme-ai --reflinks.i tests/data/pydantic.md --reflinks.o with_reflinks.md
Validating Links

Example 6: Validate all links in a Markdown file:

splitme-ai --validate-links.i tests/data/pydantic.md

The output will display the results of whether the links are valid or broken.

Scanning markdown file tests/data/pydantic.md for broken links...

Markdown Link Check Results:
--------------------------------------------------------------------------------
✓ Line 2: [![CI](https://img.shields.io/github/actions/workflow/status/pydantic/pydantic/ci.yml?branch=main&logo=github&label=CI)
✓ Line 3: [![Coverage](https://coverage-badge.samuelcolvin.workers.dev/pydantic/pydantic.svg)
✓ Line 4: [![pypi](https://img.shields.io/pypi/v/pydantic.svg)
✓ Line 5: [![CondaForge](https://img.shields.io/conda/v/conda-forge/pydantic.svg)
✓ Line 6: [![downloads](https://static.pepy.tech/badge/pydantic/month)
✓ Line 7: [![versions](https://img.shields.io/pypi/pyversions/pydantic.svg)
✓ Line 8: [![license](https://img.shields.io/github/license/pydantic/pydantic.svg)
✓ Line 9: [![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)
✓ Line 18: [Learn more](https://pydantic.dev/articles/logfire-announcement)
✓ Line 24: [pydantic V1.10 Documentation](https://docs.pydantic.dev/)
✓ Line 24: [`1.10.X-fixes` git branch](https://github.com/pydantic/pydantic/tree/1.10.X-fixes)
✓ Line 28: [documentation](https://docs.pydantic.dev/)
✓ Line 34: [Install](https://docs.pydantic.dev/install/)

Summary: 0 broken links out of 13 total links.

View the output of all examples above here.

[!NOTE] Explore the [Official Documentation][docs] for more detailed guides and examples.


Roadmap

  • Implement reference link conversion and management.
  • Enhance CLI usability and user experience.
  • Integrate AI-powered content analysis and segmentation.
  • Add robust chunking and splitting algorithms for LLM applications.
  • Add support for additional static site generators.
  • Add support for additional input and output formats.

Contributing

Contributions are welcome! For bug reports, feature requests, or questions, please open an issue or submit a pull request on GitHub.


License

Copyright © 2024-2025 splitme-ai.
Released under the MIT license.

separator

Metadata

Release files for splitme-ai 0.1.10

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

Source distribution (sdist)

Source distribution for splitme-ai 0.1.10
File Size Uploaded Provenance Actions
splitme_ai-0.1.10.tar.gz 152.4 kB With provenance Details for splitme_ai-0.1.10.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for splitme-ai 0.1.10
File Interpreter ABI Platform Actions
splitme_ai-0.1.10-py3-none-any.whl Python 3 none any Details for splitme_ai-0.1.10-py3-none-any.whl

Total release size: 176.4 kB

Release files / splitme_ai-0.1.10.tar.gz

Download URL splitme_ai-0.1.10.tar.gz
Size 152.4 kB
Tags Source
SHA-256 checksum
How to use checksums
f8dbb1c533a2f93211c18548ecccc400c6517901c0a854d0cda9a4c53862f020
BLAKE2b-256 checksum
How to use checksums
273d6b10880bea8f04770f1f9a1e840753147ec980872e2315228fb1b6bc2ad9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.0.1 CPython/3.12.8

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 Jan 8, 2025.

Transparency log

Release files / splitme_ai-0.1.10-py3-none-any.whl

Download URL splitme_ai-0.1.10-py3-none-any.whl
Size 24.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a3d01a5328c5b35dee07a0dbc6b2a64f275c84390273e10fc69de808ca49be1f
BLAKE2b-256 checksum
How to use checksums
a0bf2b82cbafa72a75fc882650b19a85620cb2bd89ba84250f2e5ff3ae7d0f30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.0.1 CPython/3.12.8

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 Jan 8, 2025.

Transparency log

Security for splitme-ai 0.1.10

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for splitme_ai-0.1.10.tar.gz

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 Jan 8, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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