import { useEffect } from "react"; import Sidebar from "./components/layout/Sidebar"; import TopBar from "./components/layout/TopBar"; import StatusBar from "./components/layout/StatusBar"; import TerminalView from "./components/terminal/TerminalView"; import { useDocker } from "./hooks/useDocker"; import { useSettings } from "./hooks/useSettings"; import { useProjects } from "./hooks/useProjects"; import { useAppState } from "./store/appState"; export default function App() { const { checkDocker, checkImage } = useDocker(); const { checkApiKey, loadSettings } = useSettings(); const { refresh } = useProjects(); const { sessions, activeSessionId } = useAppState(); // Initialize on mount useEffect(() => { loadSettings(); checkDocker(); checkImage(); checkApiKey(); refresh(); }, []); // eslint-disable-line react-hooks/exhaustive-deps return (
Claude Code Container
Add a project from the sidebar, start its container, then open a terminal to begin using Claude Code in a sandboxed environment.