User Tasks Proxy
The open-source LittleHorse Server natively supports User Tasks. However, the LH Server does not support the concept of user identity as it would require adding significant amounts of complexity and external dependencies to the open-source project.
The User Tasks Proxy we built solves this problem by allowing you to connect your own Identity Provider (IdP) to LittleHorse.
Architecture
The User Tasks Proxy consists of three main components:
-
User Tasks API (Backend)
- Java Spring Boot application that acts as the proxy between your IdP and LittleHorse
- Configurable to support any OIDC-compliant Identity Provider
-
User Tasks API Client (Node Package)
- Typescript node package
- Allows you to interact with the User Tasks API in a type-safe manner
-
User Tasks UI (Next.js Application)
- Next.js application that provides a complete user interface for managing User Tasks
- Uses the User Tasks API Client to interact with the User Tasks API
Quick Start
This quickstart is intended for demonstration and testing purposes only. It uses a pre-configured Keycloak instance with default credentials and is not suitable for production environments.
The container automatically registers and runs a demo workflow called user-tasks-demo
to demonstrate the capabilities of using an Identity Provider (IdP) to manage UserTasks in LittleHorse. You'll be able to interact with these demo tasks through the User Tasks UI immediately after logging in.
Keep in mind that you can still register and run your own workflows and not limited to the demo workflow.
Running with Docker
Start the standalone container:
docker run --name lh-user-tasks-standalone --rm -d \
-p 2023:2023 \
-p 8080:8080 \
-p 8888:8888 \
-p 8089:8089 \
-p 3000:3000 \
ghcr.io/littlehorse-enterprises/lh-user-tasks-api/lh-user-tasks-standalone:main
The standalone container starts the following components:
- LittleHorse Server (gRPC 2023)
- LittleHorse Dashboard (http://localhost:8080)
- Keycloak Identity Provider (http://localhost:8888)
- User Tasks Proxy (http://localhost:8089)
- User Tasks UI (http://localhost:3000)
Default Users
The standalone image comes with pre-configured users for testing:
User | Password | Role |
---|---|---|
my-admin-user | 1234 | Admin |
my-user | 1234 | User |
Ready to Use Your Own IdP?
If you're interested in integrating the User Tasks Proxy with your organization's Identity Provider, we're here to help! Contact us at sales@littlehorse.io to learn more about our offerings and how we can support your production deployment needs.