diff --git a/.gitignore b/.gitignore
index c74ef74..e527dfb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -155,3 +155,9 @@ cython_debug/
# Ignore Windows ADS quarantine metadata files
*:Zone.Identifier
*:zone.identifier
+
+# Ruff
+.ruff_cache
+
+# WAS Architect
+.was_arch
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
index 266518a..513587b 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2025 WAS
+Copyright (c) 2025 Jordan "WASasquatch" Thompson
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/README.md b/README.md
index 7ab3182..d1d1a9e 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@


-A versatile ComfyUI custom node that renders HTML, SVG, Markdown, and code content in a secure embedded iframe viewer with full editing, download, and list support.
+A powerful, extensible ComfyUI custom node with a modular **Views Extension System** that renders content in a secure embedded iframe viewer. Views are dynamically loaded and can be added, removed, or modified without touching core code.
Screenshots
@@ -13,72 +13,157 @@ A versatile ComfyUI custom node that renders HTML, SVG, Markdown, and code conte



-
-
-
-
+
+
+
+
+
+
+
+
+
## Features
-### Content Rendering
-- **Auto-detection** of content type: HTML, SVG, Markdown, JSON, YAML, CSV, Python, JavaScript, CSS, Terminal (ANSI), or plain text
-- **SVG support** - Renders SVG graphics centered in the viewport
-- **Markdown parsing** - Full support for headers, lists, links, images, code blocks, tables, emphasis, and Mermaid diagrams
-- **JSON viewer** - Collapsible tree view with syntax highlighting
-- **CSV/Tables** - Automatic table rendering with styled headers
-- **YAML** - Syntax highlighted display
-- **LaTeX/Math** - Renders mathematical formulas using KaTeX (`$$...$$` or `$...$`)
-- **Terminal output** - Parses ANSI escape codes for colored terminal logs
-- **Code formatting** - Code content displayed with monospace font and Prism.js syntax highlighting
-- **ComfyUI theme integration** - Automatically matches ComfyUI's theme colors
+### Views Extension System
+- **Modular architecture** - Each content type is handled by its own view extension
+- **Dynamic loading** - Views are auto-discovered from `web/views/view_manifest.js`
+- **Priority-based detection** - Higher priority views are checked first for content matching
+- **Extensible** - Add custom views without modifying core viewer code
+- **Theme integration** - All views receive ComfyUI theme tokens for consistent styling
-### List Support
-- **Multiple items** - Displays list inputs as individual indexed containers, filter what items to output.
-- **Per-item copy buttons** - Copy individual list items to clipboard
-- **Per-item editing** - Edit each list item in its own textarea
-- **List separator** - Items joined/split using `---LIST_SEPARATOR---`
+### Multi-View Support
+- **Automatic detection** - When multiple views can handle the same content, a view selector appears
+- **View switching** - Toggle between different visualizations of the same data (e.g., tensor as Canvas vs Object inspector)
+- **Priority-based default** - The highest priority matching view is shown by default
+- **Common use case** - IMAGE tensors are detected by both Canvas (for compositing) and Object (for metrics/inspection) views
### Controls
- **Edit** - Modify content directly in the node (supports both single and list content)
- **Clear** - Reset all content
- **Fullscreen** - Expand viewer to full screen (press Escape to exit)
- **Download** - Save content with auto-detected file extension
- - Single content → Downloads as `.html`, `.svg`, `.md`, `.py`, `.js`, `.css`, or `.txt`
- - List content → Downloads as `.zip` containing individually named files (`item_001.txt`, `item_002.txt`, etc.)
+ - Single content → Downloads with appropriate extension (`.html`, `.svg`, `.md`, `.py`, etc.)
+ - List content → Downloads as `.zip` containing individually named files
+
+### String List Support
+- **Multiple items** - Displays list inputs as individual indexed containers
+- **Per-item checkboxes** - Filter which items to include in output
+- **Per-item copy buttons** - Copy individual list items to clipboard
+- **Per-item editing** - Edit each list item in its own textarea
### Data Flow
-- **STRING output** - Passes content downstream for further processing
-- **Flexible input** - Accepts any type via `content` input (STRING, lists, objects)
-- **Content priority** - User edits > Backend execution > Dynamic connected content
+- **Flexible input** - Accepts any type via `content` input (STRING, lists, objects, IMAGE tensors)
+- **Content priority** - User edits > Backend execution > Connected content
- **Workflow persistence** - Manual edits saved with the workflow
### Security
- **Sandboxed iframe** - Content runs in isolated sandbox without access to parent page
- **No same-origin** - Iframe cannot access ComfyUI's JavaScript context or localStorage
+---
+
+## Built-in Views
+
+The Content Viewer includes 12 built-in views, listed by detection priority:
+
+| View | Priority | Detection | Description |
+|------|----------|-----------|-------------|
+| **SVG** | 110 | `