Metadata-Version: 2.4
Name: markdown-os
Version: 0.9.2
Summary: Developer-focused markdown editor served from a local CLI.
Project-URL: Homepage, https://github.com/elena-cabrera/markdown-os
Project-URL: Repository, https://github.com/elena-cabrera/markdown-os
Project-URL: Issues, https://github.com/elena-cabrera/markdown-os/issues
Author: Elena Cabrera
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: cli,developer-tools,editor,markdown,preview
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Framework :: FastAPI
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Text Editors
Classifier: Topic :: Text Processing :: Markup :: Markdown
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: fastapi>=0.129.0
Requires-Dist: portalocker>=3.0.0
Requires-Dist: python-multipart>=0.0.22
Requires-Dist: typer>=0.23.1
Requires-Dist: uvicorn[standard]>=0.40.0
Requires-Dist: watchdog>=6.0.0
Requires-Dist: websockets>=16.0
Description-Content-Type: text/markdown

# Markdown-OS

[![PyPI version](https://img.shields.io/pypi/v/markdown-os)](https://pypi.org/project/markdown-os/)

Developer-focused markdown editor that runs as a local web server. Edit in the browser with live preview, Mermaid diagrams, syntax highlighting, and auto-save.

Desktop installers for macOS and Windows are published from GitHub Releases. The desktop app bundles the local server and opens with a picker-first workflow, so users do not need Python or a terminal after installation.

## Install

```bash
pip install markdown-os

```

Or with [uv](https://docs.astral.sh/uv/):

```bash
uv tool install markdown-os

```

To upgrade after installing with uv: `uv tool upgrade markdown-os`

## Desktop app

Download the latest desktop installers from GitHub Releases:

- macOS: `.dmg`
- Windows: `.exe`

The desktop app keeps the same editor UI, but launches in a native desktop shell with recent files/folders and native open dialogs.

## Usage

Single file:

```bash
markdown-os open ./notes.md

```

Directory (markdown workspace):

```bash
markdown-os open ./my-notes

```

The app opens in your browser. If port 8000 is in use, the next port is tried. Options: `--host`, `--port`.

## Example file

Generate a showcase markdown file:

```bash
markdown-os example                    # creates example.md in current directory
markdown-os example ./docs/showcase.md # custom path
markdown-os example --open             # generate and open in the editor

```

Use `--force` / `-f` to overwrite an existing file without prompting.

## Publishing (maintainers)

1.  Bump `version` in `pyproject.toml`.
2.  Commit and push to `master`: `git add pyproject.toml && git commit -m "chore: release X.Y.Z" && git push origin master`
3.  Tag that commit and push: `git tag -a vX.Y.Z -m "Release X.Y.Z" && git push origin vX.Y.Z`

The GitHub workflow runs on tag push and publishes to PyPI only when the tag matches the package version.