Playground

Press Escape on any page to open this engine in a dock at the bottom. This page presents the same layout, gathering every widget in one place. No compilation occurs here. Modify a number to see the answer update. The engine consists of a table and a few lines of JavaScript, not EasyBuild itself. It parses an easyconfig, resolves templates, names the easyblock, walks a toolchain, invents a module name, lints obvious mistakes, reprints the recipe, and traverses a canned robot universe. It does not configure, compile, or communicate with your site.

Parse

name = 'code-server'
version = '4.130.0'
homepage = 'https://github.com/coder/code-server'
toolchain = SYSTEM
source_urls = ['https://github.com/coder/code-server/releases/download/v%(version)s/']
sources = ['code-server-%(version)s-linux-%(mapped_arch)s.tar.gz']
checksums = ['3de23052e34fa705b3817efa66201cbc8d8ba6615b4cd03120c39bfc0ae1b7ab']
moduleclass = 'tools'

Templates

name = 'zlib'
version = '1.3.1'
sources = ['zlib-%(version)s.tar.gz']
source_urls = ['https://github.com/%(github_account)s/%(namelower)s/releases/download/v%(version)s']

Easyblock name

Type software names, one per line.

code-server
c++
C#
netCDF-Fortran
Python-bundle-PyPI

Toolchain hierarchy

foss-2025a

Module name

name = 'GROMACS'
version = '2025.2'
toolchain = {'name': 'foss', 'version': '2025a'}
versionsuffix = '-CUDA-12.8.0'

Robot walk

A preconfigured universe, not your own site. Switch Python to 3.11.3 and a dependency vanishes.

name = 'GROMACS'
version = '2025.2'
toolchain = {'name': 'foss', 'version': '2025a'}
dependencies = [
    ('Python', '3.13.1'),
    ('FFTW', '3.3.10'),
]
builddependencies = [
    ('CMake', '3.31.4'),
]

Lint

This one is missing checksums on purpose.

this sample fails no checksums; EasyBuild will refuse the download

name = 'code-server'
version = '4.130.0'
toolchain = SYSTEM
sources = ['code-server-%(version)s-linux-amd64.tar.gz']

Emit

name = 'zlib'
version = '1.3.1'
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
sources = ['zlib-%(version)s.tar.gz']
checksums = ['9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23']
moduleclass = 'lib'