diff --git a/ui/common/Controller/Emails.php b/ui/common/Controller/Emails.php
new file mode 100644
index 0000000..a7c7efa
--- /dev/null
+++ b/ui/common/Controller/Emails.php
@@ -0,0 +1,18 @@
+render($response, 'emails.mailboxes');
+ }
+ public function messages(ServerRequestInterface $request, ResponseInterface $response, View $view, string $mailbox): ResponseInterface
+ {
+ return $view->render($response, 'emails.messages', ['mailbox_id' => $mailbox]);
+ }
+}
\ No newline at end of file
diff --git a/ui/common/Controller/Home.php b/ui/common/Controller/Home.php
new file mode 100644
index 0000000..903d545
--- /dev/null
+++ b/ui/common/Controller/Home.php
@@ -0,0 +1,14 @@
+render($response, 'home');
+ }
+}
\ No newline at end of file
diff --git a/ui/resources/routes/01_emails.php b/ui/resources/routes/01_emails.php
new file mode 100644
index 0000000..a5d9f2d
--- /dev/null
+++ b/ui/resources/routes/01_emails.php
@@ -0,0 +1,10 @@
+group('/emails', function($app) {
+ $app->group('/mailbox/{mailbox}', function ($app) {
+ $app->get('[/]', [Emails::class, 'messages']);
+ });
+ $app->get('/mailboxes', Emails::class);
+ $app->get('[/]', Emails::class);
+});
diff --git a/ui/resources/routes/99_home.php b/ui/resources/routes/99_home.php
new file mode 100644
index 0000000..f989a1e
--- /dev/null
+++ b/ui/resources/routes/99_home.php
@@ -0,0 +1,4 @@
+get('[/]', Home::class);
\ No newline at end of file
diff --git a/ui/resources/views/emails/base.blade.php b/ui/resources/views/emails/base.blade.php
new file mode 100644
index 0000000..f4e4d40
--- /dev/null
+++ b/ui/resources/views/emails/base.blade.php
@@ -0,0 +1,14 @@
+@extends('layout.base')
+
+@section('page_title')
+ Emails
+ @hasSection('emails_title')
+ -
+ @yield('emails_title')
+ @endif
+@endsection
+
+@section('page_content')
+
Emails
+ @yield('emails_content')
+@endsection
\ No newline at end of file
diff --git a/ui/resources/views/emails/mailboxes.blade.php b/ui/resources/views/emails/mailboxes.blade.php
new file mode 100644
index 0000000..fea91fd
--- /dev/null
+++ b/ui/resources/views/emails/mailboxes.blade.php
@@ -0,0 +1,156 @@
+@extends('emails.base')
+
+@section('emails_content')
+
Mailboxes
+
+@endsection
+
+@push('page_scripts')
+
+@endpush
\ No newline at end of file
diff --git a/ui/resources/views/emails/messages.blade.php b/ui/resources/views/emails/messages.blade.php
new file mode 100644
index 0000000..a16c0f3
--- /dev/null
+++ b/ui/resources/views/emails/messages.blade.php
@@ -0,0 +1,428 @@
+@extends('emails.base')
+
+@section('emails_content')
+
Messages -
+
+@endsection
+
+@push('page_scripts')
+
+@endpush
\ No newline at end of file
diff --git a/ui/resources/views/home.blade.php b/ui/resources/views/home.blade.php
new file mode 100644
index 0000000..d5f0851
--- /dev/null
+++ b/ui/resources/views/home.blade.php
@@ -0,0 +1,57 @@
+@extends('layout.base')
+
+@section('page_content')
+
Registered Mailboxes
+
+@endsection
+
+@push('page_scripts')
+
+@endpush
\ No newline at end of file
diff --git a/ui/resources/views/layout/base.blade.php b/ui/resources/views/layout/base.blade.php
new file mode 100644
index 0000000..fb96b37
--- /dev/null
+++ b/ui/resources/views/layout/base.blade.php
@@ -0,0 +1,5 @@
+
+
+@include('layout.head')
+@include('layout.body')
+
\ No newline at end of file
diff --git a/ui/resources/views/layout/body.blade.php b/ui/resources/views/layout/body.blade.php
new file mode 100644
index 0000000..3bf15cc
--- /dev/null
+++ b/ui/resources/views/layout/body.blade.php
@@ -0,0 +1,7 @@
+
+@include('layout.body.header')
+
+ @yield('page_content')
+
+@include('layout.body.footer')
+
\ No newline at end of file
diff --git a/ui/resources/views/layout/body/footer.blade.php b/ui/resources/views/layout/body/footer.blade.php
new file mode 100644
index 0000000..3dc6d22
--- /dev/null
+++ b/ui/resources/views/layout/body/footer.blade.php
@@ -0,0 +1,4 @@
+
+
+@include('layout.body.footer.scripts')
\ No newline at end of file
diff --git a/ui/resources/views/layout/body/footer/scripts.blade.php b/ui/resources/views/layout/body/footer/scripts.blade.php
new file mode 100644
index 0000000..108afea
--- /dev/null
+++ b/ui/resources/views/layout/body/footer/scripts.blade.php
@@ -0,0 +1,6 @@
+
+
+
+@include('layout.body.footer.scripts.main')
+
+@stack('page_scripts')
\ No newline at end of file
diff --git a/ui/resources/views/layout/body/footer/scripts/main.blade.php b/ui/resources/views/layout/body/footer/scripts/main.blade.php
new file mode 100644
index 0000000..e6a57e3
--- /dev/null
+++ b/ui/resources/views/layout/body/footer/scripts/main.blade.php
@@ -0,0 +1,38 @@
+
\ No newline at end of file
diff --git a/ui/resources/views/layout/body/header.blade.php b/ui/resources/views/layout/body/header.blade.php
new file mode 100644
index 0000000..42dc14f
--- /dev/null
+++ b/ui/resources/views/layout/body/header.blade.php
@@ -0,0 +1,5 @@
+
+
+ @include('layout.body.header.navbar')
+
+
\ No newline at end of file
diff --git a/ui/resources/views/layout/body/header/navbar.blade.php b/ui/resources/views/layout/body/header/navbar.blade.php
new file mode 100644
index 0000000..92fa22b
--- /dev/null
+++ b/ui/resources/views/layout/body/header/navbar.blade.php
@@ -0,0 +1,5 @@
+
+
diff --git a/ui/resources/views/layout/head.blade.php b/ui/resources/views/layout/head.blade.php
new file mode 100644
index 0000000..50bfaa0
--- /dev/null
+++ b/ui/resources/views/layout/head.blade.php
@@ -0,0 +1,11 @@
+
+
+
+ Emails
+ @hasSection('page_title')
+ -
+ @yield('page_title')
+ @endif
+
+ @include('layout.head.styles')
+
\ No newline at end of file
diff --git a/ui/resources/views/layout/head/styles.blade.php b/ui/resources/views/layout/head/styles.blade.php
new file mode 100644
index 0000000..8b8ae7f
--- /dev/null
+++ b/ui/resources/views/layout/head/styles.blade.php
@@ -0,0 +1,3 @@
+
+
+@stack('page_styles')
\ No newline at end of file
diff --git a/ui/setup/settings/03_urls.php b/ui/setup/settings/03_urls.php
index b0ca32d..71f5383 100644
--- a/ui/setup/settings/03_urls.php
+++ b/ui/setup/settings/03_urls.php
@@ -1,7 +1,7 @@
function() {
- $arr = ['base' => '/'];
+ $arr = ['base' => $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST']];
$arr['api'] = 'http://localhost:8080';
return (object) $arr;
}