ShareDo in a Box (SIAB)

Was this article helpful?

ShareDo in a Box (SIAB) is a single zip file containing a complete, self-contained instance of Clio Operate. Implementers, configurators and developers use it to run Clio Operate locally on a Windows machine, without setting up a server or a database.

Before SIAB, implementers and developers shared a single environment, typically a VNext or dev environment, for configuration and plugin work. This is risky: a single mistake can break the shared environment or override someone else's changes, especially when developing plugins. SIAB gives each person an isolated, disposable copy of Clio Operate that runs on their own machine.

SIAB is packaged as part of the standard Clio Operate release process, so a given SIAB package runs the same version as your live environments.

Why teams use it

  • Isolation 
    Configuration and plugin work happens on a local machine, with no risk to a shared VNext or dev environment.
  • Offline working 
    SIAB runs without an internet connection once it's installed, useful when working on a train, in a coffee shop, or on a limited home connection.
  • Plugin development tooling 
    SIAB includes a script that scaffolds a new plugin project, and automatically deploys and restarts the environment whenever the plugin is built.
  • Configuration testing 
    Configurators can import a configuration export into SIAB to test changes locally before applying them to a shared environment.
  • Simple upgrades 
    Upgrading means downloading a new package and extracting it over the top of the existing installation. There's no separate upgrade process.
 
 

Prerequisites

What you need before installing

SIAB only runs on Windows hardware. Clio Operate is built on the legacy .NET Framework, so SIAB doesn't run on Apple or Linux hardware, and there is no ARM (Apple Silicon) support.

Install the following before downloading SIAB

Other things to check

  • Hardware. 16GB RAM is recommended. SIAB has run successfully on a six-year-old developer laptop, so older hardware works, but expect it to run more slowly.
  • Administrator access. The initial installation and first run need administrator access, to install the prerequisites, set up firewall rules, and trust a local SSL certificate. No admin access is needed for day-to-day use once SIAB is installed.
  • A short install path. SIAB contains over 13,000 files. Extract it to the root of the hard drive, for example C:\siab7114, rather than a folder in My Documents or on the desktop. Windows has file path length limits, and a long path causes files to become inaccessible.
 
 

Install ShareDo in a Box

Download and extract the package

  1. Request a SIAB download link from your Clio contact. This arrives as a file named siab-link.txt containing a URL.
  2. Open siab-link.txt and select the URL. This starts the download of a zip file, named something like sharedo-in-a-box-v7.11.4-002.zip.

    The download link expires after 2 days. If it has expired, contact your support team, who will request a new link from Clio.

     
  3. Right-click the downloaded zip file and select Properties. If a security block displays, select Unblock, then Apply. No action is needed if the block doesn't display.
  4. Create a folder at the root of the hard drive to extract the package into. Due to folder and filename length sizes in SIAB, it is recommended that this folder is created at the top level of a laptop hard drive and named ‘siab’ with a suffix of the version number, for example C:\siab7114
  5. Extract the zip file into that folder. This can take a few minutes, as the package contains over 13,000 files.

Complete the initial setup

  1. Open PowerShell (version 7 or later) as an administrator.
  2. Navigate to the SIAB folder and run:
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Run SIAB

  1. Open Docker Desktop.
  2. Open Docker Desktop then open PowerShell (v7 or above) in the SIAB directory.
  3. To start SIAB, change directory to where you installed SIAB and run the following PowerShell script:
    .\start.ps1
    The first time this is run it will set up the application so will take a few minutes. On subsequent startups it will be much quicker. When SIAB is fully started, the PowerShell prompt displays.
  4. The login screen shown below will be displayed. Enter username (admin) and password (password) to login. These credentials are only enabled in the SIAB version. For all deployed versions (dev, QA etc) login will be through Entra credentials.

Upgrade ShareDo in a Box

To upgrade, download the new SIAB package and extract it directly over the top of the existing installation folder. Run `start.ps1` again. SIAB detects and runs any database migrations needed for the new version automatically; there's no separate upgrade process.

 
 

Run, stop and reset ShareDo in a Box

The three control scripts

SIAB is controlled with three PowerShell scripts, run from the SIAB folder:

Script What it does
start.ps1 Starts SIAB. The first run sets up the environment; later runs are much faster, typically under a minute.
stop.ps1 Stops all SIAB services. There's no need to do this between sessions, and leaving SIAB running causes no issues.
reset.ps1

Re-initialises SIAB and permanently removes all customisations, including workflows, plugins and aspects.

Be very careful running this script. This will remove any customisations in your SIAB (e.g. workflows, plugins, aspects) and they will be permanently lost. If you do need to do this then ensure you have exported any customisations that you still require. These can then be re-imported into your re-initialised version.

 

 

 
 

Using ShareDo in a Box

SIAB is used for configuration and plugin development.

Importing and exporting configuration

Configurators can use SIAB to test configuration changes locally before applying them elsewhere.

  1. Navigate to Modeller > Import configuration.
  2. Select the configuration package (a zip file) to import.
  3. Confirm the import. SIAB restarts the event engine, applies the configuration, restarts again, and resets the configuration cache.

The same export and import process moves configuration between SIAB and other environments, such as VNext. There's no merging: importing a package overwrites matching configuration in the target environment. Coordinate with anyone else working in the same environment, or across SIAB and VNext, to avoid overwriting each other's changes.

Developing plugins

SIAB is the preferred way to develop Clio Operate plugins. A plugin is a compiled package, built in Visual Studio, containing DLLs and a manifest file that describes the plugin's contents. Plugins can add developer IDE-style assets (widgets, panels, workflow blocks), server-side code that extends the Clio Operate core codebase, and, in limited cases, database migrations.

Plugins are the most powerful, and the most complex, way to extend Clio Operate. Favour configuration, visual workflows, or developer IDE content where they meet the need. Use a plugin when the requirement is beyond what those options support, for example complex third-party integrations or legacy SOAP services.

SIAB includes a create-plugin script that scaffolds a new plugin solution. Building the solution automatically deploys the plugin to SIAB and restarts the environment, giving a fast local feedback loop before the plugin is committed to source control and deployed through the normal pipeline into VNext and beyond.

Deployed plugins are visible in the SIAB database, in the same way as developer IDE content. Plugin packages built for SIAB and other test environments don't need to be digitally signed, unlike packages deployed to production, which makes SIAB well suited to this stage of development.

 
 

Limitations and things to check

Before you rely on SIAB, be aware of the following:

  • Experimental. SIAB is built by developers, primarily for developers, and is described as stable rather than fully mature. Implementers may occasionally need to re-extract the package or restart the environment to clear an issue.
  • Windows and Intel only. Clio Operate is built on the legacy .NET Framework, so SIAB doesn't run on Apple or Linux hardware, and there is no ARM (Apple Silicon) support.
  • No configuration merging. Importing a configuration package overwrites matching items in the target environment, with no merge step. This applies whether importing into SIAB or from SIAB into another environment.
  • External systems aren't included. Systems such as a document management system aren't part of the SIAB package, and need manual configuration if required for testing.
  • Administrator access is needed for setup. If a machine is locked down, arrange temporary admin access, or have an administrator carry out the initial installation.
 
 

 

Was this article helpful?

Related Articles

Related articles in the knowledge base