Appearance
Getting started
In order to start developing a Liatir plugin, you have to install the Liatir CLI from @liatir/cli, the Liatir command-line package for scaffolding, developing, and building .lia plugins.
Liatir commands exposed by the CLI:
liatir init: this will generate your project folder and scaffolding.liatir update: you can use this to update @liatir/cli.liatir dev: use this to test your progresses.liatir build: with this command the cli will build your plugin and generate the relative.liafile.
Quick initialization
- First run:
bash
npm install -g @liatir/cli
liatir init my-liatir-plugin --yes # recommended defaults
cd my-liatir-plugin
npm install- Once done, start developing your Liatir plugin.
Guided initialization (recommended)
bash
npm install -g @liatir/cli
liatir initThe CLI will then walk you through the project setup:
Project folder — the directory to create (e.g.
my-liatir-plugin).Runtime — how the plugin runs:
- Node — JavaScript/TypeScript with the full Liatir desktop bridge.
- WASM — Rust compiled to WASM, for sandboxed local computation.
Node language (Node runtime only):
- TypeScript (recommended) — best type safety and contract validation while developing.
- JavaScript — plain ESM plugin, no TypeScript project.
Starter template:
- Minimal text plugin (recommended) — the smallest example for learning the plugin contract.
- File processor — reads metadata from a user-selected local file.
- Bio CLI wrapper — wraps a local bioinformatics command.
Metadata — display name, description, and category. All optional; you can change them later in the manifest.
Install dependencies — answer Yes to run
npm installright away.Open the project folder with
cd my-liatir-plugin.Start developing your Liatir plugin.
Initialization flags
bash
liatir init # full guided initialization
liatir init plugin-name --yes # uses recommended defaults
liatir init plugin-name --node --ts # Node TypeScript plugin
liatir init plugin-name --node --js # Node JavaScript plugin
liatir init plugin-name --wasm # Rust/WASM plugin
liatir init plugin-name --template <TEMPLATE_NAME>
liatir init plugin-name --category "Quality Control" --tags "FASTQ,QC"
liatir init plugin-name --no-install
liatir init plugin-name --no-wasm-targetTest, build and import
While developing, use
liatir devto test your plugin as you work — it runs in watch mode against the live Liatir app.When you're happy with it, run
liatir buildto package your plugin into a.liabundle.Open the Plugins page in Liatir and import the generated
.liafile.Now you are ready to run it by itself or integrate it into a pipeline.
Pipeline integration
The fields declared in inputs and outputs become the plugin's pipeline contract. Liatir uses them to render forms, validate required inputs, expose outputs to later steps, and store file outputs in Results.
For the exact bundle format, see .lia Bundle Format. For the API packages, see Liatir API packages and Plugin authoring API.