Skip to content

flyx/nova-extension-utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nova-extension-utils

This is a Nix Flake that provides utilities for building extensions for the Nova editor:

  • provides a Nix function to compile Tree Sitter grammars for use with Nova
  • lets you define configuration items that can be set globally while being overridable per workspace
  • provides JS utilities to reduce boilerplate code in your extension concerning language servers and fetching configuration items
  • Nix Flakes allow you to easily depend on external tree sitter grammars without git submodule or copying the grammar source.

Usage

The general workflow for a Nova extension built with nova-extension-utils is as follows:

  • You create a flake.nix in your repository and reference nova-extension-utils there.
  • In flake.nix, you can instruct nix to compile tree sitter grammars (optional).
  • Also in flake.nix, you define the contents of your extension's extension.json.
  • nova-extension-utils will automatically recognize relevant folders in your repository (Syntaxes, Scripts, Images, …). Readme-user.md or, if this doesn't exist, Readme.md, are copied into the generated extension as Readme file.
  • Via nix build, you can build your extension, giving you result/<name>.novaextension.
  • For testing, you can open result/<name>.novaextension in a separate Nova window and enable it locally from there.
  • Also from there, you can publish your extension.

Documentation

See Documentation.

License

MIT

About

Nix Flake for creating Nova.app extensions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published