Metadata-Version: 2.4
Name: markpub
Version: 1.2.0
Summary: Build (web publish) Markdown and Massive Wiki sites.
Project-URL: homepage, https://markpub.org
Project-URL: repository, https://github.com/MarkPub/markpub
Author-email: Bill Anderson <band@acm.org>, Peter Kaminski <kaminski@istori.com>
License-Expression: MIT
License-File: LICENSE
Requires-Python: <4.0,>=3.12
Requires-Dist: jinja2>=3.1.6
Requires-Dist: markpub-themes>=1.0.1
Requires-Dist: markupsafe>=3.0.2
Requires-Dist: mistletoe>=1.4.0
Requires-Dist: python-dateutil>=2.9.0.post0
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: six>=1.17.0
Provides-Extra: test
Requires-Dist: pytest>=8.4.1; extra == 'test'
Description-Content-Type: text/markdown

# markpub  

![PyPI version](https://img.shields.io/pypi/v/markpub)  

MarkPub builds a static HTML website from a directory of Markdown files.  
The website supports wiki-links, transclusion, and provides full-text
search.  

MarkPub installs configuration files that GitHub Pages and Netlify can use to automatically publish the HTML files on the web.

## Requirements

- Python 3.12 or higher.

## Install

### Using pip
``` shell
pip install markpub
```

## Usage

### Overview

```shell
markpub [--version] <command> [options]
```

Available commands:
- `init` - Initialize a new MarkPub site
- `build` - Build HTML website from Markdown files
- `theme-install` - Install default theme in a directory

### Commands

#### `markpub init <directory>`

Initialize a new MarkPub site in the specified directory. This creates:
- `.markpub/markpub.yaml` - Site configuration file
- Configuration files for GitHub Pages/Netlify deployment
- `Sidebar.md` - Website navigation links displayed sidebar on webpages

**Example:**
```shell
markpub init my-wiki
```

#### `markpub build [options]`

Build a static website from Markdown files.

**Required options:**
- `-i, --input <directory>` - Input directory containing Markdown files
- `-o, --output <directory>` - Output directory for generated HTML files

**Optional options:**
- `--config, -c <file>` - Path to YAML config file (default: `./markpub.yaml`)
- `--theme, -t <directory>` - Path to directory of HTML theme files (leave off to use the MarkPub-provided theme)
- `--root, -r <name>` - Website root directory name (needed for GitHub Pages hosting)
- `--lunr` - Create lunr search index (requires npm and lunr to be installed)
- `--commits` - Include Git commit messages and times in All Pages

**Examples:**
```shell
# Basic build
markpub build -i my-wiki -o my-wiki-site

# Build with custom theme and search
markpub build -i my-wiki -o my-wiki-site --theme custom-theme --lunr

# Build for GitHub Pages with Git history
markpub build -i my-wiki -o my-wiki-site --root my-repo --commits
```

#### `markpub theme-install <directory>`

Install the default theme ('dolce') in the specified markpub directory.

**Example:**
```shell
markpub theme-install my-wiki
```

### Getting Help

Use `--help` with any command for detailed usage information:

```shell
markpub --help
markpub init --help
markpub build --help
markpub theme-install --help
```

## Documentation  

- [Basic install instructions](https://markpub.org/documentation/markpub_basic_install)  
- [Install and Web-publish instructions](https://markpub.org/documentation/markpub_install_and_web-publish_steps)  

- Further documentation is under development.  



