Neon Vision Editor
A native editor for markdown, notes, and code across macOS, iPhone, and iPad.
Minimal by design. Quick edits, fast file access, no IDE bloat.
Download: GitHub Releases · App Store · TestFlight
Status: active release
Latest release: v0.8.6 Next release target: v0.8.7 Platform target: macOS 26 (Tahoe) compatible with macOS Sequoia Apple Silicon: tested / Intel: not tested Direct GitHub release: v0.8.6 / iOS App Store approved: v0.7.8 / iOS App Store review pending: v0.8.6 / macOS App Store approved: v0.8.5 / macOS App Store review pending: v0.8.6 Last updated (README): 2026-07-12 for latest release v0.8.6
- v0.8.5: Fixes TestFlight crash reports tied to macOS window restoration callbacks and AppKit delegate forwarding during close/restore flows.
- v0.8.5: Restores reliable macOS editor text rendering after file load, sidebar toggles, window focus changes, and older macOS layout refreshes.
- v0.8.5: Expands TypeScript syntax highlighting so modern TypeScript files keep imports, decorators, utility types, async arrows, and property access readable.
- Hardened the macOS editor and window lifecycle paths while keeping iOS and iPadOS builds unchanged.
- Added broader TypeScript highlighting coverage with regression tests for decorators, type utilities, async functions, readonly properties, and property access.
- v0.8.4: Improves day-to-day editor interaction with toolbar hover labels, stronger find-panel focus, VIM arrow-key navigation, and a more useful macOS sidebar terminal.
- v0.8.4: Hardens Markdown preview, custom AI endpoint validation, and GitHub Pages deployment so common user workflows are less likely to fail during active editing or release updates.
- v0.8.4: Stabilizes macOS compatibility follow-up for tab hit testing, release metadata, and post-0.8.3 App Store review cleanup.
- Added hover labels for toolbar buttons, improved find-panel typing focus and contrast, and expanded VIM normal-mode movement to physical arrow keys.
- Upgraded the macOS sidebar terminal from single-command execution to a persistent sidebar shell session for common git, npm, node, and docker-style commands.
- Serialized GitHub Pages deployments so fast successive pushes do not cancel or race active Pages publishes.
- Jump: Install | Features | Contributing
- Quick install: GitHub Releases, App Store, TestFlight
- Need help quickly: Troubleshooting | FAQ | Known Issues
git clone https://github.com/h3pdesign/Neon-Vision-Editor.gitcd Neon-Vision-Editorxcodebuild -project "Neon Vision Editor.xcodeproj" -scheme "Neon Vision Editor" -destination 'platform=macOS,name=My Mac' buildopen "Neon Vision Editor.xcodeproj"and run, then useCmd+Pfor Quick Open.
| For | Not For |
|---|---|
| Fast native editing across macOS, iOS, iPadOS | Full IDE workflows with deep refactoring/debugger stacks |
| Markdown writing and script/config edits with highlighting | Teams that require complete Intel Mac validation today |
| Users who want low overhead and quick file access | Users expecting full desktop-IDE parity on iPhone |
Start Here · Release Channels · Core Workflows · Download Metrics · Project Documentation · Features
Release Spotlight · Platform Matrix · Roadmap (Near Term) · Troubleshooting · FAQ · Changelog · Contributing Quickstart · Support & Feedback
| Channel | Best for | Delivery | Current status |
|---|---|---|---|
| Direct notarized builds and fastest stable updates | GitHub Releases | v0.8.6 release docs current; v0.8.6 direct download current | |
| Apple-managed install/update flow | App Store | v0.8.5 public listing current | |
| Early testing of upcoming changes | TestFlight | Newest beta availability may vary by review state |
Release Download + Traffic Trend
Styled line chart shows per-release totals with 14-day traffic counters for clones and views.
| Document | Purpose |
|---|---|
CHANGELOG.md |
Full release history and milestone issue coverage |
CONTRIBUTING.md |
Local setup, build, and contribution workflow |
PRIVACY.md |
Privacy guarantees and data-handling policy |
SECURITY.md |
Security policy and responsible disclosure |
release/ |
TestFlight, App Store, and release preflight checklists |
| Best For | Why Neon Vision Editor |
|---|---|
| Quick note takers | Fast native startup and low UI overhead for quick edits |
| Markdown-focused writers | Clean editing with quick preview workflows on Apple devices |
| Developers editing scripts/config files | Syntax highlighting + fast file navigation without full IDE complexity |
| Advantage | What It Means |
|---|---|
| Faster startup | Lower overhead for short edit sessions |
| Focused surface | Editor-first workflow without project-system bloat |
| Native Apple behavior | Consistent experience on macOS, iOS, and iPadOS |
Prebuilt binaries are available on GitHub Releases.
The direct GitHub release is currently ahead of the App Store version. The App Store version may temporarily lag while updates are in Apple review.
| Channel | Platform | Best For | Download | Release Track | Notes |
|---|---|---|---|---|---|
| Stable | macOS | Direct notarized builds and fastest stable updates | GitHub Releases | v0.8.6 | Current direct download |
| Store | iOS / iPadOS | Apple-managed installs and updates | Neon Vision Editor on the App Store | v0.7.8 | Current public App Store listing |
| Store | macOS | Apple-managed installs and updates | Neon Vision Editor on the App Store | v0.8.5 | Current public App Store listing |
| Store Review | iOS / iPadOS | Upcoming App Store update | App Store Connect review | v0.8.6 | In Apple review |
| Store Review | macOS | Upcoming App Store update | App Store Connect review | v0.8.6 | Pending Apple review |
| Beta | iOS / iPadOS / macOS | Testing upcoming changes before stable | TestFlight Invite | v0.8.6 | Early access builds for feedback; availability may vary by review state |
Install the latest release directly:
curl -fsSL https://raw.githubusercontent.com/h3pdesign/Neon-Vision-Editor/main/scripts/install.sh | shInstall without admin password prompts (user-local app folder):
curl -fsSL https://raw.githubusercontent.com/h3pdesign/Neon-Vision-Editor/main/scripts/install.sh | sh -s -- --appdir "$HOME/Applications"brew tap h3pdesign/tap
brew install --cask neon-vision-editorTap repository: h3pdesign/homebrew-tap
If Homebrew asks for an admin password, it is usually because casks install into /Applications.
Use this to avoid that:
brew install --cask --appdir="$HOME/Applications" neon-vision-editorThe macOS app bundles an optional nve helper for terminal workflows. Install it only when you want a shell command:
- Open Settings > Support.
- Copy the Command Line Helper install command.
- Run it in Terminal to link the bundled helper into
$HOME/bin.
nve README.md
nve --wait --new-window "Neon Vision Editor/UI/ContentView.swift"
nve --line 42 "Neon Vision Editor/UI/ContentView.swift"Development builds can also link the repository copy:
ln -sf "$PWD/scripts/nve" "$HOME/.local/bin/nve"Permission model: the helper is optional and user-linked. It calls macOS Launch Services through /usr/bin/open and does not read file contents itself. Neon Vision Editor handles the document-open request inside the sandbox with user-selected read/write file access and security-scoped file access. It does not require Full Disk Access, Accessibility access, administrator permission, background services, or telemetry. See docs/CommandLineHelper.md.
If macOS blocks first launch:
- Open System Settings.
- Go to Privacy & Security.
- In Security, find the blocked app message.
- Click Open Anyway.
- Confirm the dialog.
Project Sidebar keeps Files, Search, Diff, Git, and Terminal in one stable surface. Remote Sessions stay opt-in and user-triggered. Markdown Preview keeps style and export in one toolbar flow.
Neon Vision Editor keeps the surface minimal and focuses on fast writing/coding workflows. Platform-specific availability is tracked in the Platform Matrix section below.
Editing Core
Navigation & Preview
Platform, Output & Customization
Safety & Privacy
- Fast loading for regular and large text files with tabbed editing.
- Broad Swift 6-ready syntax highlighting (including TeX/LaTeX), inline completion with Tab-to-accept, and regex Find/Replace with Replace All.
- Optional Code Minimap gives a compact file overview and click-to-jump navigation without changing the default editor surface.
- Invisible-character markers on iPhone and iPad render in a lightweight overlay so spaces, tabs, and newlines stay aligned while scrolling.
- Optional Vim workflow support and starter templates for common languages.
- Quick Open (
Cmd+P), project sidebar navigation, and recursive project tree rendering. - Files, Search, Diff, and Git share larger card-style sidebar tabs with visible grey inactive states and a consistent 450 pt default width.
- The macOS project sidebar includes a Terminal tab that keeps output while switching tabs, offers project/home working-directory choices, and provides clear/restart controls.
scripts/nveopens files from the terminal and supports--wait,--new-window, and--linecompatibility flags.- Find in Files keeps results visible on Mac and iPad when a match opens, while replacement targets start unselected by default.
- Remote Sessions are opt-in: macOS owns SSH-key login and can publish an attach code so iPhone and iPad can browse, open, edit, and explicitly save supported remote text files through the Mac-hosted broker.
- Project quick actions (
Expand All/Collapse All), recent project folders, supported-files-only filtering, and default ignored heavy folders (.git,.build,node_modules,DerivedData).
- Optional iCloud Appearance & Theme Sync keeps appearance, theme colors, custom theme data, formatting toggles, and Markdown preview theme behavior aligned across signed-in devices.
- Sync status includes the latest local iCloud result and timestamp. Documents, API tokens, remote sessions, and editor contents are not synced.
- Native side-by-side diff view for Compare with Disk and Compare Open Tabs workflows, with change navigation.
- Cross-platform
Save As…and Close All Tabs with confirmation. - Remote saves are explicit and conflict-aware; if the remote revision changes, the app offers a compare-before-reload path instead of overwriting silently.
- Native Markdown preview templates on macOS/iOS/iPadOS plus iPhone bottom-sheet preview.
.svgfile support via XML mode and bracket helper on all platforms.- Markdown and Swift source exports declare their content types correctly on iOS.
- Unsupported-file open/import safety guards, remote text-file limits, and session restore for previously opened project folder.
- Built-in theme collection: Dracula, One Dark Pro, Nord, Tokyo Night, Gruvbox, and Neon Glow.
- Grouped settings, optional StoreKit support flow, and AI Activity Log diagnostics on macOS.
- iPadOS App Store builds keep terminal and shell-execution entry points macOS-only.
- GitHub can now create and publish release tags, ZIP, DMG, checksums, and notes from the manual release workflow.
- SVG and HTML previews open beside source files, and Markdown preview can passively render embedded HTML.
- No release behavior changes network access, token storage, sandboxing, or telemetry posture.
flowchart LR
Mac["Platform: macOS shell (SwiftUI + AppKit bridges)"]
IOS["Platform: iOS/iPadOS shell (SwiftUI + UIKit bridges)"]
ACT["App Layer: user actions (toolbar/menu/shortcuts)"]
VM["App Layer: EditorViewModel (@MainActor state owner)"]
CMD["App Layer: command reducers (Flux-style mutations)"]
IO["Core: file I/O + load/sanitize pipeline"]
HL["Core: syntax highlighting + runtime limits"]
FIND["Core: find/replace + selection engine"]
PREV["Core: markdown preview renderer"]
MINI["Core: code minimap snapshot builder"]
REMOTE["Core: RemoteSessionStore (opt-in broker + SSH owner)"]
GIT["Core: GitService (macOS-only shell bridge)"]
TERM["Core: sidebar terminal runner (macOS-only)"]
SAFE["Core: unsupported-file safety guards"]
STORE["Infra: tabs + session restore store"]
PREFS["Infra: settings + persistence"]
SEC["Infra: SecureTokenStore (Keychain)"]
UPD["Infra: release update manager"]
Mac --> ACT
IOS --> ACT
ACT --> VM
VM --> CMD
CMD --> STORE
VM --> IO
VM --> HL
VM --> FIND
VM --> PREV
VM --> MINI
VM --> REMOTE
VM --> GIT
VM --> TERM
VM --> SAFE
VM --> PREFS
VM --> UPD
PREFS --> STORE
IO --> STORE
VM --> SEC
REMOTE --> SEC
classDef platform stroke:#2563EB,stroke-width:3px,fill:transparent,font-family:ui-monospace\, SFMono-Regular\, Menlo\, Monaco\, Consolas\, Liberation Mono\, monospace,font-size:13px;
classDef app stroke:#059669,stroke-width:3px,fill:transparent,font-family:ui-monospace\, SFMono-Regular\, Menlo\, Monaco\, Consolas\, Liberation Mono\, monospace,font-size:13px;
classDef core stroke:#EA580C,stroke-width:3px,fill:transparent,font-family:ui-monospace\, SFMono-Regular\, Menlo\, Monaco\, Consolas\, Liberation Mono\, monospace,font-size:13px;
classDef infra stroke:#9333EA,stroke-width:3px,fill:transparent,font-family:ui-monospace\, SFMono-Regular\, Menlo\, Monaco\, Consolas\, Liberation Mono\, monospace,font-size:13px;
class Mac,IOS platform;
class ACT,VM,CMD app;
class IO,HL,FIND,PREV,MINI,REMOTE,GIT,TERM,SAFE core;
class STORE,PREFS,SEC,UPD infra;
EditorViewModelis the single UI-facing orchestration point per window/scene.- Commands mutate editor state predictably; session/tabs persist through store services.
- File access and parsing stay off the main thread; UI state changes stay on the main thread.
- Platform shells stay thin and route interactions into shared app/core services.
- Remote sessions stay opt-in; macOS owns SSH-key login while iPhone and iPad attach through the Mac-hosted broker.
- Security-sensitive credentials and SSH-key bookmarks remain in Keychain (
SecureTokenStore), not plain prefs. - Color key in diagram: blue = platform shell, green = app orchestration, orange = core services, purple = infrastructure.
Full architecture reference: architecture.md. The reference tracks the current Swift 6 cross-platform structure, platform guards, editor rendering paths, performance rules, and release verification workflow.
- Keep UI mutations on the main thread (
@MainActor) and heavy work off the UI thread. - Keep window/scene state isolated to avoid accidental cross-window coupling.
- Keep security defaults strict: tokens in Keychain, no telemetry by default.
- Keep platform wrappers thin and push shared behavior into common services.
Most editor features are shared across macOS, iOS, and iPadOS.
- Fast text editing with syntax highlighting.
- Markdown preview templates (Default, Docs, Article, Compact).
- Project sidebar with supported-files filter and larger card-style tabs; Git and Terminal are macOS-only.
- Unsupported-file safety alerts.
- SVG (
.svg) support via XML mode. - Close All Tabs with confirmation.
- Bracket helper and grouped Settings cards.
- Optional remote attach clients on iPhone and iPad when a Mac-hosted broker session is active.
- Cross-platform release gate covers macOS, iOS Simulator, and iPad Simulator builds.
- Notarized release pipeline: release-notarized.yml
- Pre-release verification gate: pre-release-ci.yml
- Security scanning: CodeQL workflow
- Homebrew cask sync: update-cask.yml
More release integrity details: Release Integrity
- macOS
- iPad
- iPhone
- Source image index for docs:
docs/images/README.md - App Store gallery: Neon Vision Editor on App Store
- Latest release assets: GitHub Releases
Light editor workspace with symbol navigation |
Wide light editor workspace with toolbar actions |
Compact light editor workspace with focused code view |
Light editor workspace with code minimap |
Project navigation and editing workflow on iPad |
Markdown preview workflow in the editor context |
| Track | Current Focus | Status |
|---|---|---|
| Stable direct download | v0.8.5 notarized GitHub release |
Current |
| App Store rollout | Public v0.8.0, v0.8.1 prepared for review follow-up |
Preparing App Store review follow-up |
| Post-0.8 stabilization | Crash triage, docs freshness, platform polish, App Store/Xcode Cloud release checks | Next patch train |
| Larger workflow work | Remote workflow hardening, minimap polish, project navigation refinements | Later v0.8+ work |
focuses on editor interaction polish, Markdown preview stability, local custom AI endpoints, sidebar terminal improvements, and release workflow hardening. Tracking: Release v0.8.5
targets post-0.8.5 stabilization: App Store review follow-up, README/release metadata freshness, preview polish, and small cross-platform editor fixes. Tracking: Milestones
larger workflow expansion after the current cross-platform editor baseline is verified, with remote workflows and navigation surfaces kept opt-in until they are fully hardened.
- Open known issues (live filter): label:known-issue
- App blocked on first launch: use Gatekeeper steps above in
Privacy & Security. - Markdown preview not visible: use the preview action from an open Markdown file; iPhone presents preview in a sheet, while macOS and iPadOS can show it inline.
- Shortcut not working on iOS: connect a hardware keyboard for shortcut-based flows like
Cmd+P. - Sidebar/layout feels cramped on iPad: switch orientation or close side panels before preview.
- Settings feel off after updates: quit/relaunch app and verify current release version in Settings.
- Remote connection refused on a local Mac target: enable System Settings > General > Sharing > Remote Login, then start the Remote session again.
- Theme and appearance:
Settings > Designs - Appearance/theme iCloud sync:
Settings > Allgemein/General > Window - Editor behavior (font, line height, wrapping, snippets, minimap):
Settings > Editor - Startup/session behavior:
Settings > Allgemein/General - Remote sessions:
Settings > Mehr/More > RemoteorSettings > Remoteon wider layouts - Support and purchase options:
Settings > Mehr/More(platform-dependent)
- Does Neon Vision Editor support Intel Macs?
Intel is currently not fully validated. If you can help test, see Help wanted: Intel Mac test coverage. - Can I use it offline?
Yes for core editing. Network is only used for explicit actions such as selected AI providers, update checks, GitHub release downloads, or opt-in Remote Sessions. - Do I need AI enabled to use the editor?
No. Core editing, navigation, and preview features work without AI. - Where are tokens stored?
In Keychain viaSecureTokenStore, not inUserDefaults.
All shortcuts use Cmd (⌘). iPad/iOS require a hardware keyboard.
Latest stable: v0.8.5 (2026-07-08)
| Version | Date | Highlights | Fixes | Breaking changes | Migration |
|---|---|---|---|---|---|
v0.8.5 |
2026-07-08 | Hardened the macOS editor and window lifecycle paths while keeping iOS and iPadOS builds unchanged; broader TypeScript highlighting coverage with regression tests for decorators, type utilities, async functions, readonly properties, and property access | Removed unsafe generic NSWindowDelegate forwarding from the macOS close-confirmation bridge and explicitly forwards restoration callbacks instead; Coalesced macOS text-view display refreshes onto the next main-runloop turn so layout invalidation does not run inside AppKit layout observation; Refreshed visible editor glyph display after geometry and app/window activation changes to avoid blank text after sidebar or focus transitions |
None noted | None required |
v0.8.4 |
2026-07-06 | hover labels for toolbar buttons, improved find-panel typing focus and contrast, and expanded VIM normal-mode movement to physical arrow keys; Upgraded the macOS sidebar terminal from single-command execution to a persistent sidebar shell session for common git, npm, node, and docker-style commands; Serialized GitHub Pages deployments so fast successive pushes do not cancel or race active Pages publishes | custom AI provider validation so localhost endpoints can be used intentionally while public remote endpoints still require HTTPS; Coalesced Markdown preview reloads to reduce redundant refreshes during active typing and avoid avoidable WebView churn; Stabilized the sidebar terminal shell startup by avoiding interactive-shell assumptions in the pipe-backed implementation | None noted | None required |
v0.8.3 |
2026-07-02 | GitHub Flavored Markdown as the default preview mode while keeping CommonMark compatibility available; Markdown code-block language controls and syntax highlighting with theme-aware, higher-contrast colors; Enabled line wrap by default for new installs across supported platforms while preserving existing user preferences; Reduced editor/preview update overhead so Markdown edits and preview refreshes stay responsive during active typing | Markdown preview crashes when editing heading markers, changing fenced-code language state, or re-rendering malformed intermediate Markdown; Markdown preview text sizing on iPad so preview text tracks the editor font size instead of rendering noticeably larger; first-open Settings placement and macOS Settings window sizing so theme controls, preview cards, and Markdown Preview settings fit without clipping | None noted | None required |
- Full release history:
CHANGELOG.md - Latest release: v0.8.6
- Compare recent changes: v0.8.4...v0.8.5
- Intel Mac support is not fully validated yet.
- Vim mode is intentionally lightweight, not full Vim emulation.
- iPhone and iPad workflows still offer a smaller feature set than macOS.
- Privacy policy:
PRIVACY.md. - API keys are stored in Keychain (
SecureTokenStore), notUserDefaults. - Network traffic uses HTTPS.
- No telemetry.
- External AI requests only occur when code completion is enabled and a provider is selected.
- Remote Sessions are opt-in and user-triggered; when enabled, broker payloads are encrypted and SSH-key bookmarks stay in Keychain.
- Security policy and reporting details:
SECURITY.md. - New repository commits are SSH-signed; older historical commits may still predate commit signing.
- Local SSH-signature verification in this clone can use the repo-scoped
.git_allowed_signersfile.
- Tag:
v0.8.5 - Tagged commit: release tag target
- Verify local tag target:
git rev-parse --verify v0.8.5- Verify downloaded artifact checksum locally:
shasum -a 256 <downloaded-file>- Verify local SSH commit signatures in this clone:
git config --local gpg.ssh.allowedSignersFile .git_allowed_signers
git log --show-signature -1Stable: tagged GitHub releases intended for daily use.Beta: TestFlight builds may include in-progress UX and platform polish.- Cadence: fixes/polish can ship between minor tags, with summary notes mirrored in README and
CHANGELOG.md.
- Designed and tested for macOS 26 (Tahoe), with compatibility work for macOS 15 Sequoia.
- Xcode deployment target: macOS 15.0; iOS/iPadOS 18.6.
- Apple Silicon recommended
- Xcode with the macOS 26 SDK/toolchain for current release assets and icon payloads.
- iOS and iPadOS simulator runtimes installed in Xcode for cross-platform verification
If you already completed the Start in 60s (Source Build), you can open and run directly from Xcode.
git clone https://github.com/h3pdesign/Neon-Vision-Editor.git
cd Neon-Vision-Editor
open "Neon Vision Editor.xcodeproj"Contributor guide: CONTRIBUTING.md
- Fork the repo and create a focused branch.
- Implement the smallest safe diff for your change.
- Build on macOS first.
- Run cross-platform verification script.
- Open a PR with screenshots for UI changes and a short risk note.
- Link to related issue/milestone and call out user-visible impact.
git clone https://github.com/h3pdesign/Neon-Vision-Editor.git
cd Neon-Vision-Editor
xcodebuild -project "Neon Vision Editor.xcodeproj" -scheme "Neon Vision Editor" -destination 'platform=macOS,name=My Mac' buildLock-safe cross-platform verification (sequential macOS + iOS Simulator + iPad Simulator):
scripts/ci/build_platform_matrix.shShare what works well and what should improve for both the app and the README.
Share positive feedback · Share negative feedback
- Questions and ideas: GitHub Discussions
- Project board (Now / Next / Later): Neon Vision Editor Roadmap
- Known issues: Known Issues Hub #50
- Contributor entry points: good first issue | help wanted
- Issue filters: enhancement | known-issue | regression
Keep it free, sustainable, and improving.
-
Neon Vision Editor will always stay free to use.
-
No subscriptions and no paywalls.
-
Keeping the app alive still has real costs: Apple Developer Program fee, maintenance, updates, and long-term support.
-
Optional Support Tip (Consumable): $4.99 and can be purchased multiple times.
-
Your support helps cover Apple developer fees, bug fixes and updates, future improvements and features, and long-term support.
-
Thank you for helping keep Neon Vision Editor free for everyone.
-
In-app support tip:
Settings > Mehr/More(platform-dependent) -
External support: Buy Me a Coffee
-
External support: Patreon
-
h3p apps portal for docs, setup guides, and release workflows: >h3p apps
-
External support: PayPal
To auto-increment Xcode CURRENT_PROJECT_VERSION on every commit:
scripts/install_git_hooks.shNeon Vision Editor is licensed under the Apache License, Version 2.0.
See LICENSE.
The project moved to Apache-2.0 because it keeps the same permissive open-source model while adding an explicit patent grant and patent-termination protection for contributors and downstream users. This better matches a developer tool that may receive contributions, integrations, and commercial redistribution over time.