Skip to main content

MkDocs plugin and build pipeline for Markdown text projects with EPUB generation

Project description

text-forge

MkDocs plugin + GitHub Action for building text-based websites with EPUB, live editor, and GitHub integration.

TODOs

  • TODO MCP?

Quick Start

GitHub Action (Publish Site)

# .github/workflows/publish.yml
- uses: shared-goals/text-forge@main
  with:
    mkdocs_config: mkdocs.yml
    docs_dir: text/ru
    site_dir: public/ru

Local Development

./install.sh  # Install dependencies
make serve    # Start dev server with editor

Features

✅ Live Editor Widget

  • Browser-based markdown editor with real-time preview
  • Pyodide + pymdown-extensions (client-side rendering)
  • Works on localhost (local saves in make serve) and production (GitHub commits)
  • Auto-detects environment (local vs production)
  • Russian translations

✅ GitHub Integration

  • Save to GitHub via Personal Access Token (PAT)
  • Commits directly to repository
  • Auto-triggers GitHub Actions workflow
  • Localhost auto-saves to disk

✅ EPUB Generation

  • Combines markdown chapters via mkdocs.yml nav
  • Converts PyMdown blocks to Pandoc format
  • Generates EPUB with custom CSS
  • CLI: text-forge epub --config=mkdocs.yml

✅ GitHub Actions

  • Composite action in action.yml
  • Builds site + EPUB in one workflow
  • Publishes to GitHub Pages
  • Example: whattodo/publish.yml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sg_text_forge-0.1.4.tar.gz (82.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sg_text_forge-0.1.4-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file sg_text_forge-0.1.4.tar.gz.

File metadata

  • Download URL: sg_text_forge-0.1.4.tar.gz
  • Upload date:
  • Size: 82.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sg_text_forge-0.1.4.tar.gz
Algorithm Hash digest
SHA256 4a8b3f26b673aaf0f85c2d21d1cab3d7c343a4c96cc5b35b99120d0a8dd2ecef
MD5 9629ac020f9e2ad949fe42d9c30b9bc9
BLAKE2b-256 26b86e547b9a9b3ec9c304e7af2665e63b2e68217d66a2efc44824944ece5c7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sg_text_forge-0.1.4.tar.gz:

Publisher: publish-pypi.yml on shared-goals/text-forge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sg_text_forge-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: sg_text_forge-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sg_text_forge-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b5efeaea536966c314ccccffa1f56f2bced16014e0df2c0d26dfb817356035b8
MD5 4b49fae8353b63ef356c6963e12ed088
BLAKE2b-256 cec4f814babbbaad575bbe335a9bf6acfa1de6c803294608daecb76a05a4a099

See more details on using hashes here.

Provenance

The following attestation bundles were made for sg_text_forge-0.1.4-py3-none-any.whl:

Publisher: publish-pypi.yml on shared-goals/text-forge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page