bd82 / langium

Next-gen language engineering / DSL framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Langium

npm Build

Langium is a language engineering tool with built-in support for the Language Server Protocol. Here are some key facts:

  • Simple and direct integration with the VS Code extension API
  • Implemented in TypeScript, runs in NodeJS
  • Generates a parser and abstract syntax tree from a grammar declaration
  • The parser is based on Chevrotain
  • Grammar declaration language similar to Xtext
  • High out-of-the-box functionality, high extensibility

Why?

A domain-specific language (DSL) enables domain experts to contribute automatically processable content without any programming knowledge. This is often referred to as low-code. The contributed content can describe anything like structural data, behavior, or a mixture of both. By plugging in code generators that operate on the DSL, you create a powerful tool chain that creates technical artifacts from high-level specifications, improves communication between engineers as well as non-technical stakeholders and boosts the overall efficiency.

The main goal of Langium is to lower the barrier of creating a DSL / low-code platform. We achieve this by providing a DSL that describes the syntax and structure of your language: the grammar language. Langium's out-of-the-box functionality is based on the information extracted from a grammar declaration. The Xtext framework has proved this approach to be suitable both for rapid prototyping and large-scale applications.

How?

Langium is available as npm package. Please read the package documentation to get started.

About

Next-gen language engineering / DSL framework

License:MIT License


Languages

Language:TypeScript 94.1%Language:JavaScript 5.9%