Skip to content

elsa-workflows/elsa-studio

Repository files navigation

Elsa Studio

Elsa Studio workflow designer

Nuget Build status Discord Stack Overflow questions Subreddit subscribers

Elsa Studio is a modular, extensible application framework built with MudBlazor and is used to manage Elsa workflows and related entities.

Prerequisites

  • .NET SDK: Ensure you have both .NET 7 and .NET 8 SDKs installed.
  • Node.js and npm: Install Node.js (which includes npm) for the frontend tooling.

Setup

  1. Clone the repository: git clone https://github.com/elsa-workflows/elsa-studio.git
  2. Navigate to the project directory: cd elsa-studio

Before you build

There are some assets that require NPM to build the assets prior to the project building. These have been configured to use an MSBUILD pre-build step and should not require any extra steps but should you run into any issues or want to build these ahead of time, take the following steps

  1. Navigate to ClientLib folder in Elsa.Studio.DomInterop: cd .\src\framework\Elsa.Studio.DomInterop\ClientLib
  2. Get NPM ready to run: npm install
  3. Build the assets: npm run build
  4. Navigate to ClientLib folder in Elsa.Studio.Workflows.Designer: cd .\src\modules\Elsa.Studio.Workflows.Designer\ClientLib
  5. Get NPM ready to run: npm install
  6. Build the assets: npm run build

Build and Run

  1. Restore .NET dependencies: dotnet restore Elsa.Studio.sln
  2. Build the project: dotnet build Elsa.Studio.sln
  3. For Blazor Server Host: dotnet run --project .\src\hosts\Elsa.Studio.Host.Server\Elsa.Studio.Host.Server.csproj --framework net8.0
  4. For Blazor Server WASM: dotnet run --project .\src\hosts\Elsa.Studio.Host.Wasm\Elsa.Studio.Host.Wasm.csproj --framework net8.0

Explore the Elsa Studio GitHub repository for more detailed information.