{"id":23088670,"url":"https://github.com/openvalidation/openvalidation-languageserver","last_synced_at":"2025-08-16T07:31:49.060Z","repository":{"id":40729357,"uuid":"208006950","full_name":"openvalidation/openvalidation-languageserver","owner":"openvalidation","description":"language-server-protocol implementation for openVALIDATION","archived":false,"fork":false,"pushed_at":"2023-01-05T06:09:47.000Z","size":45258,"stargazers_count":4,"open_issues_count":29,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-12-01T19:37:48.155Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openvalidation.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-09-12T08:56:22.000Z","updated_at":"2024-01-23T16:11:30.000Z","dependencies_parsed_at":"2023-02-03T15:01:00.948Z","dependency_job_id":null,"html_url":"https://github.com/openvalidation/openvalidation-languageserver","commit_stats":null,"previous_names":["openvalidation/ov-language-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openvalidation%2Fopenvalidation-languageserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openvalidation%2Fopenvalidation-languageserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openvalidation%2Fopenvalidation-languageserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openvalidation%2Fopenvalidation-languageserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openvalidation","download_url":"https://codeload.github.com/openvalidation/openvalidation-languageserver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230005219,"owners_count":18158367,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-16T20:17:38.989Z","updated_at":"2024-12-16T20:17:39.649Z","avatar_url":"https://github.com/openvalidation.png","language":"TypeScript","readme":"# openVALIDATION Language Server\n\n[![npm version](https://badge.fury.io/js/ov-language-server.svg)](https://badge.fury.io/js/ov-language-server)\n[![coverage](/coverage/badge.svg)](/coverage/badge.svg)\n\nThis is a [language-server](https://microsoft.github.io/language-server-protocol/) implementation of the domain-specific-language [openVALIDATION](https://github.com/openvalidation/openvalidation).\n\n## Implemented features of the protocol\n\n- [x] Jump to declaration\n- [x] Find references\n- [x] Highlight occurrences\n- [x] Code completion\n- [x] Diagnostics reporting\n- [x] Documentation on hover\n- [x] Rename symbol\n- [x] Folding\n- [x] Formatting\n\n## Additional features\n\nIn addition to the features of the lsp, we provide the following openVALIDATION-specific features.\n\n- [x] Syntax-Highlighting\n- [x] Generated Code\n- [x] Language-Specific-Definitions\n\nSyntax-Highlighting is currently implemented by tokenizing the whole file and calculate the range for specific tokens.\nThe list of tokens gets automatically send to the client over the notification-method `openVALIDATION/semanticHighlighting`.\n\nIn 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.\n\nLast but not least the language-server is able to handle changes of the schema-, culture- and language-parameters.\nThis can be done by the client by sending notifications over the methods `openVALIDATION/schemaChanged`, `openVALIDATION/cultureChanged` and\n`openVALIDATION/languageChanged`. The possible values of these parameters can be seen under the [openVALIDATION-documentation](https://docs.openvalidation.io/api).\n\n### Providing a dynamic schema\n\nTo 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.\n\nFor example, the following command refers to a JSON-Schema with a relative path.\n\n```\nUse Schema ./schema.json\n```\n\nIt 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.\n\n## Getting started\n\n### Installing\n\n```bash\nnpm install ov-language-server\n```\n\n### Run the language server\n\n```bash\nnode .\\node_modules\\ov-language-server\\dist\\start-server.js\n```\n\n### Connect to the language server\n\nYou can connect to the language server with the url `localhost:3010` for example with the [monaco-languageclient](https://github.com/TypeFox/monaco-languageclient).\nYou can also specify an own port with the variable `PORT`.\n\n### Clients\n\nThe language server is currently not used in a specific client.\nBut stay tuned, we will provide an extension for several editors soon!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenvalidation%2Fopenvalidation-languageserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenvalidation%2Fopenvalidation-languageserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenvalidation%2Fopenvalidation-languageserver/lists"}