/* @component-map * App — Main container, tab switching between Convert and History views * ConvertTab — Input area with edition selection, stat block textarea, examples, and convert button * ResultCard — Displays converted Shadowdark stat block with copy and conversion notes * HistoryTab — Lists previously converted monsters from personal collection * @end-component-map */ import { ConvertTab } from './components/ConvertTab.jsx'; import { useState } from 'react'; import { HistoryTab } from './components/HistoryTab.jsx'; function App() { const [activeTab, setActiveTab] = useState('convert'); const [historyCount, setHistoryCount] = useState(0); return (

Shadowdark Converter

B/X & OSE → Shadowdark RPG
{activeTab === 'convert' && } {activeTab === 'history' && }
AC = 19 − descending AC · HP = 4.5 × HD · MV 30'/rd = near · Scores use 5e-style mods
); } ReactDOM.createRoot(document.getElementById("root")).render();