Skip to content

Nova ​

Nova is a fast, flexible, and powerful native text editor for macOS. Protocol Launcher allows you to generate deep links to open files, folders, clone repositories, and more in Nova.

Usage ​

There are two ways to use this library:

  • On-Demand import from subpaths enables tree-shaking and keeps bundles small.
  • Full Import from the root package is convenient but includes all app modules.

Pick On-Demand for production builds; Full Import is fine for quick scripts or demos.

Select Installation Method

On-Demand
Recommended. Optimized for production.
Full Import
Convenient. Good for quick scripts.

Open IDE ​

On-Demand
ts
import { open } from 'protocol-launcher/nova'

const url = open()

Open File ​

On-Demand
ts
import { openFile } from 'protocol-launcher/nova'

const url = openFile({
  path: '/etc/hosts',
  line: 1,
  column: 2,
})

Open Folder ​

On-Demand
ts
import { openFolder } from 'protocol-launcher/nova'

const url = openFolder({
  path: '/etc',
})

Clone Project ​

On-Demand
ts
import { cloneProject } from 'protocol-launcher/nova'

const url = cloneProject({
  url: 'https://github.com/zhensherlock/protocol-launcher.git',
})

Open Extension ​

On-Demand
ts
import { openExtension } from 'protocol-launcher/nova'

const url = openExtension({
  id: 'com.panic.Playdate',
})

Register Nova ​

On-Demand
ts
import { register } from 'protocol-launcher/nova'

const url = register({
  serial: 'NOVA-XXXX-XXXX-XXXX-XXXX-XXXX-X',
})