joetague / snyk-intellij-plugin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Snyk logo


Snyk helps you find, fix and monitor for known vulnerabilities in Node.js npm, Ruby and Java dependencies, both on an ad hoc basis and as part of your CI (Build) system.

The Snyk IntelliJ plugin is able to scan your maven-based projects against the snyk CLI.

For this initial release, it requires you to first log in via the Snyk Command-Line Interface

Installation

This plugin is published in the IntelliJ Repository

Install via IntelliJ's built-in plugin browser.

Supported IntelliJ versions

The plugin requires IntelliJ 2019.1 version or above.

Other Jetbrains IDEs, such as PyCharm or WebStorm are not currently supported.

SBT and other build-systems are planned for a future releases.

Standalone UI development

This plugin internally uses HTML and templating via Handlebars.java to display much of its user-interface via the JavaFX WebView.

This means that it's possible to render the content via a standalone server in your favourite browser.

In this mode, changes to any web artifacts (html, css, handlebars templates, etc.) become visible after a simple page refresh, allowing for a very fast prototype/debug without needing to re-launch a fresh instance of IntelliJ each time. Sample content and a mock of IntelliJ's "darkula" colour scheme is provided for this purpose.

To use, run the command gradle previewHtmlUi

All assets that can be live-updated are in the src/main/resources/WEB-INF folder.

Inline UI development

Owing to rendering differences in the embedded JavaFX WebPane, it's sometimes necessary to refine small tweaks inside the IDE when they show a different appearance from the standalone mode.

To avoid the painful compile/relaunch round-trip time, it's possible to specify a WEB-INF directory via the snyk.plugin.webinf environment variable. In this mode, changes to templates will become available immediately on page reload, within in the IDE.

There's also an endpoint http://localhost:<port>/debugForceNav?path=<path> that will force the Web Pane to navigate to the specified path. This is especially useful for testing interstitial pages such as /scanning that are typically only on screen for a short time.

About

License:Other


Languages

Language:Scala 74.3%Language:JavaScript 16.2%Language:HTML 9.5%