https://github.com/arto-app/arto
🅰️ Arto — the Art of Reading Markdown.
https://github.com/arto-app/arto
macos markdown
Last synced: 3 days ago
JSON representation
🅰️ Arto — the Art of Reading Markdown.
- Host: GitHub
- URL: https://github.com/arto-app/arto
- Owner: arto-app
- License: mit
- Created: 2025-10-10T10:04:50.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2026-03-20T15:10:50.000Z (about 1 month ago)
- Last Synced: 2026-03-21T07:02:36.329Z (about 1 month ago)
- Topics: macos, markdown
- Language: Rust
- Homepage: https://arto-app.github.io/
- Size: 2.25 MB
- Stars: 141
- Watchers: 2
- Forks: 7
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
**Arto — the Art of Reading Markdown.**
A local app that faithfully recreates GitHub-style Markdown rendering for a beautiful reading experience.
## Philosophy
Markdown has become more than a lightweight markup language — it's the medium for documentation, communication, and thinking in the developer's world. While most tools focus on _writing_ Markdown, **Arto is designed for _reading_ it beautifully**.
The name "Arto" comes from "Art of Reading" — reflecting the philosophy that reading Markdown is not just a utility task, but a quiet, deliberate act of understanding and appreciation.
Arto faithfully reproduces GitHub's Markdown rendering in a local, offline environment, offering a calm and precise reading experience with thoughtful typography and balanced whitespace.
> [!WARNING]
> **Beta Software Notice**
>
> - This application is still in **beta** and may contain bugs or unstable behavior. Features may change without regard to backward compatibility.
> - **macOS Only**: This application is currently designed exclusively for macOS and does not support other platforms. However, cross-platform support is a long-term goal, and **PRs are welcome**.
## Features
### Core Reading Experience
- **GitHub-Style Rendering** — Accurate reproduction of GitHub's Markdown styling with full support for extended syntax
- **Native Performance** — Built with Rust for fast, responsive rendering
- **Auto-Reload** — Automatically updates when the file changes on disk
- **Offline First** — No internet connection required — read your docs anytime, anywhere
### Navigation & Organization
- **File Explorer** — Built-in sidebar with file tree navigation for browsing local directories
- **Quick Access** — Bookmark frequently used files and directories for instant access
- **Directory History** — Back/forward navigation within the sidebar file explorer
- **Table of Contents** — Automatic TOC panel for easy document navigation
- **Live Navigation** — Navigate between linked markdown documents with history support (back/forward)
### Search & Discovery
- **Find in Page** — Search within documents with `Cmd+F`
- **Pinned Search** — Pin search queries with persistent multi-color highlighting across sessions
### Window & Tab Management
- **Tab Support** — Open and manage multiple documents in tabs within a single window
- **Multi-Window** — Create multiple windows and open child windows for diagrams
- **Cross-Window Tabs** — Drag and drop tabs between windows
- **Drag & Drop** — Simply drag markdown files onto the window to open them
### Advanced Rendering
- **Mermaid Diagrams** — Interactive diagram viewer with zoom, pan, and copy-as-image
- **Math Expressions** — Beautiful KaTeX rendering for mathematical notation
- **Code Highlighting** — Syntax highlighting with copy button for code blocks
- **Frontmatter** — Renders YAML frontmatter as a styled, collapsible table
- **GitHub Alerts** — Full support for NOTE, TIP, IMPORTANT, WARNING, and CAUTION alerts
### Customization
- **Dark Mode** — Manual and automatic theme switching based on system preferences
- **Zoom Controls** — Keyboard shortcuts and trackpad gestures for zoom
- **Preferences** — Configurable settings for sidebar, TOC, and more
- **Context Menus** — Right-click menus for quick actions on files and content
## Installation
Use [Homebrew] tap to install. Since the application is not signed or notarized with an Apple Developer ID, you'll need to remove the quarantine attribute after installation.
See [homebrew-tap] for more information.
```
brew install --cask arto-app/tap/arto
xattr -dr com.apple.quarantine /Applications/Arto.app
```
Alternatively, [Nix] is also supported.
To try it without a permanent installation:
```
nix run github:arto-app/Arto
```
For a permanent installation, use [nix-darwin] or [home-manager].
Add the following to your flake inputs:
```nix
arto.url = "github:arto-app/Arto";
```
Then add it to `environment.systemPackages` (nix-darwin) or `home.packages` (home-manager):
```nix
environment.systemPackages = [ inputs.arto.packages.${system}.default ];
```
Launch the application to see the welcome screen with keyboard shortcuts and usage instructions.
## Usage
After installation, the `arto` command becomes available in your terminal:
```
arto # Launch Arto (shows welcome screen)
arto README.md # Open a specific file
arto --open=screen README.md
arto --open=new README.md
arto --directory=. README.md
arto docs/ # Open a directory in the file explorer
arto file1.md file2.md # Open multiple files in tabs
```
Arto runs as a **single instance** — if Arto is already running, the command sends requests to the existing process instead of launching a new one.
- `arto FILE` uses `last_focused` behavior by default (reuse last focused visible window).
- `--open=screen` opens on/reuses a visible window on the cursor's current screen.
- `--open=new` always opens in a new window.
- `--directory=DIR` sets the FileExplorer root directory for that invocation.
- Positional directory arguments (e.g. `arto docs/`) also set the root directory.
- Running `arto` without arguments shows/focuses an existing window if hidden, or opens one if none exists.
[Homebrew]: https://brew.sh/
[homebrew-tap]: https://github.com/arto-app/homebrew-tap
[Nix]: https://nixos.org/
[nix-darwin]: https://github.com/nix-darwin/nix-darwin
[home-manager]: https://github.com/nix-community/home-manager
## Official Website
Visit [arto-app.github.io](https://arto-app.github.io) for screenshots, feature highlights, and more.
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.
## License
See [LICENSE](LICENSE) file for details.