markdown-os 0.7.4__tar.gz → 0.9.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- markdown_os-0.9.2/.github/workflows/desktop-release.yml +61 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/.gitignore +1 -1
- {markdown_os-0.7.4 → markdown_os-0.9.2}/PKG-INFO +12 -1
- {markdown_os-0.7.4 → markdown_os-0.9.2}/README.md +11 -0
- markdown_os-0.9.2/desktop/electron-builder.yml +42 -0
- markdown_os-0.9.2/desktop/package-lock.json +5065 -0
- markdown_os-0.9.2/desktop/package.json +27 -0
- markdown_os-0.9.2/desktop/src/backend.ts +167 -0
- markdown_os-0.9.2/desktop/src/dialogs.ts +57 -0
- markdown_os-0.9.2/desktop/src/main.ts +212 -0
- markdown_os-0.9.2/desktop/src/preload.ts +25 -0
- markdown_os-0.9.2/desktop/src/recents.ts +73 -0
- markdown_os-0.9.2/desktop/src/updater.ts +102 -0
- markdown_os-0.9.2/desktop/tsconfig.json +16 -0
- markdown_os-0.9.2/docs/plans/feature-electron-app.md +1059 -0
- markdown_os-0.9.2/markdown_os/app_runtime.py +172 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/cli.py +13 -98
- markdown_os-0.9.2/markdown_os/desktop_runtime.py +132 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/server.py +187 -43
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/css/styles.css +269 -3
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/index.html +78 -53
- markdown_os-0.9.2/markdown_os/static/js/desktop-picker.js +273 -0
- markdown_os-0.9.2/markdown_os/static/js/desktop-shell.js +122 -0
- markdown_os-0.9.2/markdown_os/static/js/desktop-updates.js +52 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/editor.js +99 -1
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/file-tree.js +100 -5
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/pdf-export.js +4 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/tabs.js +15 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/theme.js +1 -2
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/wysiwyg.js +105 -0
- markdown_os-0.9.2/markdown_os/static/vendor/dompurify/purify.min.js +3 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/highlight.min.js +1213 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/styles/base16/dracula.min.css +7 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/styles/github-dark.min.css +10 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/styles/github.min.css +10 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/styles/grayscale.min.css +1 -0
- markdown_os-0.9.2/markdown_os/static/vendor/highlightjs/styles/nord.min.css +1 -0
- markdown_os-0.9.2/markdown_os/static/vendor/html2pdf/html2pdf.bundle.min.js +3 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Bold.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Italic.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-Italic.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Script-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/katex.min.css +1 -0
- markdown_os-0.9.2/markdown_os/static/vendor/katex/katex.min.js +1 -0
- markdown_os-0.9.2/markdown_os/static/vendor/marked/marked.min.js +69 -0
- markdown_os-0.9.2/markdown_os/static/vendor/mermaid/mermaid.min.js +2029 -0
- markdown_os-0.9.2/markdown_os/static/vendor/svg-pan-zoom/svg-pan-zoom.min.js +3 -0
- markdown_os-0.9.2/markdown_os/static/vendor/turndown/turndown.js +974 -0
- markdown_os-0.9.2/markdown_os/static/vendor/turndown-plugin-gfm/turndown-plugin-gfm.js +165 -0
- markdown_os-0.9.2/markdown_os/workspace_session.py +434 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/pyproject.toml +1 -1
- markdown_os-0.9.2/scripts/download_vendor.py +230 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/demo-frame.html +4 -4
- markdown_os-0.9.2/site/downloads.html +341 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/index.html +129 -19
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/styles.css +18 -3
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_cli.py +108 -9
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_frontend_navigation_sync.py +33 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_server.py +265 -0
- markdown_os-0.9.2/tests/test_workspace_session.py +130 -0
- markdown_os-0.7.4/docs/plans/feature-001-pdf-export.md +0 -124
- markdown_os-0.7.4/docs/plans/feature-002-file-operations.md +0 -248
- markdown_os-0.7.4/docs/plans/feature-003-focus-mode.md +0 -134
- {markdown_os-0.7.4 → markdown_os-0.9.2}/.github/workflows/publish.yml +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/.python-version +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/AGENTS.md +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/CLAUDE.md +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/LICENSE +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/__init__.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/directory_handler.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/file_handler.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/css/themes.css +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/favicon.svg +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/dialogs.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/focus-mode.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/search.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/shared-utils.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/toc.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/websocket.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/static/js/wysiwyg-toolbar.js +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/markdown_os/templates/example_template.md +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/favicon.svg +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/images/hero-screenshot.png +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/site/themes.css +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_directory_handler.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_file_handler.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/tests/test_version.py +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/uv.lock +0 -0
- {markdown_os-0.7.4 → markdown_os-0.9.2}/vercel.json +0 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
name: Build Desktop Releases
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- "v*"
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: write
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
build-desktop:
|
|
13
|
+
strategy:
|
|
14
|
+
fail-fast: false
|
|
15
|
+
matrix:
|
|
16
|
+
os:
|
|
17
|
+
- macos-latest
|
|
18
|
+
- windows-latest
|
|
19
|
+
runs-on: ${{ matrix.os }}
|
|
20
|
+
steps:
|
|
21
|
+
- name: Checkout repository
|
|
22
|
+
uses: actions/checkout@v4
|
|
23
|
+
|
|
24
|
+
- name: Set up Node.js
|
|
25
|
+
uses: actions/setup-node@v4
|
|
26
|
+
with:
|
|
27
|
+
node-version: "22"
|
|
28
|
+
cache: "npm"
|
|
29
|
+
cache-dependency-path: desktop/package-lock.json
|
|
30
|
+
|
|
31
|
+
- name: Set up uv
|
|
32
|
+
uses: astral-sh/setup-uv@v5
|
|
33
|
+
|
|
34
|
+
- name: Install Python dependencies
|
|
35
|
+
run: uv sync --dev
|
|
36
|
+
|
|
37
|
+
- name: Download vendored frontend assets
|
|
38
|
+
run: uv run python scripts/download_vendor.py
|
|
39
|
+
|
|
40
|
+
- name: Install desktop dependencies
|
|
41
|
+
working-directory: desktop
|
|
42
|
+
run: npm ci
|
|
43
|
+
|
|
44
|
+
- name: Build desktop TypeScript
|
|
45
|
+
working-directory: desktop
|
|
46
|
+
run: npm run build
|
|
47
|
+
|
|
48
|
+
- name: Run targeted Python tests
|
|
49
|
+
run: uv run pytest tests/test_cli.py tests/test_server.py tests/test_workspace_session.py tests/test_frontend_navigation_sync.py -q
|
|
50
|
+
|
|
51
|
+
- name: Package desktop app
|
|
52
|
+
working-directory: desktop
|
|
53
|
+
run: npm run dist
|
|
54
|
+
|
|
55
|
+
- name: Upload release artifacts
|
|
56
|
+
uses: softprops/action-gh-release@v2
|
|
57
|
+
with:
|
|
58
|
+
files: |
|
|
59
|
+
desktop/dist/*.dmg
|
|
60
|
+
desktop/dist/*.exe
|
|
61
|
+
desktop/dist/*.zip
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: markdown-os
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.2
|
|
4
4
|
Summary: Developer-focused markdown editor served from a local CLI.
|
|
5
5
|
Project-URL: Homepage, https://github.com/elena-cabrera/markdown-os
|
|
6
6
|
Project-URL: Repository, https://github.com/elena-cabrera/markdown-os
|
|
@@ -38,6 +38,8 @@ Description-Content-Type: text/markdown
|
|
|
38
38
|
|
|
39
39
|
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.
|
|
40
40
|
|
|
41
|
+
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.
|
|
42
|
+
|
|
41
43
|
## Install
|
|
42
44
|
|
|
43
45
|
```bash
|
|
@@ -54,6 +56,15 @@ uv tool install markdown-os
|
|
|
54
56
|
|
|
55
57
|
To upgrade after installing with uv: `uv tool upgrade markdown-os`
|
|
56
58
|
|
|
59
|
+
## Desktop app
|
|
60
|
+
|
|
61
|
+
Download the latest desktop installers from GitHub Releases:
|
|
62
|
+
|
|
63
|
+
- macOS: `.dmg`
|
|
64
|
+
- Windows: `.exe`
|
|
65
|
+
|
|
66
|
+
The desktop app keeps the same editor UI, but launches in a native desktop shell with recent files/folders and native open dialogs.
|
|
67
|
+
|
|
57
68
|
## Usage
|
|
58
69
|
|
|
59
70
|
Single file:
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
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.
|
|
6
6
|
|
|
7
|
+
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.
|
|
8
|
+
|
|
7
9
|
## Install
|
|
8
10
|
|
|
9
11
|
```bash
|
|
@@ -20,6 +22,15 @@ uv tool install markdown-os
|
|
|
20
22
|
|
|
21
23
|
To upgrade after installing with uv: `uv tool upgrade markdown-os`
|
|
22
24
|
|
|
25
|
+
## Desktop app
|
|
26
|
+
|
|
27
|
+
Download the latest desktop installers from GitHub Releases:
|
|
28
|
+
|
|
29
|
+
- macOS: `.dmg`
|
|
30
|
+
- Windows: `.exe`
|
|
31
|
+
|
|
32
|
+
The desktop app keeps the same editor UI, but launches in a native desktop shell with recent files/folders and native open dialogs.
|
|
33
|
+
|
|
23
34
|
## Usage
|
|
24
35
|
|
|
25
36
|
Single file:
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
appId: com.markdownos.desktop
|
|
2
|
+
productName: Markdown-OS
|
|
3
|
+
directories:
|
|
4
|
+
output: dist
|
|
5
|
+
buildResources: build
|
|
6
|
+
files:
|
|
7
|
+
- dist/**
|
|
8
|
+
- package.json
|
|
9
|
+
extraResources:
|
|
10
|
+
- from: ../markdown_os
|
|
11
|
+
to: markdown_os
|
|
12
|
+
filter:
|
|
13
|
+
- "**/*"
|
|
14
|
+
- from: ../README.md
|
|
15
|
+
to: README.md
|
|
16
|
+
- from: ../pyproject.toml
|
|
17
|
+
to: pyproject.toml
|
|
18
|
+
- from: ../uv.lock
|
|
19
|
+
to: uv.lock
|
|
20
|
+
asar: true
|
|
21
|
+
mac:
|
|
22
|
+
target:
|
|
23
|
+
- dmg
|
|
24
|
+
category: public.app-category.developer-tools
|
|
25
|
+
artifactName: markdown-os-desktop-${version}-macos.${ext}
|
|
26
|
+
fileAssociations:
|
|
27
|
+
- ext:
|
|
28
|
+
- md
|
|
29
|
+
- markdown
|
|
30
|
+
name: Markdown document
|
|
31
|
+
win:
|
|
32
|
+
target:
|
|
33
|
+
- nsis
|
|
34
|
+
artifactName: markdown-os-desktop-${version}-windows-setup.${ext}
|
|
35
|
+
fileAssociations:
|
|
36
|
+
- ext: md
|
|
37
|
+
name: Markdown document
|
|
38
|
+
- ext: markdown
|
|
39
|
+
name: Markdown document
|
|
40
|
+
nsis:
|
|
41
|
+
oneClick: false
|
|
42
|
+
perMachine: false
|