import './styles/index.css';
import React from 'react';
import ReactDOM from 'react-dom/client';
import { validateWorkspaceConfig } from './lib/config/runtimeConfig';
const rootElement = document.getElementById('root');
if (!rootElement) {
throw new Error("Could not find root element to mount to");
}
const root = ReactDOM.createRoot(rootElement);
root.render(
Opening Banana Studio…
);
const start = async () => {
try {
const response = await fetch('/api/workspace-config', { cache: 'no-store', credentials: 'same-origin' });
if (!response.ok) throw new Error('Workspace setup is required.');
window.__BANANA_STUDIO_CONFIG__ = Object.freeze(validateWorkspaceConfig(await response.json()));
const { default: App } = await import('./App');
root.render();
} catch {
root.render(
Welcome to Banana Studio
This deployment needs its own workspace configuration. Follow the self-hosting guide to connect your Supabase project and server API keys.
Provider keys belong on your server. Never paste them into a browser console or a public configuration field.
Open the setup guide
);
}
};
void start();