⭐ CODEGRAPHCONTEXT: /Users/home/Workspace/Apps/.code-analysis/monorepo-analysis.md ⭐ QUERIES: /Users/home/Workspace/Apps/.code-analysis/essential-queries.md Agent Context: /Users/home/Workspace/Apps/Papyrus/AGENTS.md
| Action | Command | Notes |
|---|---|---|
| Push | razorpush Papyrus |
Commit and save Papyrus only |
| Build (Release) | papyrusbuild |
Full .app + DMG (~2m) |
| Verify | uv run pytest tests/test_parser.py tests/test_renderer.py -q |
Focused parser/renderer check |
| Run | uv run python -m papyrus.main |
Dev run |
| Component | Location | Purpose |
|---|---|---|
| PapyrusApp | src/papyrus/core/app.py |
Main window wiring, preview/convert actions, Finder and Snapchat mode |
| PapyrusOrchestrator | src/papyrus/core/orchestrator.py |
Browser preview, export flow, theme state, temp preview cleanup |
| ContentParser | src/papyrus/core/parser.py |
Input detection plus readable HTML extraction |
| PDFRenderer | src/papyrus/core/renderer.py |
Print CSS injection and Playwright Chromium PDF output |
| PreviewPanel | src/papyrus/ui/composer.py |
Right-side stacked preview and Finder panel |
- Browser preview of the current editor content
- HTML and plain-text export through a shared conversion pipeline
- Finder mode for supported Snapchat HTML imports
Cmd+Fopens Finder search
- Storage: No confirmed persistent history store in the current code path; preview uses temporary HTML files
- Engine: Playwright Chromium is required for PDF rendering
- Python Lock: STRICTLY 3.13.x.
- Imports: Absolute ONLY (
from papyrus.core import X). - Pipeline: Raw URL strings are recognized, but export currently stops with a notice instead of fetching remote pages.
- Styling: Keep shared window styling centralized in
ui/composer.py;ui/highlighter.pyhas its own local color map for syntax highlighting. - Version: Read from
pyproject.toml(SSOT).