diff --git a/Linguard/Web/Shared/SetupLayout.razor b/Linguard/Web/Shared/SetupLayout.razor
new file mode 100644
index 0000000..d256f89
--- /dev/null
+++ b/Linguard/Web/Shared/SetupLayout.razor
@@ -0,0 +1,51 @@
+@using Linguard.Core.Managers
+@inherits LayoutComponentBase
+
+
+
+
+
+
+
+
+
+
+
+
+
+ @Body
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+@inject IConfigurationManager _configurationManager
+@inject NavigationManager _navigationManager
+
+@code {
+ private RadzenBody _body;
+ private ErrorBoundary? errorBoundary;
+
+ protected override void OnParametersSet() {
+ errorBoundary?.Recover();
+ }
+
+ protected override void OnInitialized() {
+ base.OnInitialized();
+ if (!_configurationManager.IsSetupNeeded) {
+ _navigationManager.NavigateTo("/");
+ }
+ }
+
+}
diff --git a/Linguard/Web/Shared/WebSettings.razor b/Linguard/Web/Shared/WebSettings.razor
index de4883d..3e33028 100644
--- a/Linguard/Web/Shared/WebSettings.razor
+++ b/Linguard/Web/Shared/WebSettings.razor
@@ -12,7 +12,7 @@
+ @bind-Value="@Configuration.LoginAttempts"/>