npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ov-language-server

v0.1.7

Published

language-server implementation for openVALIDATION

Readme

openVALIDATION Language Server

npm version coverage

This is a language-server implementation of the domain-specific-language openVALIDATION.

Implemented features of the protocol

  • [x] Jump to declaration
  • [x] Find references
  • [x] Highlight occurrences
  • [x] Code completion
  • [x] Diagnostics reporting
  • [x] Documentation on hover
  • [x] Rename symbol
  • [x] Folding
  • [x] Formatting

Additional features

In addition to the features of the lsp, we provide the following openVALIDATION-specific features.

  • [x] Syntax-Highlighting
  • [x] Generated Code
  • [x] Language-Specific-Definitions

Syntax-Highlighting is currently implemented by tokenizing the whole file and calculate the range for specific tokens. The list of tokens gets automatically send to the client over the notification-method openVALIDATION/semanticHighlighting.

In addition the new generated code gets send to the client over the notification-method openVALIDATION/generatedCode. This always happens, when code gets written and the parser generated new code.

Last but not least the language-server is able to handle changes of the schema-, culture- and language-parameters. This can be done by the client by sending notifications over the methods openVALIDATION/schemaChanged, openVALIDATION/cultureChanged and openVALIDATION/languageChanged. The possible values of these parameters can be seen under the openVALIDATION-documentation.

Providing a dynamic schema

To provide a Schema for openVALIDATION the language-server defines the new openVALIDATION command Use Schema. With this command, you can provide a JSON-Schema by pasting the file path to the command.

For example, the following command refers to a JSON-Schema with a relative path.

Use Schema ./schema.json

It is also possible to use an absolute path instead of a relative. We look forward to supporting more schema types like YAML, but currently, only JSON files can be used.

Getting started

Installing

npm install ov-language-server

Run the language server

node .\node_modules\ov-language-server\dist\start-server.js

Connect to the language server

You can connect to the language server with the url localhost:3010 for example with the monaco-languageclient. You can also specify an own port with the variable PORT.

Clients

The language server is currently not used in a specific client. But stay tuned, we will provide an extension for several editors soon!