Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ring-example-module

Two things for anyone building a module for the Ring Publishing platform: a reference module that shows how a module talks to the platform, and the agent skills that encode how to build one.

Important: This repository demonstrates possible implementation techniques. A real module may use a different project structure, technology choices, UI flow, and architectural approach.

The example module

A standalone UI application loaded from the Ring menu. It lists stories from Content API, manages their comments, and lets an AI agent of Ring Agents help with a comment while it is written. On the way it shows how a module uses RingSDK, calls Ring APIs through the /_api bridge and builds its screens from Ring UI components.

Ring Publishing is a modular editorial platform: independent Module Applications are loaded inside the TopBar shell, each in the context of a Space (an isolated environment within a client organisation), and reach Ring APIs through the Ring API Gateway. This module is one of them.

To run it you need a Ring Publishing account, a registered module with Content API permissions, and a development variant of its vhost with an Accelerator dev tunnel - see Setting up. Then:

npm install
cp .env.example .env.local   # fill in the vhost, the variant and the token from the Accelerator panel
npm run dev

The skills

Four agent skills under .agents/skills/ that encode technical and design guidelines for building Ring modules. They are useful on their own, in any module project - not only in this one. They follow the standard skill format (SKILL.md with YAML frontmatter) and work with GitHub Copilot CLI, Claude, and other agents that support the .agents/skills/ convention.

Skill Description
/ring-module-development Implementing modules - RingSDK API, UI components, TopBar management, dialogs, cross-module communication.
/ring-public-apis Talking to Ring public APIs from any caller - the API catalog and schemas, the /_api bridge, authenticating a module backend or an integration of your own, and reading a failure.
/ring-module-configuration Configuring modules in Ring Management Console - modules, applications, instances in Spaces, API permissions, and troubleshooting.
/ring-module-local-development Running a module locally through a Ring Accelerator dev tunnel - variant setup, Vite plugin wiring, Bookmarklet mapping, and troubleshooting.

Describe what you want to build - the agent maps your requirements to Ring platform patterns and loads the relevant skill on its own. → Installing the skills

Installing the skills

Install as a plugin - the skills stay in this repository, so an update reaches every project that has the plugin installed. The repository is both the marketplace and the plugin; the skills are read from .agents/skills/.

# Claude Code
claude plugin marketplace add ringpublishing/module-ui-examples
claude plugin install ring-publishing-integrations@ring-publishing-integrations

# Codex
codex plugin marketplace add ringpublishing/module-ui-examples
# then pick "Ring Publishing Integrations" in /plugins

Restart the agent session afterwards. Installed this way the skills are namespaced under the plugin, e.g. /ring-publishing-integrations:ring-module-development.

Or copy them into your project - copy the .agents/skills/ directory into your own repository (under .agents/skills/, .github/skills/, or .claude/skills/). Any agent that supports the convention auto-discovers them, and they keep their plain names (e.g. /ring-module-development). The copy does not follow this repository.

Where to read more

The canonical documentation is the Ring Publishing developer guide; the business side lives in Ring Publishing Help. The pages most relevant to this repository:

Topic Page
A module is one of several ways to extend Ring, and the choice is expensive to change later - read this before building Ways to extend Ring Publishing
How UI Proxy, TopBar and the API Gateway fit together, and what Clients, Spaces, Modules and Module Applications are Ring Modules Framework and Basic structure
From registering a module to deploying it, end to end Getting started
Tutorials for what the example does: TopBar, dialogs, calling APIs, slots and extensions Build a module
Every RingSDK method and the RingSDK.constants values Ring SDK for UI
Which APIs a module can call, their codenames, /_api paths and Space types Public API catalog
Running AI agents of Ring Agents from a module: actions, streaming, stopping a run Use Ring Agents in a module
Per-instance configuration, per-user settings and the module definition Module configuration
Groups, capabilities and what UI Proxy checks Permission model
Modules with a backend of their own Authenticating your module's backend
Management Console procedures Manage modules
The terms used throughout this repository Glossary

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Used by

Contributors

Languages