diff --git a/src/app/+search-page/search-page.component.html b/src/app/+search-page/search-page.component.html
index d5e3a831eb..a27a60baf4 100644
--- a/src/app/+search-page/search-page.component.html
+++ b/src/app/+search-page/search-page.component.html
@@ -1,9 +1,14 @@
diff --git a/src/app/+search-page/search-page.component.scss b/src/app/+search-page/search-page.component.scss
index da97dd7a62..4e53906667 100644
--- a/src/app/+search-page/search-page.component.scss
+++ b/src/app/+search-page/search-page.component.scss
@@ -1 +1,9 @@
@import '../../styles/variables.scss';
+@import '../../styles/mixins.scss';
+
+#search-content {
+ margin-left: $search-sidebar-width;
+ @include media-breakpoint-down(sm) {
+ margin-left: 0;
+ }
+}
\ No newline at end of file
diff --git a/src/app/+search-page/search-page.module.ts b/src/app/+search-page/search-page.module.ts
index bfb7db89be..1bd07da7a8 100644
--- a/src/app/+search-page/search-page.module.ts
+++ b/src/app/+search-page/search-page.module.ts
@@ -12,6 +12,8 @@ import { ItemSearchResultListElementComponent } from '../object-list/search-resu
import { CollectionSearchResultListElementComponent } from '../object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component';
import { CommunitySearchResultListElementComponent } from '../object-list/search-result-list-element/community-search-result/community-search-result-list-element.component';
import { SearchService } from './search-service/search.service';
+import { SearchSidebarComponent } from './search-sidebar/search-sidebar.component';
+import { SearchViewSwitchComponent } from './search-view-switch/search-view-switch.component';
@NgModule({
imports: [
@@ -24,6 +26,8 @@ import { SearchService } from './search-service/search.service';
declarations: [
SearchPageComponent,
SearchResultsComponent,
+ SearchSidebarComponent,
+ SearchViewSwitchComponent,
ItemSearchResultListElementComponent,
CollectionSearchResultListElementComponent,
CommunitySearchResultListElementComponent
diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.html b/src/app/+search-page/search-sidebar/search-sidebar.component.html
new file mode 100644
index 0000000000..03e930ad7e
--- /dev/null
+++ b/src/app/+search-page/search-sidebar/search-sidebar.component.html
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.scss b/src/app/+search-page/search-sidebar/search-sidebar.component.scss
new file mode 100644
index 0000000000..34f9a5d542
--- /dev/null
+++ b/src/app/+search-page/search-sidebar/search-sidebar.component.scss
@@ -0,0 +1,26 @@
+@import '../../../styles/variables.scss';
+@import '../../../styles/mixins.scss';
+
+:host {
+ display: block;
+ position: fixed;
+ background-color: red;
+ width: $search-sidebar-width;
+ padding: $spacer;
+ #filter1, #filter2 {
+ width: 100%;
+ }
+ #filter1 {
+ height: 300px;
+ background-color: yellow;
+ }
+ #filter2 {
+ height: 200px;
+ background-color: green;
+ }
+
+ @include media-breakpoint-down(sm) {
+ width: 100%;
+ display: none;
+ }
+}
diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.ts b/src/app/+search-page/search-sidebar/search-sidebar.component.ts
new file mode 100644
index 0000000000..e8e95cf6fa
--- /dev/null
+++ b/src/app/+search-page/search-sidebar/search-sidebar.component.ts
@@ -0,0 +1,19 @@
+import { Component } from '@angular/core';
+
+/**
+ * This component renders a simple item page.
+ * The route parameter 'id' is used to request the item it represents.
+ * All fields of the item that should be displayed, are defined in its template.
+ */
+
+@Component({
+ selector: 'ds-search-sidebar',
+ styleUrls: ['./search-sidebar.component.scss'],
+ templateUrl: './search-sidebar.component.html',
+})
+
+export class SearchSidebarComponent {
+ constructor() {
+ console.log('test');
+ }
+}
diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.html b/src/app/+search-page/search-view-switch/search-view-switch.component.html
new file mode 100644
index 0000000000..0823d28b8f
--- /dev/null
+++ b/src/app/+search-page/search-view-switch/search-view-switch.component.html
@@ -0,0 +1,10 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.scss b/src/app/+search-page/search-view-switch/search-view-switch.component.scss
new file mode 100644
index 0000000000..bf483af453
--- /dev/null
+++ b/src/app/+search-page/search-view-switch/search-view-switch.component.scss
@@ -0,0 +1,3 @@
+@import '../../../styles/variables.scss';
+@import '../../../styles/mixins.scss';
+
diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.ts b/src/app/+search-page/search-view-switch/search-view-switch.component.ts
new file mode 100644
index 0000000000..0cbd0d70f1
--- /dev/null
+++ b/src/app/+search-page/search-view-switch/search-view-switch.component.ts
@@ -0,0 +1,25 @@
+import { Component, Input } from '@angular/core';
+
+/**
+ * This component renders a simple item page.
+ * The route parameter 'id' is used to request the item it represents.
+ * All fields of the item that should be displayed, are defined in its template.
+ */
+
+@Component({
+ selector: 'ds-search-view-switch',
+ styleUrls: ['./search-view-switch.component.scss'],
+ templateUrl: './search-view-switch.component.html',
+})
+
+export class SearchViewSwitchComponent {
+ @Input() resultCount;
+ @Input() active;
+ constructor() {
+ console.log('test');
+ }
+
+ switchView(b: boolean) {
+ this.active = b;
+ }
+}
diff --git a/src/styles/_custom_variables.scss b/src/styles/_custom_variables.scss
index d73193dc7c..92d5933b9c 100644
--- a/src/styles/_custom_variables.scss
+++ b/src/styles/_custom_variables.scss
@@ -1 +1,2 @@
-$content-spacing: $spacer * 1.5;
\ No newline at end of file
+$content-spacing: $spacer * 1.5;
+$search-sidebar-width: 300px;
\ No newline at end of file