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.