- apps/desktop: electron-vite + React + Tailwind mapped onto design tokens (preflight off; tokens/base.css owns the reset); boots to a Reginald placeholder proving fonts/tokens/core wiring - packages/core: pure TS; gitea label schema (est/*, p/*, deadline/hard) with pessimistic conflict resolution + 15 unit tests - docs/design: full design handoff (tokens, 16 component contracts, interactive 14-screen prototype, Reginald voice rules) - docs/PLAN.md: product plan (purity rule, pm-state repo, deterministic scheduler + Monte Carlo, directive log) - Deliberate deviation from novelpad stack: no ElectricSQL/PGlite — local store is a rebuildable cache over gitea REST/webhooks (better-sqlite3 in main process, arriving in P1) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
44 lines
2.2 KiB
HTML
44 lines
2.2 KiB
HTML
<!-- handoff copy (card tag removed) -->
|
|
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>CommiTea</title>
|
|
<link rel="stylesheet" href="../../styles.css">
|
|
<script src="https://unpkg.com/react@18.3.1/umd/react.development.js" integrity="sha384-hD6/rw4ppMLGNu3tX5cjIb+uRZ7UkRJ6BPkLpg4hAu/6onKUg4lLsHAs9EBPT82L" crossorigin="anonymous"></script>
|
|
<script src="https://unpkg.com/react-dom@18.3.1/umd/react-dom.development.js" integrity="sha384-u6aeetuaXnQ38mYT8rp6sbXaQe3NL9t+IBXmnYxwkUI2Hw4bsp2Wvmx4yRQF1uAm" crossorigin="anonymous"></script>
|
|
<script src="https://unpkg.com/@babel/standalone@7.29.0/babel.min.js" integrity="sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y" crossorigin="anonymous"></script>
|
|
<script src="../../_ds_bundle.js"></script>
|
|
<script src="data.js"></script>
|
|
<style>
|
|
html, body { height: 100%; }
|
|
body { overflow: auto; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="root" style="height: 100%;"></div>
|
|
<script type="text/babel" src="Chart.js.txt"></script>
|
|
<script type="text/babel" src="DepsGraph.js.txt"></script>
|
|
<script type="text/babel" src="GanttView.js.txt"></script>
|
|
<script type="text/babel" src="ChatPanel.js.txt"></script>
|
|
<script type="text/babel" src="FocusScreen.js.txt"></script>
|
|
<script type="text/babel" src="BoardScreen.js.txt"></script>
|
|
<script type="text/babel" src="RunwayScreen.js.txt"></script>
|
|
<script type="text/babel" src="CaptureScreen.js.txt"></script>
|
|
<script type="text/babel" src="StandupScreen.js.txt"></script>
|
|
<script type="text/babel" src="SettingsScreen.js.txt"></script>
|
|
<script type="text/babel" src="OnboardingScreen.js.txt"></script>
|
|
<script type="text/babel" src="DirectivesScreen.js.txt"></script>
|
|
<script type="text/babel" src="IssueScreen.js.txt"></script>
|
|
<script type="text/babel" src="CalibrationScreen.js.txt"></script>
|
|
<script type="text/babel" src="MilestoneScreen.js.txt"></script>
|
|
<script type="text/babel" src="StatesGallery.js.txt"></script>
|
|
<script type="text/babel" src="InboxScreen.js.txt"></script>
|
|
<script type="text/babel" src="Shell.js.txt"></script>
|
|
<script type="text/babel">
|
|
ReactDOM.createRoot(document.getElementById('root')).render(<window.Shell />);
|
|
</script>
|
|
</body>
|
|
</html>
|