diff --git a/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.html b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.html
new file mode 100644
index 0000000000..f8eca9da6a
--- /dev/null
+++ b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+ 0 ? descTemplate : null">
+
diff --git a/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.spec.ts b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.spec.ts
new file mode 100644
index 0000000000..a20120b691
--- /dev/null
+++ b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.spec.ts
@@ -0,0 +1,46 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+import { ChangeDetectionStrategy, NO_ERRORS_SCHEMA } from '@angular/core';
+import { By } from '@angular/platform-browser';
+
+import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
+
+import { ItemMetadataRepresentation } from '../../../../core/shared/metadata-representation/item/item-metadata-representation.model';
+import { Item } from '../../../../core/shared/item.model';
+import { ProjectItemMetadataListElementComponent } from './project-item-metadata-list-element.component';
+import { MetadataValue } from '../../../../core/shared/metadata.models';
+
+const projectTitle = 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.';
+const mockItem = Object.assign(new Item(), { metadata: { 'dc.title': [{ value: projectTitle }] } });
+const virtMD = Object.assign(new MetadataValue(), { value: projectTitle });
+
+const mockItemMetadataRepresentation = Object.assign(new ItemMetadataRepresentation(virtMD), mockItem);
+
+describe('ProjectItemMetadataListElementComponent', () => {
+ let comp: ProjectItemMetadataListElementComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(waitForAsync(() => {
+ TestBed.configureTestingModule({
+ imports:[
+ NgbModule
+ ],
+ declarations: [ProjectItemMetadataListElementComponent],
+ schemas: [NO_ERRORS_SCHEMA]
+ }).overrideComponent(ProjectItemMetadataListElementComponent, {
+ set: { changeDetection: ChangeDetectionStrategy.Default }
+ }).compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(ProjectItemMetadataListElementComponent);
+ comp = fixture.componentInstance;
+ comp.metadataRepresentation = mockItemMetadataRepresentation;
+ fixture.detectChanges();
+ });
+
+ it('should show the project\'s name as a link', () => {
+ const linkText = fixture.debugElement.query(By.css('a')).nativeElement.textContent;
+ expect(linkText).toBe(projectTitle);
+ });
+
+});
diff --git a/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.ts b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.ts
new file mode 100644
index 0000000000..7f291b0996
--- /dev/null
+++ b/src/app/entity-groups/research-entities/metadata-representations/project/project-item-metadata-list-element.component.ts
@@ -0,0 +1,15 @@
+import { Component } from '@angular/core';
+import { metadataRepresentationComponent } from '../../../../shared/metadata-representation/metadata-representation.decorator';
+import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model';
+import { ItemMetadataRepresentationListElementComponent } from '../../../../shared/object-list/metadata-representation-list-element/item/item-metadata-representation-list-element.component';
+
+@metadataRepresentationComponent('Project', MetadataRepresentationType.Item)
+@Component({
+ selector: 'ds-project-item-metadata-list-element',
+ templateUrl: './project-item-metadata-list-element.component.html'
+})
+/**
+ * The component for displaying an item of the type Project as a metadata field
+ */
+export class ProjectItemMetadataListElementComponent extends ItemMetadataRepresentationListElementComponent {
+}