opsdocsConsole

Packages / nuxt-ops

nuxt-ops

The Nuxt module for apps that run on ops. Runtime config, translations pulled at build time and a status banner.

Package
@syncronet/nuxt-ops
Version
0.1.1
Published
13 Oct 2026

@syncronet/nuxt-ops is the Nuxt module a frontend on ops registers to get three things without copying any of them into the app:

  • Runtime config: runtimeConfig.public.ops with your project, environment and the address of ops, overridable when the server starts.
  • Translations at build time: your locale files refreshed from ops before every build, and never a failed build because of it.
  • Status banner: <OpsStatusBanner> and useOpsStatus(), which show a line only while something on the status page is degraded or down.

Install

The package is on the ops npm registry. Add the registry to the app's .npmrc, with a token that may read packages (keep the token out of a checked in file; an environment variable works):

ini
@syncronet:registry=https://ops.syncronet.dev/npm/
//ops.syncronet.dev/npm/:_authToken=${OPS_NPM_TOKEN}
sh
pnpm add -D @syncronet/nuxt-ops

The trailing slash on the _authToken line matters: without it npm sends no token. The package ships TypeScript source that your app's build compiles, and needs Nuxt 4.5 or newer and Vue 3.5.

The smallest setup

ts
// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@syncronet/nuxt-ops'],
  ops: {
    project: 'rungholt',
  },
})
vue
<!-- app.vue -->
<template>
  <OpsStatusBanner />
  <NuxtPage />
</template>

With OPS_URL and OPS_API_TOKEN set in the build's environment, every build now pulls the project's translations into i18n/locales/ first.

Updated 13 Oct 2026View as Markdown