tsain

Drive REPL-based Clojure UI component development with alias-based workflows.

Updated Jan 19, 2026
One-click install
npx skills add https://github.com/brianium/tsain --skill tsain
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: tsain
Source: https://github.com/brianium/tsain/tree/main/.claude/skills/tsain
Command: npx skills add https://github.com/brianium/tsain --skill tsain

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill enables rapid, REPL-driven development of Clojure UI components by introducing an alias-first workflow that maps component structure to lean, testable chassis aliases and a live preview loop.

Core Features & Use Cases

  • Alias-first workflow: define component structure in a UI namespace and drive components via lean tsain aliases.
  • Live preview and testing: iterate with real-time previews, browser updates, and hot CSS reload.
  • Spec-driven implementation: use a specs-driven pipeline to identify next work, implement, and commit to the component library.
  • Discovery & migration tooling: leverage discovery APIs and migration guidance for legacy components.

Quick Start

Launch the REPL-driven workflow in your project, configure tsain.edn, define a chassis alias in your UI namespace, preview with tsain commands, and commit the lean alias to your component library.

Frequently Asked Questions about tsain

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up REPL-driven UI component development in Clojure?▼

REPL-driven UI component development in Clojure requires configuring a tsain.edn file and defining a chassis alias in your UI namespace to drive components. You then use a dispatch-based effect system to manage previews, writes, and migrations within the sandbox.

What is an alias-first workflow for Clojure UI components?▼

An alias-first workflow maps UI component structure to lean, testable chassis aliases defined in a UI namespace. This allows you to drive component behavior and iterate on design directly through these lean aliases during development.

How can I get live previews and hot CSS reload for Clojure UI components?▼

Live previews and hot CSS reload for Clojure UI components are enabled by iterating with real-time browser updates within the tsain sandbox. You use tsain commands to preview aliases and see changes instantly without restarting your workflow.

Can I use a spec-driven pipeline to implement and commit UI components?▼

Yes, you can use a specs-driven pipeline to identify the next implementation work for UI components. After implementing the lean alias, the pipeline supports committing the component directly to your component library.

Does this REPL-driven component workflow support migrating legacy UI code?▼

The workflow includes discovery APIs and migration guidance specifically for handling legacy UI components. You can leverage these tools to discover existing structures and migrate them to the alias-first chassis model.

What do I need to configure before previewing components with tsain commands?▼

Before previewing components, you need to configure the tsain.edn file and define a chassis alias within your project's UI namespace. This setup establishes the dispatch-based effect system required for discovery, previews, and writes.