What are Space modules

Modules are exportable user extensions that can include each other to be loaded and run by Space in a composable way. The execution can then be exported as a shell script, to be run directly or shared, all in a decentralized manner.

Behind the scenes, Space module is a directory on disk (often a Git repository) which contains at least a YAML description file (commonly named Spacefile.yaml) and most often also Spacefile.sh/.bash shell scripts. Modules are often located under ~/.space/space_modules/[reponame].

A user creating a YAML structure can clone and include modules into the YAML file, reusing them.
Space modules exported scripts only depend on a POSIX-compliant shell, so they run with Ash, Dash and Bash.

However Space modules which explicitly defines a Bash file as Spacefile.bash will export Bash compliant scripts.
Space.sh provides by default a module ban list server for checking modules that might be broken or flagged as inappropriate.

Previous: Why Space Modules

Next: Running a Space Module

Edit this page