@revenexx/studio-integrations
v0.5.1
Published
Integration Studio (core: workflows, node editor, runs, schedules, credentials, secrets, audit) as a standalone, publishable Nuxt module.
Keywords
Readme
@revenexx/studio-integrations
The revenexx Integration Studio (core: Dashboard, Workflows + node editor,
Runs, Schedules, Credentials, Secrets, Audit) as a distributable Nuxt module.
Registers its /integrations/* pages, components and composables. Data/auth flow
through the usePlatformAuth / usePlatformTenant seam (from
@revenexx/studio-shared).
Install
Public on npm — no registry config or token needed:
pnpm add @revenexx/studio-integrations @revenexx/studio-shared @revenexx/studioUse
// nuxt.config.ts
export default defineNuxtConfig({
// studio-shared is a Nuxt MODULE since 0.2.0 (shell primitives by their
// bare names + the platform provider) — do NOT `extends` it anymore.
modules: ['@solar-icons/nuxt', '@revenexx/studio-shared', '@revenexx/studio-integrations'],
})Point it at your Integrations backend via NUXT_PUBLIC_INTEGRATIONS_API and
supply a token/tenant through the platform provider (override
usePlatformAuth / usePlatformTenant, or the standalone defaults read
NUXT_PUBLIC_DEV_TOKEN / NUXT_PUBLIC_DEV_TENANT).
⚠️ Tailwind: you MUST scan this package
The module ships its runtime as source-ish .vue; Tailwind generates the
classes from your build. Scan both this module and studio-shared, or
component styling silently breaks:
@import "tailwindcss";
@import "@revenexx/studio/tokens";
@import "@revenexx/studio/fonts";
@source "../node_modules/@revenexx/studio-shared/dist/runtime";
@source "../node_modules/@revenexx/studio-integrations/dist/runtime";Adjust the relative paths to reach node_modules from your CSS file.
Peers
@revenexx/studio, @revenexx/studio-shared ^0.2 (module form), nuxt ^4, vue ^3.5,
@vue-flow/* + @dagrejs/dagre (workflow editor), lucide-vue-next; register
@solar-icons/nuxt in the host.
Develop
This repo is the source of truth for the module (it used to live in the
cockpit monorepo under packages/studio-integrations).
pnpm install # runs the module `prepare` (nuxt-module-build)
pnpm test # vitest
pnpm build # dist/Hosts to develop against:
- Playground (
playground/, in this repo): thin standalone Nuxt host that loads the module fromsrc/— seeplayground/README.mdfor the full runbook against a local integrations service (docker compose -f playground/docker-compose.dev.yml up). - Cockpit (
../revenexx-cockpit): its dev server loads this module from the sibling checkout'ssrc/module.tsautomatically (dev-from-source, see the cockpit'snuxt.config.ts). Editsrc/**here, the cockpit HMRs. - Integrations service (
../integrations): thestudio-uidev host consumes a packed tarball —studio-ui/scripts/pack-vendor.shbuilds and packs this repo intostudio-ui/vendor/.
Release
Bump version in package.json and push to main — CI
(.github/workflows/publish.yml) publishes any version that isn't on npm
yet, via npm Trusted Publishing (the trusted publisher on npmjs is bound to
this repo + workflow file).
