Skip to content

Spoofax 3

Spoofax 3 is a modular and incremental textual language workbench running on the JVM: a collection of tools and Java libraries that enable the development of textual languages, embeddable into batch compilers, code editors and IDEs, or custom applications. It is a reimplementation of Spoofax 2, with the goal of being more modular, flexible, and correctly incremental.

This documentation website aims to cover language development with Spoofax 3, development of the language workbench itself (e.g., meta-language development), and development of this documentation.

Currently, Spoofax 3 is experimental and still a work-in-progress. Therefore, it does not have a stable API, lacks documentation and test coverage, and has not yet been applied to real-world use cases. If you are looking for a more mature alternative, see Spoofax 2, which Spoofax 3 is based on.


The documentation for Spoofax 3 is split into five parts:

  • Tutorials: hands-on tutorials to getting you started with Spoofax 3.
  • How-to guides: step-by-step guides showing how to implement certain features or how to solve common problems.
  • Reference: technical reference describing the various facets of Spoofax 3.
  • Background: background information and discussion on various key topics.
  • Releases: download links, changelogs, and migration guides.