Nova

Extensions


Readme

Very fast JavaScript and Typescript integration, powered by Deno.

  • Inline Typechecking and Intellisense for Javascript and Typescript!
  • Code linting!
  • Automatic formatting on save!
  • Remote module (e.g. import { x } from "https://cdn.com/mod.ts") support!
  • Task templates for deno run and deno bundle!

This is pre-v1.0. While the most important functions of Deno are integrated here, there are missing features and a few known bugs. This is a best-effort extension, but it might be good enough to start with!

Requirements 🎒

To use this extension, you must have the Deno CLI installed (v.1.10.3 or above). Here's how you can do that.

Commands ⌨️

  • Cache - Cache all external dependencies
  • Format Document - Format with Deno's formatter
  • Rename symbol - Rename variables, functions, etc.

Configuration options ⚙️

All of the below can be configured at a global and per-project basis (via Project → Project Settings...).

  • Format on save
  • Deno language features
  • Linting
  • Unstable Deno APIs

The following can be configured on a per-project lever:

  • Import map
  • tsconfig.json

Known bugs 🪳

There are a few bugs which are out of my hands. I'm doing my best to follow up with both Panic and the Deno team to resolve them.

  • Many code actions (e.g. automatic imports) do not work.
  • Autocompletions are only displayed when certain characters are input (., \, ', /, @, <, #).
  • The Jump to definition command does not work for values defined within external dependencies.

Mega Shoutouts 📣

Much of the code in this extension is based on — if not entirely lifted from — Cameron Little's excellent Nova Typescript extension.

Contributing

This extension is itself a Deno project. Come fix bugs and add features with us!


Changelog

v0.3.4

  • Makes sure some fixes are actually included in the built extension.
  • Added a funding link.

v0.3.3

  • Fixes an issue where enabling network access in the Run task passed the wrong flag (thanks jaydenseric!)
  • Stops the Deno LSP from printing all its logs as errors in the extension console.

v0.3.2

  • Quick update to fix a submission error.

v0.3.1

  • Refactored task templates so that they succeed more often and are easier to manage!

v0.3

  • Added per-workspace configs for import maps and tsconfig.json for the LSP to use.

v0.2

  • Added global and per-workspace configs for:
  • Language features
  • Linting
  • Format on save
  • Unstable API support.
  • Added built in Task Templates for deno run and deno bundle, which can be added and configured from Project -> Project Settings.
  • Fixed an issue where linting was not being enabled properly.
  • Removed unnecessary network access entitlement.

v0.1

  • Initial release