Miro Spönemann

Langium: Design Your Own Language in Node.js and VS Code

What if you could build a custom language with full IDE support using just TypeScript? Learn to create powerful domain-specific languages with the Langium framework.

Langium: Design Your Own Language in Node.js and VS Code
#1about 4 minutes

Why you should create a domain-specific language

DSLs empower domain experts to implement business logic directly, overcoming the limitations of general-purpose tools and low-code platforms.

#2about 5 minutes

Fundamental principles of language design

Choose the right paradigm and abstraction level for your DSL, focusing on specificity rather than replicating general-purpose languages like JSON.

#3about 3 minutes

An overview of the Langium framework

Langium is a TypeScript-based toolkit for creating languages with built-in support for the Language Server Protocol (LSP) and VS Code extensions.

#4about 2 minutes

Defining language syntax and structure with a grammar

Use Langium's grammar language to define your language's syntax, including keywords, properties, and cross-references between different elements.

#5about 6 minutes

Demonstrating a Langium-powered VS Code extension

A live demonstration shows how a Langium-based extension provides rich editor features and a command-line interface for code generation.

#6about 4 minutes

How Langium processes code into an abstract syntax tree

Langium tokenizes and parses input text to create an Abstract Syntax Tree (AST), which serves as the central model for all language features.

#7about 5 minutes

Generating TypeScript types from your grammar

Langium automatically infers TypeScript interfaces from your grammar, but also supports explicit type declarations for better long-term project maintenance.

#8about 9 minutes

Scaffolding a new project with the Yeoman generator

Get started quickly by using the `yo langium` command to scaffold a complete, ready-to-use project for your new language.

#9about 7 minutes

Q&A on IDE support and technology stack choices

The discussion covers IDE compatibility, documentation support, and the benefits of a consistent TypeScript stack compared to Java-based alternatives like Xtext.

Related jobs
Jobs that call for the skills explored in this talk.

job ad

Saby Company
Delebio, Italy

Intermediate

test

Milly
Vienna, Austria

Intermediate

Featured Partners

Related Articles

View all articles
LM
Luis Minvielle
What Are Large Language Models?
Developers and writers can finally agree on one thing: Large Language Models, the subset of AIs that drive ChatGPT and its competitors, are stunning tech creations. Developers enjoying the likes of GitHub Copilot know the feeling: this new kind of te...
What Are Large Language Models?
LM
Luis Minvielle
The Best JavaScript Framework to Learn
When the Greek mastermind Heraclitus, millennia ago, claimed that “the only constant is change,” he certainly pepped up Star Wars creator George Lucas to perpetually re-do shots crucial to the canon storyline or even paved the way for grocery stores ...
The Best JavaScript Framework to Learn
LM
Luis Minvielle
How to Become a Conference Speaker
With just a few clicks on Google, we can see that it’s full of sites that recommend and explain “the best tips to be the greatest speaker.”But how do you get to be a speaker in the first place? Being a keynote speaker who startles audiences and gets ...
How to Become a Conference Speaker

From learning to earning

Jobs that call for the skills explored in this talk.