Files
markitect-main/capabilities/testdrive-jsui/static/css/themes/github.css
tegwick ab3f0db86f feat: consolidate testdrive-jsui to capabilities and implement plugin self-declaration
## Major Changes
- Moved all testdrive-jsui assets from root to capabilities/testdrive-jsui/
- Consolidated directory structure: js/, static/css/, static/images/, static/templates/
- Implemented plugin self-declaration (get_plugin_source_dir, get_asset_paths)
- Removed hardcoded plugin discovery from rendering.py
- Updated all asset paths to be relative to capability root

## Architecture Improvements
- Single source of truth for all testdrive-jsui assets
- Plugin declares its own location (no hardcoded paths)
- Generic plugin discovery using hasattr check
- Clean separation: all JS in .js files, no code mixing
- Standalone capability ready for independent use

## Files Changed
- markitect/plugins/testdrive_jsui.py: Added self-declaration methods
- markitect/plugins/rendering.py: Removed hardcoded discovery
- capabilities/testdrive-jsui/README.md: Added standalone usage documentation
- Moved 17 asset files to consolidated structure
- Deleted obsolete /testdrive-jsui/ root directory

## Testing
- All 17 assets verified and working
- Tested via CLI: markitect md-render --engine testdrive-jsui
- Full document rendering successful

Prepares testdrive-jsui to become a git submodule with proper dependency management.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-15 23:42:54 +01:00

138 lines
2.9 KiB
CSS

/**
* TestDrive JSUI GitHub Theme
*
* GitHub-inspired theme for the markdown editor
*/
:root {
--github-primary: #0969da;
--github-border: #d0d7de;
--github-bg-subtle: #f6f8fa;
--github-fg-default: #1f2328;
--github-fg-muted: #656d76;
--github-success: #1a7f37;
--github-danger: #d1242f;
--github-warning: #9a6700;
}
/* GitHub-style editor */
.markitect-edit-mode {
color: var(--github-fg-default);
}
.markitect-section {
border: 1px solid transparent;
}
.markitect-section:hover {
background-color: var(--github-bg-subtle);
border-color: var(--github-border);
}
.markitect-section.editing {
border-color: var(--github-primary);
box-shadow: 0 0 0 0.2rem rgba(9, 105, 218, 0.25);
}
/* GitHub-style control panels */
.markitect-control-panel {
background: #ffffff;
border: 1px solid var(--github-border);
color: var(--github-fg-default);
}
/* GitHub-style buttons */
.edit-control .control-button {
background: var(--github-primary);
border: 1px solid transparent;
font-weight: 500;
}
.edit-control .control-button:hover {
background: #0860ca;
}
.edit-control .control-button.danger {
background: var(--github-danger);
}
.edit-control .control-button.danger:hover {
background: #b91c1c;
}
/* GitHub-style status metrics */
.status-metric {
background: var(--github-bg-subtle);
border: 1px solid var(--github-border);
}
.status-metric .metric-value {
color: var(--github-primary);
}
.status-metric .metric-label {
color: var(--github-fg-muted);
}
/* GitHub-style debug panel */
.markitect-debug-panel {
background: #24292f;
color: #f0f6fc;
border: 1px solid #30363d;
}
.markitect-debug-message {
border-bottom: 1px solid #30363d;
}
.markitect-debug-error {
color: #f85149;
background-color: rgba(248, 81, 73, 0.1);
}
.markitect-debug-warning {
color: #f0c674;
background-color: rgba(240, 198, 116, 0.1);
}
.markitect-debug-success {
color: #56d364;
background-color: rgba(86, 211, 100, 0.1);
}
.markitect-debug-info {
color: #79c0ff;
background-color: rgba(121, 192, 255, 0.1);
}
/* GitHub-style table of contents */
.contents-control .toc-item {
color: var(--github-fg-default);
}
.contents-control .toc-item:hover {
background-color: var(--github-bg-subtle);
color: var(--github-primary);
}
/* GitHub-style scrollbars */
.contents-control::-webkit-scrollbar,
.debug-control .debug-logs::-webkit-scrollbar {
width: 8px;
}
.contents-control::-webkit-scrollbar-track,
.debug-control .debug-logs::-webkit-scrollbar-track {
background: var(--github-bg-subtle);
}
.contents-control::-webkit-scrollbar-thumb,
.debug-control .debug-logs::-webkit-scrollbar-thumb {
background: var(--github-border);
border-radius: 4px;
}
.contents-control::-webkit-scrollbar-thumb:hover,
.debug-control .debug-logs::-webkit-scrollbar-thumb:hover {
background: var(--github-fg-muted);
}