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.

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.1.tar.gz (80.4 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.1-py3-none-any.whl (44.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sg_text_forge-0.1.1.tar.gz
  • Upload date:
  • Size: 80.4 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.1.tar.gz
Algorithm Hash digest
SHA256 b5eed28da372915ff1316ec034c2491c918fd530519e03ea04dd949e397e9137
MD5 893a3c087ccc6b09c60670279f279d85
BLAKE2b-256 07e5ca6981122f95e2095e957144b174affcab0f8790dfb8c3dbdfebaeb21b3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sg_text_forge-0.1.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: sg_text_forge-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 44.4 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7cf729d66380d20aaea87364b7b03e6768eaf0cbb99c91878c72c03ed0118d28
MD5 2c7ee198b65543bdda8e429ce29b8b3b
BLAKE2b-256 4e3199a170d1971d3aaa94e3c79d6438e7bf3e75551faf5088b270802dd746d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sg_text_forge-0.1.1-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