top of page

LinkML-Scala

LinkML-Scala a fast, portable (JS/JVM/native), and robust implementation of LinkML for cross-language data modeling. It works in the browser, Node.js, the Java Virtual Machine, and compiles to native libraries. LinkML-Scala is packaged as an online playground, a CLI application, a GitHub CI Action, and a Maven / npm library.

LinkML-Scala.png

Why LinkML-Scala?

Integrating data across systems and organizations remains a challenge, requiring the use of many data modeling languages: JSON Schema, SQL DDL, RDFS, and more. These languages are tied to their specific ecosystems and often offer poor support for describing what the data means, which makes the data hard to reuse by humans and AIs.

LinkML is an open data modeling framework that addresses this issue. You write your data model once in a simple YAML format. LinkML then generates code, schemas, and validation rules for multiple programming languages and data formats.

However, the original Python implementation of LinkML offers insufficient performance for some use cases (e.g., live model editing, enterprise systems), lacks portability, and has inconsistent behaviors across its code generators.

LinkML-Scala bridges this gap. Developed and maintained by NeverBlink, it provides a fast, cross-platform LinkML implementation to parse, validate, and generate code directly from LinkML schemas.

Key features:

✔ Cross-platform

Runs natively on the JVM, JavaScript (browsers and Node.js), and compiles to native binaries. Engineered for low memory allocation rates and high-throughput parsing, perfect for responsive user interfaces and processing large enterprise schemas.

✔ 22.9–38.5x faster than LinkML Python

See our benchmarks for details.

✔ Multi-format code generation

Compile your LinkML schemas into:

  • JSON Schema
  • Frictionless Table Schema

  • SHACL (Shapes Constraint Language)

  • RDFS (RDF Schema)

  • Scala 3 case classes

✔ In-browser playground

Check out our online playground – it runs 100% in your browser!

✔ Standalone CLI and tooling

Includes a fast terminal CLI (linkml-scala) for instant schema validation and code generation directly within your CI/CD pipelines or local workflow.

✔ JS/TS and JVM libraries

We publish the library to npm (pure JavaScript with TypeScript bindings) and Maven Central, allowing you to quickly build applications with it.

✔ Engineered for consistency

Scala provides strong typing guarantees on compile time, and our approach to code generation and testing ensures all generators behave in the same way.

Quick start

Explore LinkML-Scala instantly in your browser. No installation required!

To install the CLI tool or integrate LinkML-Scala directly into your project as a dependency, check out the installation guides and code examples in our GitHub repository.

Our commitment to open source

LinkML-Scala is 100% open-source, licensed under Apache 2.0.

At NeverBlink, we build reliable and fast solutions that turn fragmented enterprise data into trusted, actionable knowledge graphs. We believe the backbone of trustworthy AI is robust data and high-performance open-source tooling.

LinkML-Scala was born out of our internal engineering need for high-performance, cross-platform schema operations. We actively maintain and optimize it to support the broader data modeling and knowledge graph communities. We contribute to upstream projects (e.g., LinkML, Scala libraries) to improve them for everyone and keep them sustainable.

Read more

Read our research paper detailing the architecture, benchmarks, and the motivation behind this project:

bottom of page