Metadata-Version: 2.1
Name: mkdocs-ipymd
Version: 0.0.3
Summary: 
Author: Felipe Angelim
Author-email: felipeangelim@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Provides-Extra: dev
Requires-Dist: ipykernel (>=6.29.5,<7.0.0)
Requires-Dist: markdown (>=3)
Requires-Dist: matplotlib (>=3.9.2,<4.0.0) ; extra == "dev"
Requires-Dist: mkdocs (>=1)
Requires-Dist: mkdocs-material (>=9.5.45,<10.0.0) ; extra == "dev"
Requires-Dist: nbclient (>=0.10.0)
Requires-Dist: nbconvert (>=7.15)
Requires-Dist: nbformat (>=5.10.4)
Requires-Dist: numpy (>2.0) ; extra == "dev"
Requires-Dist: pandas (>=2.2.3,<3.0.0) ; extra == "dev"
Requires-Dist: pygments (>=2.0.0)
Requires-Dist: pymdown-extensions (>=10.12,<11.0) ; extra == "dev"
Requires-Dist: pytest (>=8.3.3,<9.0.0) ; extra == "dev"
Requires-Dist: pytest-cov (>=6.0.0,<7.0.0) ; extra == "dev"
Description-Content-Type: text/markdown

# Mkdocs-Ipymd

<p align="center">
<img src="logo.png" width="200">

</p>

[![PyPI version](https://badge.fury.io/py/mkdocs-ipymd.svg)](https://badge.fury.io/py/prophetverse)
[![codecov](https://codecov.io/gh/felipeangelimvieira/mkdocs-ipymd/graph/badge.svg?token=O37PGJI3ZX)](https://codecov.io/gh/felipeangelimvieira/mkdocs-ipymd)


# Mkdocs plugin for Interactive Python

This plugin allows you to use python, in VSCode interactive fashion, to create docs.
The motivation was having a way to create interactive examples in the documentation,
without increasing the git repository size.

## Installation

```bash
pip install mkdocs-ipymd
```

or with poetry:

```bash
poetry add mkdocs-ipymd
```

## Usage

### 1. Add the plugin to your `mkdocs.yml`:

```yaml
plugins:
  - ipymd
```

### 2. Create a python file ".py" or ".ipy" in the `docs` folder:

And use the following syntax to include the file in your markdown:

```python
# %%
import numpy as np
import matplotlib.pyplot as plt

# %%
msg = "Hello World"
print(msg)

# %%
msg = "Hello not again"
print(msg)

# %% [markdown]

## This is a markdown cell

### With some content

And some math

$$
E = mc^2
$$
```

The `# %%` is a cell separator, and the content of the cell is executed as python code.

### 3. Add the file to your `mkdocs.yml` nav (optional)

```yaml
nav:
  - Home: index.md
  - Examples:
    - file1.md
    - file2.md
```

Important: you must add the file with ".md" extension, even if the file is a python 
file.
