diff --git a/packages/web-svelte/src/Screen.svelte b/packages/web-svelte/src/Screen.svelte
index 8f91b1702..0f82eddc4 100644
--- a/packages/web-svelte/src/Screen.svelte
+++ b/packages/web-svelte/src/Screen.svelte
@@ -1,5 +1,7 @@
@@ -7,6 +9,11 @@
+ {#if $selectedWidget}
+
+
+
+ {/if}
diff --git a/packages/web-svelte/src/stores.ts b/packages/web-svelte/src/stores.ts
new file mode 100644
index 000000000..6d7a9f4d5
--- /dev/null
+++ b/packages/web-svelte/src/stores.ts
@@ -0,0 +1,4 @@
+import { writable } from 'svelte/store';
+
+export const selectedWidget = writable('database');
+export const leftPanelWidth = writable(300);
diff --git a/packages/web-svelte/src/widgets/DatabaseWidget.svelte b/packages/web-svelte/src/widgets/DatabaseWidget.svelte
new file mode 100644
index 000000000..281c6866c
--- /dev/null
+++ b/packages/web-svelte/src/widgets/DatabaseWidget.svelte
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/web-svelte/src/widgets/WidgetContainer.svelte b/packages/web-svelte/src/widgets/WidgetContainer.svelte
new file mode 100644
index 000000000..a23ff329b
--- /dev/null
+++ b/packages/web-svelte/src/widgets/WidgetContainer.svelte
@@ -0,0 +1,10 @@
+
+
+{#if $selectedWidget == 'database'}
+
+{/if}
diff --git a/packages/web-svelte/src/widgets/WidgetIconPanel.svelte b/packages/web-svelte/src/widgets/WidgetIconPanel.svelte
index 9ce82ff8c..2dd8f77bd 100644
--- a/packages/web-svelte/src/widgets/WidgetIconPanel.svelte
+++ b/packages/web-svelte/src/widgets/WidgetIconPanel.svelte
@@ -1,7 +1,6 @@
{#each widgets as item}
- (selectedWidget = item.name)}>
+
handleChangeWidget(item.name)}>
{/each}