[neon-notifications] Changes in repo-metadata

Neon CI noreply at kde.org
Sat May 16 19:46:39 BST 2020


commit f26002e96c0fc77ae3fe2b017d94a14f0b765efd
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 19:03:46 2020 +0530

    Add symlink to projects

diff --git a/projects b/projects
new file mode 120000
index 00000000..d1d9aa93
--- /dev/null
+++ b/projects
@@ -0,0 +1 @@
+projects-invent
\ No newline at end of file

commit f8a728d6bd7aed6259f25fa5f8439995af71c2c6
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 22:36:41 2020 +1200

    These repositories never existed

diff --git a/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml b/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml
deleted file mode 100644
index 2bfa47d3..00000000
--- a/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: Maliit Gtk Input Context (for Plasma)
-hasrepo: false
-identifier: null
-name: Maliit Gtk+ Input Context
-projectpath: playground/mobile/plasma-maliit-inputcontext-gtk
-repoactive: false
-repopath: /plasma-mobile/plasma-maliit-inputcontext-gtk
diff --git a/projects-invent/unmaintained/kde-accounts/metadata.yaml b/projects-invent/unmaintained/kde-accounts/metadata.yaml
deleted file mode 100644
index bf861b71..00000000
--- a/projects-invent/unmaintained/kde-accounts/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: Unified Accounts Project
-hasrepo: false
-identifier: null
-name: Unified Accounts
-projectpath: playground/base/kde-accounts
-repoactive: false
-repopath: /unmaintained/kde-accounts

commit b390fb2327977fecee88104f3ea8918f0dd0ce5c
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 13:29:00 2020 +0530

    Drop metadata.yaml from the groups

diff --git a/projects-invent/accessibility/metadata.yaml b/projects-invent/accessibility/metadata.yaml
deleted file mode 100644
index 40527b88..00000000
--- a/projects-invent/accessibility/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Accessibility
-projectpath: kde/kdeaccessibility
-repoactive: false
-repopath: /accessibility
diff --git a/projects-invent/education/metadata.yaml b/projects-invent/education/metadata.yaml
deleted file mode 100644
index 5c1cbbf5..00000000
--- a/projects-invent/education/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Edu
-projectpath: kde/kdeedu
-repoactive: false
-repopath: /education
diff --git a/projects-invent/frameworks/metadata.yaml b/projects-invent/frameworks/metadata.yaml
deleted file mode 100644
index 5f16047c..00000000
--- a/projects-invent/frameworks/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: Frameworks
-projectpath: frameworks
-repoactive: false
-repopath: /frameworks
diff --git a/projects-invent/games/metadata.yaml b/projects-invent/games/metadata.yaml
deleted file mode 100644
index ed598ec5..00000000
--- a/projects-invent/games/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Games
-projectpath: kde/kdegames
-repoactive: false
-repopath: /games
diff --git a/projects-invent/graphics/metadata.yaml b/projects-invent/graphics/metadata.yaml
deleted file mode 100644
index a09c61b7..00000000
--- a/projects-invent/graphics/metadata.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-description: 'An (optional) super-repository which holds the history of the kdegraphics
-  toplevel files, and can facilitate building/maintaining/developing KDE graphics
-  as a whole. Note: this super-repository does not facilitate checking out (cloning)
-  of the component kdegraphics repositories.'
-hasrepo: true
-identifier: kdegraphics
-name: KDE Graphics
-projectpath: kde/kdegraphics
-repoactive: false
-repopath: /graphics
diff --git a/projects-invent/historical/metadata.yaml b/projects-invent/historical/metadata.yaml
deleted file mode 100644
index 018eeaa2..00000000
--- a/projects-invent/historical/metadata.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-description: All projects here are historical, having evolved into different forms
-  since. They're principally kept for archival purposes.
-hasrepo: false
-identifier: null
-name: Historical Projects
-projectpath: historical
-repoactive: false
-repopath: /historical
diff --git a/projects-invent/libraries/metadata.yaml b/projects-invent/libraries/metadata.yaml
deleted file mode 100644
index 4e21b485..00000000
--- a/projects-invent/libraries/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: Extragear libraries.
-hasrepo: false
-identifier: null
-name: Libs
-projectpath: extragear/libs
-repoactive: false
-repopath: /libraries
diff --git a/projects-invent/multimedia/metadata.yaml b/projects-invent/multimedia/metadata.yaml
deleted file mode 100644
index b69f5262..00000000
--- a/projects-invent/multimedia/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: KDE Multimedia
-hasrepo: false
-identifier: null
-name: KDE Multimedia
-projectpath: kde/kdemultimedia
-repoactive: false
-repopath: /multimedia
diff --git a/projects-invent/network/metadata.yaml b/projects-invent/network/metadata.yaml
deleted file mode 100644
index 7d61de66..00000000
--- a/projects-invent/network/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Network
-projectpath: kde/kdenetwork
-repoactive: false
-repopath: /network
diff --git a/projects-invent/others/metadata.yaml b/projects-invent/others/metadata.yaml
deleted file mode 100644
index 75d74b55..00000000
--- a/projects-invent/others/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: Others
-projectpath: others
-repoactive: false
-repopath: /others
diff --git a/projects-invent/packaging/metadata.yaml b/projects-invent/packaging/metadata.yaml
deleted file mode 100644
index 7d956a2d..00000000
--- a/projects-invent/packaging/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: Packaging
-projectpath: playground/packaging
-repoactive: false
-repopath: /packaging
diff --git a/projects-invent/pim/metadata.yaml b/projects-invent/pim/metadata.yaml
deleted file mode 100644
index 4fc139fa..00000000
--- a/projects-invent/pim/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: PIM
-projectpath: kde/pim
-repoactive: false
-repopath: /pim
diff --git a/projects-invent/plasma/metadata.yaml b/projects-invent/plasma/metadata.yaml
deleted file mode 100644
index b9665664..00000000
--- a/projects-invent/plasma/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: Workspace
-projectpath: kde/workspace
-repoactive: false
-repopath: /plasma
diff --git a/projects-invent/sdk/metadata.yaml b/projects-invent/sdk/metadata.yaml
deleted file mode 100644
index ffba1d76..00000000
--- a/projects-invent/sdk/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: KDESDK
-hasrepo: false
-identifier: null
-name: KDESDK
-projectpath: kde/kdesdk
-repoactive: false
-repopath: /sdk
diff --git a/projects-invent/sysadmin/metadata.yaml b/projects-invent/sysadmin/metadata.yaml
deleted file mode 100644
index 397c88e6..00000000
--- a/projects-invent/sysadmin/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: Repositories used by KDE System Administrators to manage KDE Infrastructure
-hasrepo: false
-identifier: null
-name: Sysadmin
-projectpath: sysadmin
-repoactive: false
-repopath: /sysadmin
diff --git a/projects-invent/system/metadata.yaml b/projects-invent/system/metadata.yaml
deleted file mode 100644
index c1fdc4c9..00000000
--- a/projects-invent/system/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Admin
-projectpath: kde/kdeadmin
-repoactive: false
-repopath: /system
diff --git a/projects-invent/unmaintained/metadata.yaml b/projects-invent/unmaintained/metadata.yaml
deleted file mode 100644
index a909b7a0..00000000
--- a/projects-invent/unmaintained/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: All projects here are unmaintained, and looking for a good home.
-hasrepo: false
-identifier: null
-name: Unmaintained Projects
-projectpath: unmaintained
-repoactive: false
-repopath: /unmaintained
diff --git a/projects-invent/utilities/metadata.yaml b/projects-invent/utilities/metadata.yaml
deleted file mode 100644
index bca78015..00000000
--- a/projects-invent/utilities/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: ''
-hasrepo: false
-identifier: null
-name: KDE Utils
-projectpath: kde/kdeutils
-repoactive: false
-repopath: /utilities
diff --git a/projects-invent/websites/metadata.yaml b/projects-invent/websites/metadata.yaml
deleted file mode 100644
index 346cdf23..00000000
--- a/projects-invent/websites/metadata.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-description: Repositories which hold websites.
-hasrepo: false
-identifier: null
-name: Websites
-projectpath: websites
-repoactive: false
-repopath: /websites

commit c6fdc2a6b72d36ed0742882604cc7eeb4c766cab
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 13:28:24 2020 +0530

    cleanup the metadata.yaml for projects

diff --git a/projects-invent/accessibility/kmag/metadata.yaml b/projects-invent/accessibility/kmag/metadata.yaml
index 7479bb53..6133eff5 100644
--- a/projects-invent/accessibility/kmag/metadata.yaml
+++ b/projects-invent/accessibility/kmag/metadata.yaml
@@ -1,11 +1,7 @@
 description: KMag is a screen magnifier.
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kmag
 name: KMag
 projectpath: kde/kdeaccessibility/kmag
 repoactive: true
-repopath: kmag
-type: project
+repopath: /accessibility/kmag
diff --git a/projects-invent/accessibility/kmousetool/metadata.yaml b/projects-invent/accessibility/kmousetool/metadata.yaml
index 2bf66b32..ad718daf 100644
--- a/projects-invent/accessibility/kmousetool/metadata.yaml
+++ b/projects-invent/accessibility/kmousetool/metadata.yaml
@@ -1,11 +1,7 @@
 description: KMouseTool is a program that clicks the mouse for you.
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kmousetool
 name: KMouseTool
 projectpath: kde/kdeaccessibility/kmousetool
 repoactive: true
-repopath: kmousetool
-type: project
+repopath: /accessibility/kmousetool
diff --git a/projects-invent/accessibility/kmouth/metadata.yaml b/projects-invent/accessibility/kmouth/metadata.yaml
index 479520d9..6361b5a3 100644
--- a/projects-invent/accessibility/kmouth/metadata.yaml
+++ b/projects-invent/accessibility/kmouth/metadata.yaml
@@ -1,13 +1,7 @@
 description: A type-and-say front end for speech synthesizers.
 hasrepo: true
-icon: null
-members:
-- displayname: Gunnar Schmidt
-  username: gunnar
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kmouth
 name: KMouth
 projectpath: kde/kdeaccessibility/kmouth
 repoactive: true
-repopath: kmouth
-type: project
+repopath: /accessibility/kmouth
diff --git a/projects-invent/accessibility/metadata.yaml b/projects-invent/accessibility/metadata.yaml
index 540e7aab..40527b88 100644
--- a/projects-invent/accessibility/metadata.yaml
+++ b/projects-invent/accessibility/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Accessibility
 projectpath: kde/kdeaccessibility
 repoactive: false
-repopath: null
-type: module
+repopath: /accessibility
diff --git a/projects-invent/documentation/digikam-doc/metadata.yaml b/projects-invent/documentation/digikam-doc/metadata.yaml
index d29f1657..53b936c7 100644
--- a/projects-invent/documentation/digikam-doc/metadata.yaml
+++ b/projects-invent/documentation/digikam-doc/metadata.yaml
@@ -7,24 +7,8 @@ description: 'This is the documentation for digiKam application.
 
   !https://farm6.static.flickr.com/5299/5506029152_2bce971802.jpg!'
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Achim Bohnet
-  username: ach
-- displayname: Andi Clemens
-  username: aclemens
-- displayname: Arnd Baecker
-  username: abaecker
-- displayname: "Oliver D\xF6rr"
-  username: doerr
-- displayname: Gerhard Kulzer
-  username: gkulzer
+identifier: digikam-doc
 name: digiKam documentation
 projectpath: extragear/graphics/digikam/digikam-doc
 repoactive: true
-repopath: digikam-doc
-type: project
+repopath: /documentation/digikam-doc
diff --git a/projects-invent/documentation/docs-krita-org/metadata.yaml b/projects-invent/documentation/docs-krita-org/metadata.yaml
index 30fcadb4..ee4d46e3 100644
--- a/projects-invent/documentation/docs-krita-org/metadata.yaml
+++ b/projects-invent/documentation/docs-krita-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Complete documentation for Krita, using the Sphinx documentation system
 hasrepo: true
-icon: null
-members:
-- displayname: Scott Petrovic
-  username: scottpetrovic
-- displayname: Wolthera van Hövell
-  username: woltherav
+identifier: websites-docs-krita-org
 name: Krita.org Documentation Website
 projectpath: websites/docs-krita-org
 repoactive: true
-repopath: websites/docs-krita-org
-type: module
+repopath: /documentation/docs-krita-org
diff --git a/projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml b/projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml
index 13fb0eb0..4aa1b75d 100644
--- a/projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml
+++ b/projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Documentation Website for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Bhushan Shah
-  username: bshah
-- displayname: Jonah Brüchert
-  username: jbbgameich
+identifier: websites-docs-plasma-mobile-org
 name: Plasma Mobile Documentation Website
 projectpath: websites/docs-plasma-mobile-org
 repoactive: false
-repopath: websites/docs-plasma-mobile-org
-type: module
+repopath: /documentation/docs-plasma-mobile-org
diff --git a/projects-invent/documentation/hig-kde-org/metadata.yaml b/projects-invent/documentation/hig-kde-org/metadata.yaml
index a27716a7..95364dee 100644
--- a/projects-invent/documentation/hig-kde-org/metadata.yaml
+++ b/projects-invent/documentation/hig-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Human Interface Guidelines website
 hasrepo: true
-icon: null
-members:
-- displayname: Fabian Riethmayer
-  username: fabianr
+identifier: websites-hig-kde-org
 name: KDE Human Interface Guidelines website
 projectpath: websites/hig-kde-org
 repoactive: false
-repopath: websites/hig-kde-org
-type: module
+repopath: /documentation/hig-kde-org
diff --git a/projects-invent/documentation/kf5book/metadata.yaml b/projects-invent/documentation/kf5book/metadata.yaml
index 4f885f2b..2178158c 100644
--- a/projects-invent/documentation/kf5book/metadata.yaml
+++ b/projects-invent/documentation/kf5book/metadata.yaml
@@ -1,15 +1,7 @@
 description: Repository for the development of the KDE Frameworks Cookbook.
 hasrepo: true
-icon: null
-members:
-- displayname: Valorie Zimmerman
-  username: zimmerman
-- displayname: Rohan Garg
-  username: garg
-- displayname: Mirko Boehm
-  username: mirko
+identifier: kf5book
 name: KDE Frameworks Cookbook
 projectpath: books/kf5book
 repoactive: false
-repopath: kf5book
-type: module
+repopath: /documentation/kf5book
diff --git a/projects-invent/documentation/openraster-org/metadata.yaml b/projects-invent/documentation/openraster-org/metadata.yaml
index 40af3745..51a406df 100644
--- a/projects-invent/documentation/openraster-org/metadata.yaml
+++ b/projects-invent/documentation/openraster-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Sphinx setup for the Openraster.org (ORA specification) website
 hasrepo: true
-icon: null
-members:
-- displayname: Wolthera van Hövell
-  username: woltherav
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: websites-openraster-org
 name: OpenRaster Specification Website
 projectpath: websites/openraster-org
 repoactive: true
-repopath: websites/openraster-org
-type: module
+repopath: /documentation/openraster-org
diff --git a/projects-invent/education/analitza/metadata.yaml b/projects-invent/education/analitza/metadata.yaml
index 5cceaa66..b207794f 100644
--- a/projects-invent/education/analitza/metadata.yaml
+++ b/projects-invent/education/analitza/metadata.yaml
@@ -1,13 +1,7 @@
 description: The analitza library will let you add mathematical features to your program.
 hasrepo: true
-icon: null
-members:
-- displayname: "Percy Camilo Trive\xF1o Aucahuasi"
-  username: aucahuasi
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: analitza
 name: Analitza
 projectpath: kde/kdeedu/analitza
 repoactive: true
-repopath: analitza
-type: project
+repopath: /education/analitza
diff --git a/projects-invent/education/artikulate-data/metadata.yaml b/projects-invent/education/artikulate-data/metadata.yaml
index c320e91b..9144008a 100644
--- a/projects-invent/education/artikulate-data/metadata.yaml
+++ b/projects-invent/education/artikulate-data/metadata.yaml
@@ -1,15 +1,7 @@
 description: This repository holds the Artikulate course data files.
 hasrepo: true
-icon: null
-members:
-- displayname: Magdalena Konkiewicz
-  username: magdalenakonkiewicz
-- displayname: Oindrila Gupta
-  username: oindrilag
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: artikulate-data
 name: Artikulate Course Data Repository
 projectpath: playground/edu/artikulate-data
 repoactive: false
-repopath: artikulate-data
-type: project
+repopath: /education/artikulate-data
diff --git a/projects-invent/education/artikulate/metadata.yaml b/projects-invent/education/artikulate/metadata.yaml
index 6ac0960b..14fca1f6 100644
--- a/projects-invent/education/artikulate/metadata.yaml
+++ b/projects-invent/education/artikulate/metadata.yaml
@@ -1,17 +1,7 @@
 description: Improve your pronunciation by listening to native speakers.
 hasrepo: true
-icon: null
-members:
-- displayname: Samikshan Bairagya
-  username: bairagya
-- displayname: Magdalena Konkiewicz
-  username: magdalenakonkiewicz
-- displayname: Oindrila Gupta
-  username: oindrilag
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: artikulate
 name: Artikulate Pronunciation Trainer
 projectpath: kde/kdeedu/artikulate
 repoactive: true
-repopath: artikulate
-type: project
+repopath: /education/artikulate
diff --git a/projects-invent/education/blinken/metadata.yaml b/projects-invent/education/blinken/metadata.yaml
index b4f84ddc..9ccf1022 100644
--- a/projects-invent/education/blinken/metadata.yaml
+++ b/projects-invent/education/blinken/metadata.yaml
@@ -1,15 +1,7 @@
 description: Memory Enhancement Game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: blinken
 name: Blinken
 projectpath: kde/kdeedu/blinken
 repoactive: true
-repopath: blinken
-type: project
+repopath: /education/blinken
diff --git a/projects-invent/education/cantor/metadata.yaml b/projects-invent/education/cantor/metadata.yaml
index 551a7d39..4fa952c4 100644
--- a/projects-invent/education/cantor/metadata.yaml
+++ b/projects-invent/education/cantor/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Frontend to Mathematical Software
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: cantor
 name: Cantor
 projectpath: kde/kdeedu/cantor
 repoactive: true
-repopath: cantor
-type: project
+repopath: /education/cantor
diff --git a/projects-invent/education/gcompris-data/metadata.yaml b/projects-invent/education/gcompris-data/metadata.yaml
index fbc4d035..f2a8ff49 100644
--- a/projects-invent/education/gcompris-data/metadata.yaml
+++ b/projects-invent/education/gcompris-data/metadata.yaml
@@ -1,15 +1,7 @@
-description: 'Data files for GCompris'
+description: Data files for GCompris
 hasrepo: true
-icon: apps/gcompris
-members:
-- displayname: Holger Kaelberer
-  username: hkaelberer
-- displayname: Johnny Jazeix
-  username: jjazeix
-- displayname: Bruno Coudoin
-  username: bcoudoin
+identifier: gcompris-data
 name: GCompris Data Files
 projectpath: extragear/edu/gcompris-data
 repoactive: true
-repopath: gcompris-data
-type: project
+repopath: /education/gcompris-data
diff --git a/projects-invent/education/gcompris/metadata.yaml b/projects-invent/education/gcompris/metadata.yaml
index 9f081544..08963176 100644
--- a/projects-invent/education/gcompris/metadata.yaml
+++ b/projects-invent/education/gcompris/metadata.yaml
@@ -7,18 +7,8 @@ description: 'GCompris is a high quality educational software suite comprising o
 
   This repository hosts the Qt Quick version of GCompris.'
 hasrepo: true
-icon: apps/gcompris
-members:
-- displayname: Holger Kaelberer
-  username: hkaelberer
-- displayname: Johnny Jazeix
-  username: jjazeix
-- displayname: Bruno Coudoin
-  username: bcoudoin
-- displayname: Timothee Giet
-  username: timotheegiet
+identifier: gcompris
 name: GCompris
 projectpath: extragear/edu/gcompris
 repoactive: true
-repopath: gcompris
-type: project
+repopath: /education/gcompris
diff --git a/projects-invent/education/kalgebra/metadata.yaml b/projects-invent/education/kalgebra/metadata.yaml
index d961483c..f48eebab 100644
--- a/projects-invent/education/kalgebra/metadata.yaml
+++ b/projects-invent/education/kalgebra/metadata.yaml
@@ -1,15 +1,7 @@
 description: 2D and 3D Graph Calculator
 hasrepo: true
-icon: kalgebra
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kalgebra
 name: KAlgebra
 projectpath: kde/kdeedu/kalgebra
 repoactive: true
-repopath: kalgebra
-type: project
+repopath: /education/kalgebra
diff --git a/projects-invent/education/kalzium/metadata.yaml b/projects-invent/education/kalzium/metadata.yaml
index 454656e2..f542e350 100644
--- a/projects-invent/education/kalzium/metadata.yaml
+++ b/projects-invent/education/kalzium/metadata.yaml
@@ -1,13 +1,7 @@
 description: Periodic Table of Elements
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kalzium
 name: Kalzium
 projectpath: kde/kdeedu/kalzium
 repoactive: true
-repopath: kalzium
-type: project
+repopath: /education/kalzium
diff --git a/projects-invent/education/kanagram/metadata.yaml b/projects-invent/education/kanagram/metadata.yaml
index a71d6d65..7c6b43a5 100644
--- a/projects-invent/education/kanagram/metadata.yaml
+++ b/projects-invent/education/kanagram/metadata.yaml
@@ -1,13 +1,7 @@
 description: Letter Order Game
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kanagram
 name: Kanagram
 projectpath: kde/kdeedu/kanagram
 repoactive: true
-repopath: kanagram
-type: project
+repopath: /education/kanagram
diff --git a/projects-invent/education/kard/metadata.yaml b/projects-invent/education/kard/metadata.yaml
index e964347d..50ce19d8 100644
--- a/projects-invent/education/kard/metadata.yaml
+++ b/projects-invent/education/kard/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kard, a Memory-like game for kids
 hasrepo: true
-icon: null
-members:
-- displayname: Anne-Marie Mahfouf
-  username: annma
+identifier: kard
 name: Kard
 projectpath: playground/edu/kard
 repoactive: true
-repopath: kard
-type: project
+repopath: /education/kard
diff --git a/projects-invent/education/kartesio/metadata.yaml b/projects-invent/education/kartesio/metadata.yaml
index 8bc78538..bfce8745 100644
--- a/projects-invent/education/kartesio/metadata.yaml
+++ b/projects-invent/education/kartesio/metadata.yaml
@@ -11,12 +11,8 @@ description: 'Kartesio is a program for calculating best fit curves with experim
   The official Kartesio website is "https://www.zorbaproject.org/kartesio/". There
   you can find source and binary packages for stable versions.'
 hasrepo: true
-icon: null
-members:
-- displayname: Luca Tringali
-  username: lucatringali
+identifier: kartesio
 name: Kartesio
 projectpath: playground/edu/kartesio
 repoactive: true
-repopath: kartesio
-type: project
+repopath: /education/kartesio
diff --git a/projects-invent/education/kbruch/metadata.yaml b/projects-invent/education/kbruch/metadata.yaml
index 0fc8934c..92075e78 100644
--- a/projects-invent/education/kbruch/metadata.yaml
+++ b/projects-invent/education/kbruch/metadata.yaml
@@ -1,13 +1,7 @@
 description: Practice Fractions
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kbruch
 name: KBruch
 projectpath: kde/kdeedu/kbruch
 repoactive: true
-repopath: kbruch
-type: project
+repopath: /education/kbruch
diff --git a/projects-invent/education/kdeedu-data/metadata.yaml b/projects-invent/education/kdeedu-data/metadata.yaml
index e264df4f..db30f518 100644
--- a/projects-invent/education/kdeedu-data/metadata.yaml
+++ b/projects-invent/education/kdeedu-data/metadata.yaml
@@ -1,13 +1,7 @@
 description: Shared icons, artwork and data files for educational applications
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kdeedu-data
 name: Data files for KDE Edu applications
 projectpath: kde/kdeedu/kdeedu-data
 repoactive: true
-repopath: kdeedu-data
-type: project
+repopath: /education/kdeedu-data
diff --git a/projects-invent/education/kgeography/metadata.yaml b/projects-invent/education/kgeography/metadata.yaml
index b23b5776..a62cd09d 100644
--- a/projects-invent/education/kgeography/metadata.yaml
+++ b/projects-invent/education/kgeography/metadata.yaml
@@ -1,15 +1,7 @@
 description: Geography Trainer
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kgeography
 name: KGeography
 projectpath: kde/kdeedu/kgeography
 repoactive: true
-repopath: kgeography
-type: project
+repopath: /education/kgeography
diff --git a/projects-invent/education/khangman/metadata.yaml b/projects-invent/education/khangman/metadata.yaml
index 9f969331..b5bd6965 100644
--- a/projects-invent/education/khangman/metadata.yaml
+++ b/projects-invent/education/khangman/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE hangman game
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: khangman
 name: KHangMan
 projectpath: kde/kdeedu/khangman
 repoactive: true
-repopath: khangman
-type: project
+repopath: /education/khangman
diff --git a/projects-invent/education/khipu/metadata.yaml b/projects-invent/education/khipu/metadata.yaml
index dfadf87d..b6620011 100644
--- a/projects-invent/education/khipu/metadata.yaml
+++ b/projects-invent/education/khipu/metadata.yaml
@@ -3,16 +3,8 @@ description: '*Advanced Mathematical Function Plotter*
 
   Draw and study any mathematical function'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Punit Mehta
-  username: mehtapunit
-- displayname: "Percy Camilo Trive\xF1o Aucahuasi"
-  username: aucahuasi
+identifier: khipu
 name: Khipu
 projectpath: playground/edu/khipu
 repoactive: true
-repopath: khipu
-type: project
+repopath: /education/khipu
diff --git a/projects-invent/education/kig/metadata.yaml b/projects-invent/education/kig/metadata.yaml
index d6ebad82..7e40cf82 100644
--- a/projects-invent/education/kig/metadata.yaml
+++ b/projects-invent/education/kig/metadata.yaml
@@ -1,15 +1,7 @@
 description: Interactive Geometry
 hasrepo: true
-icon: null
-members:
-- displayname: "David Narv\xE1ez"
-  username: narvaez
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Pino Toscano
-  username: pino
+identifier: kig
 name: Kig
 projectpath: kde/kdeedu/kig
 repoactive: true
-repopath: kig
-type: project
+repopath: /education/kig
diff --git a/projects-invent/education/kiten/metadata.yaml b/projects-invent/education/kiten/metadata.yaml
index 6b9d7a53..c0a5c883 100644
--- a/projects-invent/education/kiten/metadata.yaml
+++ b/projects-invent/education/kiten/metadata.yaml
@@ -1,13 +1,7 @@
 description: Japanese Reference/Study Tool
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kiten
 name: Kiten
 projectpath: kde/kdeedu/kiten
 repoactive: true
-repopath: kiten
-type: project
+repopath: /education/kiten
diff --git a/projects-invent/education/klettres/metadata.yaml b/projects-invent/education/klettres/metadata.yaml
index 93ca57c7..221b464f 100644
--- a/projects-invent/education/klettres/metadata.yaml
+++ b/projects-invent/education/klettres/metadata.yaml
@@ -1,13 +1,7 @@
 description: Learn The Alphabet
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: klettres
 name: KLettres
 projectpath: kde/kdeedu/klettres
 repoactive: true
-repopath: klettres
-type: project
+repopath: /education/klettres
diff --git a/projects-invent/education/kmplot/metadata.yaml b/projects-invent/education/kmplot/metadata.yaml
index f1425685..456130bb 100644
--- a/projects-invent/education/kmplot/metadata.yaml
+++ b/projects-invent/education/kmplot/metadata.yaml
@@ -1,13 +1,7 @@
 description: Mathematical Function Plotter
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kmplot
 name: KmPlot
 projectpath: kde/kdeedu/kmplot
 repoactive: true
-repopath: kmplot
-type: project
+repopath: /education/kmplot
diff --git a/projects-invent/education/kstars/metadata.yaml b/projects-invent/education/kstars/metadata.yaml
index 21810858..bf805aea 100644
--- a/projects-invent/education/kstars/metadata.yaml
+++ b/projects-invent/education/kstars/metadata.yaml
@@ -1,15 +1,7 @@
 description: Desktop Planetarium
 hasrepo: true
-icon: null
-members:
-- displayname: Jasem Mutlaq
-  username: mutlaqja
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kstars
 name: KStars
 projectpath: extragear/edu/kstars
 repoactive: true
-repopath: kstars
-type: project
+repopath: /education/kstars
diff --git a/projects-invent/education/ktouch/metadata.yaml b/projects-invent/education/ktouch/metadata.yaml
index 4adb46cc..6f00afbe 100644
--- a/projects-invent/education/ktouch/metadata.yaml
+++ b/projects-invent/education/ktouch/metadata.yaml
@@ -1,13 +1,7 @@
 description: Touch Typing Tutor
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: ktouch
 name: KTouch
 projectpath: kde/kdeedu/ktouch
 repoactive: true
-repopath: ktouch
-type: project
+repopath: /education/ktouch
diff --git a/projects-invent/education/kturtle/metadata.yaml b/projects-invent/education/kturtle/metadata.yaml
index 72f0501a..d0834f23 100644
--- a/projects-invent/education/kturtle/metadata.yaml
+++ b/projects-invent/education/kturtle/metadata.yaml
@@ -1,13 +1,7 @@
 description: Educational Programming Environment
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kturtle
 name: KTurtle
 projectpath: kde/kdeedu/kturtle
 repoactive: true
-repopath: kturtle
-type: project
+repopath: /education/kturtle
diff --git a/projects-invent/education/kwordquiz/metadata.yaml b/projects-invent/education/kwordquiz/metadata.yaml
index 21976daa..cc0c631c 100644
--- a/projects-invent/education/kwordquiz/metadata.yaml
+++ b/projects-invent/education/kwordquiz/metadata.yaml
@@ -1,13 +1,7 @@
 description: Flash Card Trainer
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kwordquiz
 name: KWordQuiz
 projectpath: kde/kdeedu/kwordquiz
 repoactive: true
-repopath: kwordquiz
-type: project
+repopath: /education/kwordquiz
diff --git a/projects-invent/education/labplot/metadata.yaml b/projects-invent/education/labplot/metadata.yaml
index f9205234..57e47d43 100644
--- a/projects-invent/education/labplot/metadata.yaml
+++ b/projects-invent/education/labplot/metadata.yaml
@@ -1,12 +1,8 @@
 description: LabPlot is a KDE-application for interactive graphing and analysis of
   scientific data.
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Semke
-  username: asemke
+identifier: labplot
 name: Labplot
 projectpath: extragear/edu/labplot
 repoactive: true
-repopath: labplot
-type: project
+repopath: /education/labplot
diff --git a/projects-invent/education/libkeduvocdocument/metadata.yaml b/projects-invent/education/libkeduvocdocument/metadata.yaml
index 2038c70f..a96880ec 100644
--- a/projects-invent/education/libkeduvocdocument/metadata.yaml
+++ b/projects-invent/education/libkeduvocdocument/metadata.yaml
@@ -1,12 +1,8 @@
 description: Library to parse, convert, and manipulate KVTML files (and older formats
   including kvtml1, csv, etc.)
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: libkeduvocdocument
 name: Library for KVTML file handling
 projectpath: kde/kdeedu/libkeduvocdocument
 repoactive: true
-repopath: libkeduvocdocument
-type: project
+repopath: /education/libkeduvocdocument
diff --git a/projects-invent/education/marble/metadata.yaml b/projects-invent/education/marble/metadata.yaml
index aed9cc67..fc695785 100644
--- a/projects-invent/education/marble/metadata.yaml
+++ b/projects-invent/education/marble/metadata.yaml
@@ -11,72 +11,8 @@ description: "Marble is a Virtual Globe and World Atlas that you can use to lear
   \ the map change.\n\nIn opposite to other virtual globes Marble also features multiple\
   \ projections: Choose between a Flat Map (\"Plate carr\xE9\"), Mercator or the Globe."
 hasrepo: true
-icon: marble
-members:
-- displayname: Jens-Michael Hoffmann
-  username: jmhoffmann
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Torsten Rahn
-  username: rahn
-- displayname: "Dennis Nienh\xFCser"
-  username: nienhueser
-- displayname: Bernhard Beschow
-  username: beschow
-- displayname: Bastian Holst
-  username: bholst
-- displayname: Thibaut Gridel
-  username: tgridel
-- displayname: Andrew Manson
-  username: mansona
-- displayname: Gaurav Gupta
-  username: ggupta
-- displayname: Harshit Jain
-  username: hjain
-- displayname: Siddharth Srivastava
-  username: siddharthsrivastava
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: "Utku Ayd\u0131n"
-  username: aydin
-- displayname: Henry de Valence
-  username: hdevalence
-- displayname: Sebastian Wiedenroth
-  username: wiedenroth
-- displayname: "Ren\xE9 K\xFCttner"
-  username: renek
-- displayname: Anders Lund
-  username: alund
-- displayname: Ander Pijoan
-  username: pijoan
-- displayname: Cezar Mocan
-  username: mocan
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
-- displayname: Daniel Marth
-  username: marth
-- displayname: "Eckhart W\xF6rner"
-  username: ewoerner
-- displayname: "Florian E\xDFer"
-  username: esser
-- displayname: Guillaume Martres
-  username: gmartres
-- displayname: Inge Wallin
-  username: ingwa
-- displayname: John Layt
-  username: jlayt
-- displayname: Konstantin Oblaukhov
-  username: oblaukhov
-- displayname: Niko Sams
-  username: nsams
-- displayname: Niko2 Sams2
-  username: nikosams
-- displayname: Simon Edwards
-  username: sedwards
-- displayname: Wes Hardaker
-  username: hardaker
+identifier: marble
 name: Marble Virtual Globe
 projectpath: kde/kdeedu/marble
 repoactive: true
-repopath: marble
-type: project
+repopath: /education/marble
diff --git a/projects-invent/education/mark/metadata.yaml b/projects-invent/education/mark/metadata.yaml
index 7a595786..c524c5b8 100644
--- a/projects-invent/education/mark/metadata.yaml
+++ b/projects-invent/education/mark/metadata.yaml
@@ -1,11 +1,7 @@
 description: Scientific tool for data annotation
 hasrepo: true
-icon: null
-members:
-- displayname: Caio Jordão Carvalho
-  username: cjlcarvalho
+identifier: mark
 name: marK
 projectpath: playground/base/mark
 repoactive: true
-repopath: mark
-type: project
+repopath: /education/mark
diff --git a/projects-invent/education/metadata.yaml b/projects-invent/education/metadata.yaml
index 3fde2af4..5c1cbbf5 100644
--- a/projects-invent/education/metadata.yaml
+++ b/projects-invent/education/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Edu
 projectpath: kde/kdeedu
 repoactive: false
-repopath: null
-type: module
+repopath: /education
diff --git a/projects-invent/education/minuet/metadata.yaml b/projects-invent/education/minuet/metadata.yaml
index cbc44456..08ea9f84 100644
--- a/projects-invent/education/minuet/metadata.yaml
+++ b/projects-invent/education/minuet/metadata.yaml
@@ -1,13 +1,7 @@
 description: A KDE Software for Music Education
 hasrepo: true
-icon: null
-members:
-- displayname: Ayush Shah
-  username: ayushshah
-- displayname: Sandro Andrade
-  username: sandroandrade
+identifier: minuet
 name: Minuet
 projectpath: kde/kdeedu/minuet
 repoactive: true
-repopath: minuet
-type: project
+repopath: /education/minuet
diff --git a/projects-invent/education/parley/metadata.yaml b/projects-invent/education/parley/metadata.yaml
index e8c150af..3901d242 100644
--- a/projects-invent/education/parley/metadata.yaml
+++ b/projects-invent/education/parley/metadata.yaml
@@ -1,15 +1,7 @@
 description: Vocabulary Trainer
 hasrepo: true
-icon: null
-members:
-- displayname: Inge Wallin
-  username: ingwa
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: parley
 name: Parley
 projectpath: kde/kdeedu/parley
 repoactive: true
-repopath: parley
-type: project
+repopath: /education/parley
diff --git a/projects-invent/education/rkward/metadata.yaml b/projects-invent/education/rkward/metadata.yaml
index 88a6aee7..429ad1c2 100644
--- a/projects-invent/education/rkward/metadata.yaml
+++ b/projects-invent/education/rkward/metadata.yaml
@@ -4,14 +4,8 @@ description: 'RKWard provides an easily extensible, easy to use IDE/GUI for R.
   RKWard is currently in the process of moving from its former hosting on Sourceforge.net
   to KDE.org.'
 hasrepo: true
-icon: rkward
-members:
-- displayname: m.eik michalke
-  username: meikm
-- displayname: Thomas Friedrichsmeier
-  username: tfry
+identifier: rkward
 name: RKWard - GUI for R
 projectpath: playground/edu/rkward
 repoactive: true
-repopath: rkward
-type: project
+repopath: /education/rkward
diff --git a/projects-invent/education/rocs/metadata.yaml b/projects-invent/education/rocs/metadata.yaml
index 9d9bfcf9..88a25ca5 100644
--- a/projects-invent/education/rocs/metadata.yaml
+++ b/projects-invent/education/rocs/metadata.yaml
@@ -1,19 +1,7 @@
 description: Graph Theory IDE
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Tomaz  Canabrava
-  username: tcanabrava
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
-- displayname: Wagner de Melo Reck
-  username: reck
+identifier: rocs
 name: Rocs
 projectpath: kde/kdeedu/rocs
 repoactive: true
-repopath: rocs
-type: project
+repopath: /education/rocs
diff --git a/projects-invent/education/step/metadata.yaml b/projects-invent/education/step/metadata.yaml
index 3da36985..34dfc0ab 100644
--- a/projects-invent/education/step/metadata.yaml
+++ b/projects-invent/education/step/metadata.yaml
@@ -1,15 +1,7 @@
 description: Interactive Physics Simulator
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Tomaz  Canabrava
-  username: tcanabrava
+identifier: step
 name: Step
 projectpath: kde/kdeedu/step
 repoactive: true
-repopath: step
-type: project
+repopath: /education/step
diff --git a/projects-invent/frameworks/attica/metadata.yaml b/projects-invent/frameworks/attica/metadata.yaml
index ab71b3c8..15e9d4db 100644
--- a/projects-invent/frameworks/attica/metadata.yaml
+++ b/projects-invent/frameworks/attica/metadata.yaml
@@ -6,18 +6,8 @@ description: 'Attica is a Qt library that implements the Open Collaboration Serv
 
   Internet Relay Chat: #ocs at freenode'
 hasrepo: true
-icon: null
-members:
-- displayname: Frederik Gladhorn
-  username: gladhorn
-- displayname: Mateu Batle
-  username: mbatle
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: attica
 name: Attica
 projectpath: frameworks/attica
 repoactive: true
-repopath: attica
-type: project
+repopath: /frameworks/attica
diff --git a/projects-invent/frameworks/baloo/metadata.yaml b/projects-invent/frameworks/baloo/metadata.yaml
index 3783828d..0fdc7116 100644
--- a/projects-invent/frameworks/baloo/metadata.yaml
+++ b/projects-invent/frameworks/baloo/metadata.yaml
@@ -1,11 +1,7 @@
 description: Baloo is a framework for searching and managing metadata.
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: baloo
 name: Baloo
 projectpath: frameworks/baloo
 repoactive: true
-repopath: baloo
-type: project
+repopath: /frameworks/baloo
diff --git a/projects-invent/frameworks/bluez-qt/metadata.yaml b/projects-invent/frameworks/bluez-qt/metadata.yaml
index 3202390f..4ca0982b 100644
--- a/projects-invent/frameworks/bluez-qt/metadata.yaml
+++ b/projects-invent/frameworks/bluez-qt/metadata.yaml
@@ -1,13 +1,7 @@
 description: Qt wrapper for Bluez 5 DBus API
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: David Rosca
-  username: drosca
+identifier: bluez-qt
 name: BluezQt
 projectpath: frameworks/bluez-qt
 repoactive: true
-repopath: bluez-qt
-type: project
+repopath: /frameworks/bluez-qt
diff --git a/projects-invent/frameworks/breeze-icons/metadata.yaml b/projects-invent/frameworks/breeze-icons/metadata.yaml
index c0814d93..4aedadf5 100644
--- a/projects-invent/frameworks/breeze-icons/metadata.yaml
+++ b/projects-invent/frameworks/breeze-icons/metadata.yaml
@@ -1,13 +1,7 @@
 description: Breeze icon theme.
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
-- displayname: Harald Sitter
-  username: sitter
+identifier: breeze-icons
 name: Breeze Icons
 projectpath: frameworks/breeze-icons
 repoactive: true
-repopath: breeze-icons
-type: project
+repopath: /frameworks/breeze-icons
diff --git a/projects-invent/frameworks/extra-cmake-modules/metadata.yaml b/projects-invent/frameworks/extra-cmake-modules/metadata.yaml
index 3cd5dc3b..81c870d8 100644
--- a/projects-invent/frameworks/extra-cmake-modules/metadata.yaml
+++ b/projects-invent/frameworks/extra-cmake-modules/metadata.yaml
@@ -14,12 +14,8 @@ description: 'Extra modules and scripts for CMake.
 
   "API documentation":https://api.kde.org/ecm/'
 hasrepo: true
-icon: null
-members:
-- displayname: Alex Merry
-  username: alexmerry
+identifier: extra-cmake-modules
 name: Extra CMake Modules
 projectpath: frameworks/extra-cmake-modules
 repoactive: true
-repopath: extra-cmake-modules
-type: module
+repopath: /frameworks/extra-cmake-modules
diff --git a/projects-invent/frameworks/frameworkintegration/metadata.yaml b/projects-invent/frameworks/frameworkintegration/metadata.yaml
index 0f1b3401..cb7d3b6d 100644
--- a/projects-invent/frameworks/frameworkintegration/metadata.yaml
+++ b/projects-invent/frameworks/frameworkintegration/metadata.yaml
@@ -1,10 +1,8 @@
 description: Framework providing components to allow applications to integrate with
   a KDE Workspace
 hasrepo: true
-icon: null
-members: []
+identifier: frameworkintegration
 name: Integration for Frameworks
 projectpath: frameworks/frameworkintegration
 repoactive: true
-repopath: frameworkintegration
-type: project
+repopath: /frameworks/frameworkintegration
diff --git a/projects-invent/frameworks/kactivities-stats/metadata.yaml b/projects-invent/frameworks/kactivities-stats/metadata.yaml
index 1c6bee20..5d354799 100644
--- a/projects-invent/frameworks/kactivities-stats/metadata.yaml
+++ b/projects-invent/frameworks/kactivities-stats/metadata.yaml
@@ -1,11 +1,7 @@
 description: A library for accessing the usage data collected by the activities system.
 hasrepo: true
-icon: preferences-activities
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: kactivities-stats
 name: Activities Statistics Library
 projectpath: frameworks/kactivities-stats
 repoactive: true
-repopath: kactivities-stats
-type: project
+repopath: /frameworks/kactivities-stats
diff --git a/projects-invent/frameworks/kactivities/metadata.yaml b/projects-invent/frameworks/kactivities/metadata.yaml
index 926745e4..97a76058 100644
--- a/projects-invent/frameworks/kactivities/metadata.yaml
+++ b/projects-invent/frameworks/kactivities/metadata.yaml
@@ -4,18 +4,8 @@ description: "Core components for the KDE's Activities\n\n* Activity Manager\n
   \  application adding information to them or as an activity manager.\n* Workspace\n\
   \  Plugins for Plasma to easier integrate activities (KIO, etc.)"
 hasrepo: true
-icon: preferences-activities
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Marco Martin
-  username: mart
+identifier: kactivities
 name: Activities
 projectpath: frameworks/kactivities
 repoactive: true
-repopath: kactivities
-type: project
+repopath: /frameworks/kactivities
diff --git a/projects-invent/frameworks/kapidox/metadata.yaml b/projects-invent/frameworks/kapidox/metadata.yaml
index 4606f7b2..0af71bfa 100644
--- a/projects-invent/frameworks/kapidox/metadata.yaml
+++ b/projects-invent/frameworks/kapidox/metadata.yaml
@@ -1,9 +1,7 @@
 description: Frameworks API Documentation Tools
 hasrepo: true
-icon: null
-members: []
+identifier: kapidox
 name: Frameworks API Documentation Tools
 projectpath: frameworks/kapidox
 repoactive: true
-repopath: kapidox
-type: project
+repopath: /frameworks/kapidox
diff --git a/projects-invent/frameworks/karchive/metadata.yaml b/projects-invent/frameworks/karchive/metadata.yaml
index a3c9a9c6..031f58b0 100644
--- a/projects-invent/frameworks/karchive/metadata.yaml
+++ b/projects-invent/frameworks/karchive/metadata.yaml
@@ -1,9 +1,7 @@
 description: Qt 5 addon providing access to numerous types of archives
 hasrepo: true
-icon: null
-members: []
+identifier: karchive
 name: KArchive
 projectpath: frameworks/karchive
 repoactive: true
-repopath: karchive
-type: project
+repopath: /frameworks/karchive
diff --git a/projects-invent/frameworks/kauth/metadata.yaml b/projects-invent/frameworks/kauth/metadata.yaml
index 638b0430..81242a47 100644
--- a/projects-invent/frameworks/kauth/metadata.yaml
+++ b/projects-invent/frameworks/kauth/metadata.yaml
@@ -1,9 +1,7 @@
 description: KAuth
 hasrepo: true
-icon: null
-members: []
+identifier: kauth
 name: KAuth
 projectpath: frameworks/kauth
 repoactive: true
-repopath: kauth
-type: project
+repopath: /frameworks/kauth
diff --git a/projects-invent/frameworks/kbookmarks/metadata.yaml b/projects-invent/frameworks/kbookmarks/metadata.yaml
index b5909f0e..758af71a 100644
--- a/projects-invent/frameworks/kbookmarks/metadata.yaml
+++ b/projects-invent/frameworks/kbookmarks/metadata.yaml
@@ -1,9 +1,7 @@
 description: KBookmarks
 hasrepo: true
-icon: null
-members: []
+identifier: kbookmarks
 name: KBookmarks
 projectpath: frameworks/kbookmarks
 repoactive: true
-repopath: kbookmarks
-type: project
+repopath: /frameworks/kbookmarks
diff --git a/projects-invent/frameworks/kcalendarcore/metadata.yaml b/projects-invent/frameworks/kcalendarcore/metadata.yaml
index 4523d61c..c551761c 100644
--- a/projects-invent/frameworks/kcalendarcore/metadata.yaml
+++ b/projects-invent/frameworks/kcalendarcore/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'KCalendarCore - Library for Interfacing with Calendars'
+description: KCalendarCore - Library for Interfacing with Calendars
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kcalendarcore
 name: KCalendarCore
 projectpath: frameworks/kcalendarcore
 repoactive: true
-repopath: kcalendarcore
-type: project
+repopath: /frameworks/kcalendarcore
diff --git a/projects-invent/frameworks/kcmutils/metadata.yaml b/projects-invent/frameworks/kcmutils/metadata.yaml
index 59f5fd2e..d8fded31 100644
--- a/projects-invent/frameworks/kcmutils/metadata.yaml
+++ b/projects-invent/frameworks/kcmutils/metadata.yaml
@@ -1,9 +1,7 @@
 description: Utilities for interacting with KCModules
 hasrepo: true
-icon: null
-members: []
+identifier: kcmutils
 name: KCMUtils
 projectpath: frameworks/kcmutils
 repoactive: true
-repopath: kcmutils
-type: project
+repopath: /frameworks/kcmutils
diff --git a/projects-invent/frameworks/kcodecs/metadata.yaml b/projects-invent/frameworks/kcodecs/metadata.yaml
index 9e7aa7c9..8f20c5dc 100644
--- a/projects-invent/frameworks/kcodecs/metadata.yaml
+++ b/projects-invent/frameworks/kcodecs/metadata.yaml
@@ -1,10 +1,8 @@
 description: KCodecs provide a collection of methods to manipulate strings using various
   encodings
 hasrepo: true
-icon: null
-members: []
+identifier: kcodecs
 name: KCodecs
 projectpath: frameworks/kcodecs
 repoactive: true
-repopath: kcodecs
-type: project
+repopath: /frameworks/kcodecs
diff --git a/projects-invent/frameworks/kcompletion/metadata.yaml b/projects-invent/frameworks/kcompletion/metadata.yaml
index ad1f6643..4f808fd9 100644
--- a/projects-invent/frameworks/kcompletion/metadata.yaml
+++ b/projects-invent/frameworks/kcompletion/metadata.yaml
@@ -1,9 +1,7 @@
 description: KCompletion
 hasrepo: true
-icon: null
-members: []
+identifier: kcompletion
 name: KCompletion
 projectpath: frameworks/kcompletion
 repoactive: true
-repopath: kcompletion
-type: project
+repopath: /frameworks/kcompletion
diff --git a/projects-invent/frameworks/kconfig/metadata.yaml b/projects-invent/frameworks/kconfig/metadata.yaml
index 849d9758..ed9bcbc7 100644
--- a/projects-invent/frameworks/kconfig/metadata.yaml
+++ b/projects-invent/frameworks/kconfig/metadata.yaml
@@ -1,9 +1,7 @@
 description: KConfig
 hasrepo: true
-icon: null
-members: []
+identifier: kconfig
 name: KConfig
 projectpath: frameworks/kconfig
 repoactive: true
-repopath: kconfig
-type: project
+repopath: /frameworks/kconfig
diff --git a/projects-invent/frameworks/kconfigwidgets/metadata.yaml b/projects-invent/frameworks/kconfigwidgets/metadata.yaml
index 414a6b2d..6e271f52 100644
--- a/projects-invent/frameworks/kconfigwidgets/metadata.yaml
+++ b/projects-invent/frameworks/kconfigwidgets/metadata.yaml
@@ -1,9 +1,7 @@
 description: Widgets for KConfig
 hasrepo: true
-icon: null
-members: []
+identifier: kconfigwidgets
 name: KConfigWidgets
 projectpath: frameworks/kconfigwidgets
 repoactive: true
-repopath: kconfigwidgets
-type: project
+repopath: /frameworks/kconfigwidgets
diff --git a/projects-invent/frameworks/kcontacts/metadata.yaml b/projects-invent/frameworks/kcontacts/metadata.yaml
index dd52ad9e..c3676218 100644
--- a/projects-invent/frameworks/kcontacts/metadata.yaml
+++ b/projects-invent/frameworks/kcontacts/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'KContacts - Library for working with contact information'
+description: KContacts - Library for working with contact information
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kcontacts
 name: KContacts
 projectpath: frameworks/kcontacts
 repoactive: true
-repopath: kcontacts
-type: project
+repopath: /frameworks/kcontacts
diff --git a/projects-invent/frameworks/kcoreaddons/metadata.yaml b/projects-invent/frameworks/kcoreaddons/metadata.yaml
index fb50fb20..30415546 100644
--- a/projects-invent/frameworks/kcoreaddons/metadata.yaml
+++ b/projects-invent/frameworks/kcoreaddons/metadata.yaml
@@ -1,9 +1,7 @@
 description: KCoreAddons
 hasrepo: true
-icon: null
-members: []
+identifier: kcoreaddons
 name: KCoreAddons
 projectpath: frameworks/kcoreaddons
 repoactive: true
-repopath: kcoreaddons
-type: project
+repopath: /frameworks/kcoreaddons
diff --git a/projects-invent/frameworks/kcrash/metadata.yaml b/projects-invent/frameworks/kcrash/metadata.yaml
index 3bb149f1..a09ba1f6 100644
--- a/projects-invent/frameworks/kcrash/metadata.yaml
+++ b/projects-invent/frameworks/kcrash/metadata.yaml
@@ -1,9 +1,7 @@
 description: KCrash
 hasrepo: true
-icon: null
-members: []
+identifier: kcrash
 name: KCrash
 projectpath: frameworks/kcrash
 repoactive: true
-repopath: kcrash
-type: project
+repopath: /frameworks/kcrash
diff --git a/projects-invent/frameworks/kdbusaddons/metadata.yaml b/projects-invent/frameworks/kdbusaddons/metadata.yaml
index e7e2b43f..0d2cfd3c 100644
--- a/projects-invent/frameworks/kdbusaddons/metadata.yaml
+++ b/projects-invent/frameworks/kdbusaddons/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDBusAddons
 hasrepo: true
-icon: null
-members: []
+identifier: kdbusaddons
 name: KDBusAddons
 projectpath: frameworks/kdbusaddons
 repoactive: true
-repopath: kdbusaddons
-type: project
+repopath: /frameworks/kdbusaddons
diff --git a/projects-invent/frameworks/kdeclarative/metadata.yaml b/projects-invent/frameworks/kdeclarative/metadata.yaml
index 39636345..2bc69890 100644
--- a/projects-invent/frameworks/kdeclarative/metadata.yaml
+++ b/projects-invent/frameworks/kdeclarative/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDeclarative
 hasrepo: true
-icon: null
-members: []
+identifier: kdeclarative
 name: KDeclarative
 projectpath: frameworks/kdeclarative
 repoactive: true
-repopath: kdeclarative
-type: project
+repopath: /frameworks/kdeclarative
diff --git a/projects-invent/frameworks/kded/metadata.yaml b/projects-invent/frameworks/kded/metadata.yaml
index 4d7a5d4d..d310eb13 100644
--- a/projects-invent/frameworks/kded/metadata.yaml
+++ b/projects-invent/frameworks/kded/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE Daemon
 hasrepo: true
-icon: null
-members: []
+identifier: kded
 name: KDE Daemon
 projectpath: frameworks/kded
 repoactive: true
-repopath: kded
-type: project
+repopath: /frameworks/kded
diff --git a/projects-invent/frameworks/kdelibs4support/metadata.yaml b/projects-invent/frameworks/kdelibs4support/metadata.yaml
index 60fa77f3..0a7b26e6 100644
--- a/projects-invent/frameworks/kdelibs4support/metadata.yaml
+++ b/projects-invent/frameworks/kdelibs4support/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE 4 Support
 hasrepo: true
-icon: null
-members: []
+identifier: kdelibs4support
 name: KDE4 Support
 projectpath: frameworks/kdelibs4support
 repoactive: true
-repopath: kdelibs4support
-type: project
+repopath: /frameworks/kdelibs4support
diff --git a/projects-invent/frameworks/kdesignerplugin/metadata.yaml b/projects-invent/frameworks/kdesignerplugin/metadata.yaml
index 9c7c8cae..065f4219 100644
--- a/projects-invent/frameworks/kdesignerplugin/metadata.yaml
+++ b/projects-invent/frameworks/kdesignerplugin/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDesignerPlugin
 hasrepo: true
-icon: null
-members: []
+identifier: kdesignerplugin
 name: KDesignerPlugin
 projectpath: frameworks/kdesignerplugin
 repoactive: true
-repopath: kdesignerplugin
-type: project
+repopath: /frameworks/kdesignerplugin
diff --git a/projects-invent/frameworks/kdesu/metadata.yaml b/projects-invent/frameworks/kdesu/metadata.yaml
index 6a68829a..e1ffeb28 100644
--- a/projects-invent/frameworks/kdesu/metadata.yaml
+++ b/projects-invent/frameworks/kdesu/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE Su
 hasrepo: true
-icon: null
-members: []
+identifier: kdesu
 name: KDE Su
 projectpath: frameworks/kdesu
 repoactive: true
-repopath: kdesu
-type: project
+repopath: /frameworks/kdesu
diff --git a/projects-invent/frameworks/kdewebkit/metadata.yaml b/projects-invent/frameworks/kdewebkit/metadata.yaml
index 7ef02594..716e0806 100644
--- a/projects-invent/frameworks/kdewebkit/metadata.yaml
+++ b/projects-invent/frameworks/kdewebkit/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE Webkit
 hasrepo: true
-icon: null
-members: []
+identifier: kdewebkit
 name: KDE Webkit
 projectpath: frameworks/kdewebkit
 repoactive: true
-repopath: kdewebkit
-type: project
+repopath: /frameworks/kdewebkit
diff --git a/projects-invent/frameworks/kdnssd/metadata.yaml b/projects-invent/frameworks/kdnssd/metadata.yaml
index 1434d9b2..62f7a404 100644
--- a/projects-invent/frameworks/kdnssd/metadata.yaml
+++ b/projects-invent/frameworks/kdnssd/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDNSSD Framework
 hasrepo: true
-icon: null
-members: []
+identifier: kdnssd
 name: KDNSSD Framework
 projectpath: frameworks/kdnssd
 repoactive: true
-repopath: kdnssd
-type: project
+repopath: /frameworks/kdnssd
diff --git a/projects-invent/frameworks/kdoctools/metadata.yaml b/projects-invent/frameworks/kdoctools/metadata.yaml
index c39138c6..edc5946e 100644
--- a/projects-invent/frameworks/kdoctools/metadata.yaml
+++ b/projects-invent/frameworks/kdoctools/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDocTools
 hasrepo: true
-icon: null
-members:
-- displayname: "Burkhard L\xFCck"
-  username: lueck
-- displayname: Luigi Toscano
-  username: ltoscano
+identifier: kdoctools
 name: KDocTools
 projectpath: frameworks/kdoctools
 repoactive: true
-repopath: kdoctools
-type: project
+repopath: /frameworks/kdoctools
diff --git a/projects-invent/frameworks/kemoticons/metadata.yaml b/projects-invent/frameworks/kemoticons/metadata.yaml
index 36a4079c..3a071f75 100644
--- a/projects-invent/frameworks/kemoticons/metadata.yaml
+++ b/projects-invent/frameworks/kemoticons/metadata.yaml
@@ -1,9 +1,7 @@
 description: KEmoticons
 hasrepo: true
-icon: null
-members: []
+identifier: kemoticons
 name: KEmoticons
 projectpath: frameworks/kemoticons
 repoactive: true
-repopath: kemoticons
-type: project
+repopath: /frameworks/kemoticons
diff --git a/projects-invent/frameworks/kfilemetadata/metadata.yaml b/projects-invent/frameworks/kfilemetadata/metadata.yaml
index f6653e34..f719e9b0 100644
--- a/projects-invent/frameworks/kfilemetadata/metadata.yaml
+++ b/projects-invent/frameworks/kfilemetadata/metadata.yaml
@@ -1,13 +1,7 @@
 description: A library for extracting file metadata
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: kfilemetadata
 name: KFileMetaData
 projectpath: frameworks/kfilemetadata
 repoactive: true
-repopath: kfilemetadata
-type: project
+repopath: /frameworks/kfilemetadata
diff --git a/projects-invent/frameworks/kglobalaccel/metadata.yaml b/projects-invent/frameworks/kglobalaccel/metadata.yaml
index 1f9c1589..b73686d5 100644
--- a/projects-invent/frameworks/kglobalaccel/metadata.yaml
+++ b/projects-invent/frameworks/kglobalaccel/metadata.yaml
@@ -1,9 +1,7 @@
 description: KGlobalAccel
 hasrepo: true
-icon: null
-members: []
+identifier: kglobalaccel
 name: KGlobalAccel
 projectpath: frameworks/kglobalaccel
 repoactive: true
-repopath: kglobalaccel
-type: project
+repopath: /frameworks/kglobalaccel
diff --git a/projects-invent/frameworks/kguiaddons/metadata.yaml b/projects-invent/frameworks/kguiaddons/metadata.yaml
index 9dafc6ff..179f1a32 100644
--- a/projects-invent/frameworks/kguiaddons/metadata.yaml
+++ b/projects-invent/frameworks/kguiaddons/metadata.yaml
@@ -1,9 +1,7 @@
 description: KGuiAddons
 hasrepo: true
-icon: null
-members: []
+identifier: kguiaddons
 name: KGuiAddons
 projectpath: frameworks/kguiaddons
 repoactive: true
-repopath: kguiaddons
-type: project
+repopath: /frameworks/kguiaddons
diff --git a/projects-invent/frameworks/kholidays/metadata.yaml b/projects-invent/frameworks/kholidays/metadata.yaml
index a6b6bd2b..a1e3ae8b 100644
--- a/projects-invent/frameworks/kholidays/metadata.yaml
+++ b/projects-invent/frameworks/kholidays/metadata.yaml
@@ -1,11 +1,7 @@
 description: 'KHolidays: Library to assist determining when holidays occur'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kholidays
 name: kholidays
 projectpath: frameworks/kholidays
 repoactive: true
-repopath: kholidays
-type: project
+repopath: /frameworks/kholidays
diff --git a/projects-invent/frameworks/khtml/metadata.yaml b/projects-invent/frameworks/khtml/metadata.yaml
index 3dcb25b1..c51c100d 100644
--- a/projects-invent/frameworks/khtml/metadata.yaml
+++ b/projects-invent/frameworks/khtml/metadata.yaml
@@ -1,9 +1,7 @@
 description: KHtml
 hasrepo: true
-icon: null
-members: []
+identifier: khtml
 name: KHtml
 projectpath: frameworks/khtml
 repoactive: true
-repopath: khtml
-type: project
+repopath: /frameworks/khtml
diff --git a/projects-invent/frameworks/ki18n/metadata.yaml b/projects-invent/frameworks/ki18n/metadata.yaml
index 3a9019b7..5305cf58 100644
--- a/projects-invent/frameworks/ki18n/metadata.yaml
+++ b/projects-invent/frameworks/ki18n/metadata.yaml
@@ -1,9 +1,7 @@
 description: Ki18n
 hasrepo: true
-icon: null
-members: []
+identifier: ki18n
 name: Ki18n
 projectpath: frameworks/ki18n
 repoactive: true
-repopath: ki18n
-type: project
+repopath: /frameworks/ki18n
diff --git a/projects-invent/frameworks/kiconthemes/metadata.yaml b/projects-invent/frameworks/kiconthemes/metadata.yaml
index 624e7877..9201c584 100644
--- a/projects-invent/frameworks/kiconthemes/metadata.yaml
+++ b/projects-invent/frameworks/kiconthemes/metadata.yaml
@@ -1,9 +1,7 @@
 description: KIconThemes
 hasrepo: true
-icon: null
-members: []
+identifier: kiconthemes
 name: KIconThemes
 projectpath: frameworks/kiconthemes
 repoactive: true
-repopath: kiconthemes
-type: project
+repopath: /frameworks/kiconthemes
diff --git a/projects-invent/frameworks/kidletime/metadata.yaml b/projects-invent/frameworks/kidletime/metadata.yaml
index c6b9e4be..b688dbde 100644
--- a/projects-invent/frameworks/kidletime/metadata.yaml
+++ b/projects-invent/frameworks/kidletime/metadata.yaml
@@ -1,9 +1,7 @@
 description: KIdleTime
 hasrepo: true
-icon: null
-members: []
+identifier: kidletime
 name: KIdleTime
 projectpath: frameworks/kidletime
 repoactive: true
-repopath: kidletime
-type: project
+repopath: /frameworks/kidletime
diff --git a/projects-invent/frameworks/kimageformats/metadata.yaml b/projects-invent/frameworks/kimageformats/metadata.yaml
index c21db55a..e53ada0e 100644
--- a/projects-invent/frameworks/kimageformats/metadata.yaml
+++ b/projects-invent/frameworks/kimageformats/metadata.yaml
@@ -1,9 +1,7 @@
 description: KImageFormats
 hasrepo: true
-icon: null
-members: []
+identifier: kimageformats
 name: KImageFormats
 projectpath: frameworks/kimageformats
 repoactive: true
-repopath: kimageformats
-type: project
+repopath: /frameworks/kimageformats
diff --git a/projects-invent/frameworks/kinit/metadata.yaml b/projects-invent/frameworks/kinit/metadata.yaml
index 327e95fb..599270fe 100644
--- a/projects-invent/frameworks/kinit/metadata.yaml
+++ b/projects-invent/frameworks/kinit/metadata.yaml
@@ -1,9 +1,7 @@
 description: KInit
 hasrepo: true
-icon: null
-members: []
+identifier: kinit
 name: KInit
 projectpath: frameworks/kinit
 repoactive: true
-repopath: kinit
-type: project
+repopath: /frameworks/kinit
diff --git a/projects-invent/frameworks/kio/metadata.yaml b/projects-invent/frameworks/kio/metadata.yaml
index 913f472f..81f4351d 100644
--- a/projects-invent/frameworks/kio/metadata.yaml
+++ b/projects-invent/frameworks/kio/metadata.yaml
@@ -1,9 +1,7 @@
 description: KIO
 hasrepo: true
-icon: null
-members: []
+identifier: kio
 name: KIO
 projectpath: frameworks/kio
 repoactive: true
-repopath: kio
-type: project
+repopath: /frameworks/kio
diff --git a/projects-invent/frameworks/kirigami/metadata.yaml b/projects-invent/frameworks/kirigami/metadata.yaml
index a6b85d46..ab1db164 100644
--- a/projects-invent/frameworks/kirigami/metadata.yaml
+++ b/projects-invent/frameworks/kirigami/metadata.yaml
@@ -1,13 +1,7 @@
 description: A QtQuick based components set
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Marco Martin
-  username: mart
+identifier: kirigami
 name: Kirigami components framework
 projectpath: frameworks/kirigami
 repoactive: true
-repopath: kirigami
-type: project
+repopath: /frameworks/kirigami
diff --git a/projects-invent/frameworks/kitemmodels/metadata.yaml b/projects-invent/frameworks/kitemmodels/metadata.yaml
index f22b73da..fa2bebcc 100644
--- a/projects-invent/frameworks/kitemmodels/metadata.yaml
+++ b/projects-invent/frameworks/kitemmodels/metadata.yaml
@@ -1,9 +1,7 @@
 description: KItemModels
 hasrepo: true
-icon: null
-members: []
+identifier: kitemmodels
 name: KItemModels
 projectpath: frameworks/kitemmodels
 repoactive: true
-repopath: kitemmodels
-type: project
+repopath: /frameworks/kitemmodels
diff --git a/projects-invent/frameworks/kitemviews/metadata.yaml b/projects-invent/frameworks/kitemviews/metadata.yaml
index e531e554..7b411f93 100644
--- a/projects-invent/frameworks/kitemviews/metadata.yaml
+++ b/projects-invent/frameworks/kitemviews/metadata.yaml
@@ -1,9 +1,7 @@
 description: KItemViews
 hasrepo: true
-icon: null
-members: []
+identifier: kitemviews
 name: KItemViews
 projectpath: frameworks/kitemviews
 repoactive: true
-repopath: kitemviews
-type: project
+repopath: /frameworks/kitemviews
diff --git a/projects-invent/frameworks/kjobwidgets/metadata.yaml b/projects-invent/frameworks/kjobwidgets/metadata.yaml
index 4b0ed8fd..45e2f449 100644
--- a/projects-invent/frameworks/kjobwidgets/metadata.yaml
+++ b/projects-invent/frameworks/kjobwidgets/metadata.yaml
@@ -1,9 +1,7 @@
 description: KJobWidgets
 hasrepo: true
-icon: null
-members: []
+identifier: kjobwidgets
 name: KJobWidgets
 projectpath: frameworks/kjobwidgets
 repoactive: true
-repopath: kjobwidgets
-type: project
+repopath: /frameworks/kjobwidgets
diff --git a/projects-invent/frameworks/kjs/metadata.yaml b/projects-invent/frameworks/kjs/metadata.yaml
index 128929da..a40028a2 100644
--- a/projects-invent/frameworks/kjs/metadata.yaml
+++ b/projects-invent/frameworks/kjs/metadata.yaml
@@ -1,9 +1,7 @@
 description: KJS
 hasrepo: true
-icon: null
-members: []
+identifier: kjs
 name: KJS
 projectpath: frameworks/kjs
 repoactive: true
-repopath: kjs
-type: project
+repopath: /frameworks/kjs
diff --git a/projects-invent/frameworks/kjsembed/metadata.yaml b/projects-invent/frameworks/kjsembed/metadata.yaml
index b6792463..6165ae2b 100644
--- a/projects-invent/frameworks/kjsembed/metadata.yaml
+++ b/projects-invent/frameworks/kjsembed/metadata.yaml
@@ -1,9 +1,7 @@
 description: KJSEmbed
 hasrepo: true
-icon: null
-members: []
+identifier: kjsembed
 name: KJSEmbed
 projectpath: frameworks/kjsembed
 repoactive: true
-repopath: kjsembed
-type: project
+repopath: /frameworks/kjsembed
diff --git a/projects-invent/frameworks/kmediaplayer/metadata.yaml b/projects-invent/frameworks/kmediaplayer/metadata.yaml
index db451041..58a82b4d 100644
--- a/projects-invent/frameworks/kmediaplayer/metadata.yaml
+++ b/projects-invent/frameworks/kmediaplayer/metadata.yaml
@@ -1,9 +1,7 @@
 description: KMediaPlayer
 hasrepo: true
-icon: null
-members: []
+identifier: kmediaplayer
 name: KMediaPlayer
 projectpath: frameworks/kmediaplayer
 repoactive: true
-repopath: kmediaplayer
-type: project
+repopath: /frameworks/kmediaplayer
diff --git a/projects-invent/frameworks/knewstuff/metadata.yaml b/projects-invent/frameworks/knewstuff/metadata.yaml
index f19b837a..a2dbe23b 100644
--- a/projects-invent/frameworks/knewstuff/metadata.yaml
+++ b/projects-invent/frameworks/knewstuff/metadata.yaml
@@ -1,11 +1,7 @@
 description: KNewStuff
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: knewstuff
 name: KNewStuff
 projectpath: frameworks/knewstuff
 repoactive: true
-repopath: knewstuff
-type: project
+repopath: /frameworks/knewstuff
diff --git a/projects-invent/frameworks/knotifications/metadata.yaml b/projects-invent/frameworks/knotifications/metadata.yaml
index 66705bb8..436c310e 100644
--- a/projects-invent/frameworks/knotifications/metadata.yaml
+++ b/projects-invent/frameworks/knotifications/metadata.yaml
@@ -1,9 +1,7 @@
 description: KNotifications
 hasrepo: true
-icon: null
-members: []
+identifier: knotifications
 name: KNotifications
 projectpath: frameworks/knotifications
 repoactive: true
-repopath: knotifications
-type: project
+repopath: /frameworks/knotifications
diff --git a/projects-invent/frameworks/knotifyconfig/metadata.yaml b/projects-invent/frameworks/knotifyconfig/metadata.yaml
index ff8d70b6..75edc1c0 100644
--- a/projects-invent/frameworks/knotifyconfig/metadata.yaml
+++ b/projects-invent/frameworks/knotifyconfig/metadata.yaml
@@ -1,9 +1,7 @@
 description: KNotifyConfig
 hasrepo: true
-icon: null
-members: []
+identifier: knotifyconfig
 name: KNotifyConfig
 projectpath: frameworks/knotifyconfig
 repoactive: true
-repopath: knotifyconfig
-type: project
+repopath: /frameworks/knotifyconfig
diff --git a/projects-invent/frameworks/kpackage/metadata.yaml b/projects-invent/frameworks/kpackage/metadata.yaml
index 257e785e..aa356b45 100644
--- a/projects-invent/frameworks/kpackage/metadata.yaml
+++ b/projects-invent/frameworks/kpackage/metadata.yaml
@@ -1,16 +1,8 @@
 description: This framework lets applications to manage user installable packages
   of non-binary assets
 hasrepo: true
-icon: package-applications
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Marco Martin
-  username: mart
+identifier: kpackage
 name: Package framework
 projectpath: frameworks/kpackage
 repoactive: true
-repopath: kpackage
-type: project
+repopath: /frameworks/kpackage
diff --git a/projects-invent/frameworks/kparts/metadata.yaml b/projects-invent/frameworks/kparts/metadata.yaml
index ec9be8bc..81653aa2 100644
--- a/projects-invent/frameworks/kparts/metadata.yaml
+++ b/projects-invent/frameworks/kparts/metadata.yaml
@@ -1,9 +1,7 @@
 description: KParts
 hasrepo: true
-icon: null
-members: []
+identifier: kparts
 name: KParts
 projectpath: frameworks/kparts
 repoactive: true
-repopath: kparts
-type: project
+repopath: /frameworks/kparts
diff --git a/projects-invent/frameworks/kpeople/metadata.yaml b/projects-invent/frameworks/kpeople/metadata.yaml
index 7f4ed4c8..be6f5def 100644
--- a/projects-invent/frameworks/kpeople/metadata.yaml
+++ b/projects-invent/frameworks/kpeople/metadata.yaml
@@ -1,16 +1,8 @@
 description: A library that provides access to all contacts and the people who hold
   them
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kpeople
 name: KPeople
 projectpath: frameworks/kpeople
 repoactive: true
-repopath: kpeople
-type: project
+repopath: /frameworks/kpeople
diff --git a/projects-invent/frameworks/kplotting/metadata.yaml b/projects-invent/frameworks/kplotting/metadata.yaml
index 1b4ea142..999e7444 100644
--- a/projects-invent/frameworks/kplotting/metadata.yaml
+++ b/projects-invent/frameworks/kplotting/metadata.yaml
@@ -1,9 +1,7 @@
 description: KPlotting
 hasrepo: true
-icon: null
-members: []
+identifier: kplotting
 name: KPlotting
 projectpath: frameworks/kplotting
 repoactive: true
-repopath: kplotting
-type: project
+repopath: /frameworks/kplotting
diff --git a/projects-invent/frameworks/kpty/metadata.yaml b/projects-invent/frameworks/kpty/metadata.yaml
index 20351979..aa1bcb84 100644
--- a/projects-invent/frameworks/kpty/metadata.yaml
+++ b/projects-invent/frameworks/kpty/metadata.yaml
@@ -1,9 +1,7 @@
 description: KPty
 hasrepo: true
-icon: null
-members: []
+identifier: kpty
 name: KPty
 projectpath: frameworks/kpty
 repoactive: true
-repopath: kpty
-type: project
+repopath: /frameworks/kpty
diff --git a/projects-invent/frameworks/kquickcharts/metadata.yaml b/projects-invent/frameworks/kquickcharts/metadata.yaml
index 4a8e1b18..3bb87e21 100644
--- a/projects-invent/frameworks/kquickcharts/metadata.yaml
+++ b/projects-invent/frameworks/kquickcharts/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'A QtQuick plugin providing high-performance charts.'
+description: A QtQuick plugin providing high-performance charts.
 hasrepo: true
-icon: null
-members:
-- displayname: "Arjen Hiemstra"
-  username: ahiemstra
+identifier: kquickcharts
 name: Quick Charts
 projectpath: frameworks/kquickcharts
 repoactive: true
-repopath: kquickcharts
-type: project
+repopath: /frameworks/kquickcharts
diff --git a/projects-invent/frameworks/kross/metadata.yaml b/projects-invent/frameworks/kross/metadata.yaml
index 1891c7a6..d0a8d821 100644
--- a/projects-invent/frameworks/kross/metadata.yaml
+++ b/projects-invent/frameworks/kross/metadata.yaml
@@ -1,9 +1,7 @@
 description: Kross
 hasrepo: true
-icon: null
-members: []
+identifier: kross
 name: Kross
 projectpath: frameworks/kross
 repoactive: true
-repopath: kross
-type: project
+repopath: /frameworks/kross
diff --git a/projects-invent/frameworks/krunner/metadata.yaml b/projects-invent/frameworks/krunner/metadata.yaml
index 06e9bd9c..09783fac 100644
--- a/projects-invent/frameworks/krunner/metadata.yaml
+++ b/projects-invent/frameworks/krunner/metadata.yaml
@@ -1,13 +1,7 @@
 description: Framework for providing different actions given a string query.
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: krunner
 name: KRunner
 projectpath: frameworks/krunner
 repoactive: true
-repopath: krunner
-type: project
+repopath: /frameworks/krunner
diff --git a/projects-invent/frameworks/kservice/metadata.yaml b/projects-invent/frameworks/kservice/metadata.yaml
index b46f8012..c7a86eac 100644
--- a/projects-invent/frameworks/kservice/metadata.yaml
+++ b/projects-invent/frameworks/kservice/metadata.yaml
@@ -1,9 +1,7 @@
 description: KService
 hasrepo: true
-icon: null
-members: []
+identifier: kservice
 name: KService
 projectpath: frameworks/kservice
 repoactive: true
-repopath: kservice
-type: project
+repopath: /frameworks/kservice
diff --git a/projects-invent/frameworks/ktexteditor/metadata.yaml b/projects-invent/frameworks/ktexteditor/metadata.yaml
index 15101a55..ddf5938f 100644
--- a/projects-invent/frameworks/ktexteditor/metadata.yaml
+++ b/projects-invent/frameworks/ktexteditor/metadata.yaml
@@ -1,11 +1,7 @@
 description: KTextEditor Framework
 hasrepo: true
-icon: null
-members:
-- displayname: Christoph Cullmann
-  username: cullmann
+identifier: ktexteditor
 name: KTextEditor
 projectpath: frameworks/ktexteditor
 repoactive: true
-repopath: ktexteditor
-type: project
+repopath: /frameworks/ktexteditor
diff --git a/projects-invent/frameworks/ktextwidgets/metadata.yaml b/projects-invent/frameworks/ktextwidgets/metadata.yaml
index 5e7831c5..ca383b14 100644
--- a/projects-invent/frameworks/ktextwidgets/metadata.yaml
+++ b/projects-invent/frameworks/ktextwidgets/metadata.yaml
@@ -1,9 +1,7 @@
 description: KTextWidgets
 hasrepo: true
-icon: null
-members: []
+identifier: ktextwidgets
 name: KTextWidgets
 projectpath: frameworks/ktextwidgets
 repoactive: true
-repopath: ktextwidgets
-type: project
+repopath: /frameworks/ktextwidgets
diff --git a/projects-invent/frameworks/kunitconversion/metadata.yaml b/projects-invent/frameworks/kunitconversion/metadata.yaml
index b1de047e..9932aca0 100644
--- a/projects-invent/frameworks/kunitconversion/metadata.yaml
+++ b/projects-invent/frameworks/kunitconversion/metadata.yaml
@@ -1,9 +1,7 @@
 description: KUnitConversion
 hasrepo: true
-icon: null
-members: []
+identifier: kunitconversion
 name: KUnitConversion
 projectpath: frameworks/kunitconversion
 repoactive: true
-repopath: kunitconversion
-type: project
+repopath: /frameworks/kunitconversion
diff --git a/projects-invent/frameworks/kwallet/metadata.yaml b/projects-invent/frameworks/kwallet/metadata.yaml
index 9c7e52f2..2946b5fe 100644
--- a/projects-invent/frameworks/kwallet/metadata.yaml
+++ b/projects-invent/frameworks/kwallet/metadata.yaml
@@ -1,9 +1,7 @@
 description: 'KWallet: Credential Storage'
 hasrepo: true
-icon: null
-members: []
+identifier: kwallet
 name: KWallet Framework
 projectpath: frameworks/kwallet
 repoactive: true
-repopath: kwallet
-type: project
+repopath: /frameworks/kwallet
diff --git a/projects-invent/frameworks/kwayland/metadata.yaml b/projects-invent/frameworks/kwayland/metadata.yaml
index 9b534c87..fd57e3b0 100644
--- a/projects-invent/frameworks/kwayland/metadata.yaml
+++ b/projects-invent/frameworks/kwayland/metadata.yaml
@@ -1,14 +1,8 @@
 description: KWayland provides a Qt-style Client and Server library wrapper for the
   Wayland libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: kwayland
 name: KWayland
 projectpath: frameworks/kwayland
 repoactive: true
-repopath: kwayland
-type: project
+repopath: /frameworks/kwayland
diff --git a/projects-invent/frameworks/kwidgetsaddons/metadata.yaml b/projects-invent/frameworks/kwidgetsaddons/metadata.yaml
index 93ec965e..3e8bff8c 100644
--- a/projects-invent/frameworks/kwidgetsaddons/metadata.yaml
+++ b/projects-invent/frameworks/kwidgetsaddons/metadata.yaml
@@ -1,9 +1,7 @@
 description: KWidgetsAddons
 hasrepo: true
-icon: null
-members: []
+identifier: kwidgetsaddons
 name: KWidgetsAddons
 projectpath: frameworks/kwidgetsaddons
 repoactive: true
-repopath: kwidgetsaddons
-type: project
+repopath: /frameworks/kwidgetsaddons
diff --git a/projects-invent/frameworks/kwindowsystem/metadata.yaml b/projects-invent/frameworks/kwindowsystem/metadata.yaml
index 960826fa..9d0019a9 100644
--- a/projects-invent/frameworks/kwindowsystem/metadata.yaml
+++ b/projects-invent/frameworks/kwindowsystem/metadata.yaml
@@ -1,9 +1,7 @@
 description: KWindowSystem
 hasrepo: true
-icon: null
-members: []
+identifier: kwindowsystem
 name: KWindowSystem
 projectpath: frameworks/kwindowsystem
 repoactive: true
-repopath: kwindowsystem
-type: project
+repopath: /frameworks/kwindowsystem
diff --git a/projects-invent/frameworks/kxmlgui/metadata.yaml b/projects-invent/frameworks/kxmlgui/metadata.yaml
index 1822b71b..75e0eb5b 100644
--- a/projects-invent/frameworks/kxmlgui/metadata.yaml
+++ b/projects-invent/frameworks/kxmlgui/metadata.yaml
@@ -1,9 +1,7 @@
 description: KXMLGUI
 hasrepo: true
-icon: null
-members: []
+identifier: kxmlgui
 name: KXMLGUI
 projectpath: frameworks/kxmlgui
 repoactive: true
-repopath: kxmlgui
-type: project
+repopath: /frameworks/kxmlgui
diff --git a/projects-invent/frameworks/kxmlrpcclient/metadata.yaml b/projects-invent/frameworks/kxmlrpcclient/metadata.yaml
index a612123b..fa35cb49 100644
--- a/projects-invent/frameworks/kxmlrpcclient/metadata.yaml
+++ b/projects-invent/frameworks/kxmlrpcclient/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'KXMLRPCClient - Library to assist working with XML-RPC APIs'
+description: KXMLRPCClient - Library to assist working with XML-RPC APIs
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kxmlrpcclient
 name: kxmlrpcclient
 projectpath: frameworks/kxmlrpcclient
 repoactive: true
-repopath: kxmlrpcclient
-type: project
+repopath: /frameworks/kxmlrpcclient
diff --git a/projects-invent/frameworks/metadata.yaml b/projects-invent/frameworks/metadata.yaml
index 6a4e3f16..5f16047c 100644
--- a/projects-invent/frameworks/metadata.yaml
+++ b/projects-invent/frameworks/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Frameworks
 projectpath: frameworks
 repoactive: false
-repopath: null
-type: component
+repopath: /frameworks
diff --git a/projects-invent/frameworks/modemmanager-qt/metadata.yaml b/projects-invent/frameworks/modemmanager-qt/metadata.yaml
index b94128e0..54a34696 100644
--- a/projects-invent/frameworks/modemmanager-qt/metadata.yaml
+++ b/projects-invent/frameworks/modemmanager-qt/metadata.yaml
@@ -3,20 +3,8 @@ description: 'Qt wrapper for ModemManager DBus API.
 
   Report bugs in bugs.kde.org, under product frameworks-modemmanager-qt.'
 hasrepo: true
-icon: null
-members:
-- displayname: Lamarque Souza
-  username: lvsouza
-- displayname: Ilia Kats
-  username: iliakats
-- displayname: Will Stephenson
-  username: wstephens
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Jan Grulich
-  username: grulich
+identifier: modemmanager-qt
 name: ModemManagerQt
 projectpath: frameworks/modemmanager-qt
 repoactive: true
-repopath: modemmanager-qt
-type: project
+repopath: /frameworks/modemmanager-qt
diff --git a/projects-invent/frameworks/networkmanager-qt/metadata.yaml b/projects-invent/frameworks/networkmanager-qt/metadata.yaml
index 2fffa2f0..ca5856d9 100644
--- a/projects-invent/frameworks/networkmanager-qt/metadata.yaml
+++ b/projects-invent/frameworks/networkmanager-qt/metadata.yaml
@@ -3,20 +3,8 @@ description: 'Qt wrapper for NetworkManager API.
 
   Report bugs in bugs.kde.org, under product frameworks-networkmanager-qt.'
 hasrepo: true
-icon: null
-members:
-- displayname: Lamarque Souza
-  username: lvsouza
-- displayname: Ilia Kats
-  username: iliakats
-- displayname: Will Stephenson
-  username: wstephens
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Jan Grulich
-  username: grulich
+identifier: networkmanager-qt
 name: NetworkManagerQt
 projectpath: frameworks/networkmanager-qt
 repoactive: true
-repopath: networkmanager-qt
-type: project
+repopath: /frameworks/networkmanager-qt
diff --git a/projects-invent/frameworks/oxygen-icons5/metadata.yaml b/projects-invent/frameworks/oxygen-icons5/metadata.yaml
index 09124558..539cb838 100644
--- a/projects-invent/frameworks/oxygen-icons5/metadata.yaml
+++ b/projects-invent/frameworks/oxygen-icons5/metadata.yaml
@@ -1,15 +1,7 @@
 description: Oxygen icon theme
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: andreas kainz
-  username: andreask
-- displayname: Harald Sitter
-  username: sitter
+identifier: oxygen-icons5
 name: Oxygen Icons
 projectpath: frameworks/oxygen-icons5
 repoactive: true
-repopath: oxygen-icons5
-type: project
+repopath: /frameworks/oxygen-icons5
diff --git a/projects-invent/frameworks/plasma-framework/metadata.yaml b/projects-invent/frameworks/plasma-framework/metadata.yaml
index e33f1550..695dca99 100644
--- a/projects-invent/frameworks/plasma-framework/metadata.yaml
+++ b/projects-invent/frameworks/plasma-framework/metadata.yaml
@@ -1,15 +1,7 @@
 description: Plasma library and runtime components based upon KF5 and Qt5
 hasrepo: true
-icon: null
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: Marco Martin
-  username: mart
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: plasma-framework
 name: KDE Plasma Framework
 projectpath: frameworks/plasma-framework
 repoactive: true
-repopath: plasma-framework
-type: project
+repopath: /frameworks/plasma-framework
diff --git a/projects-invent/frameworks/prison/metadata.yaml b/projects-invent/frameworks/prison/metadata.yaml
index a9676f1d..69eec7fd 100644
--- a/projects-invent/frameworks/prison/metadata.yaml
+++ b/projects-invent/frameworks/prison/metadata.yaml
@@ -1,12 +1,8 @@
 description: prison is a barcode api currently offering a nice Qt api to produce QRCode
   barcodes and DataMatrix barcodes, and can easily be made support more.
 hasrepo: true
-icon: null
-members:
-- displayname: Sune Vuorela
-  username: sune
+identifier: prison
 name: Barcode library
 projectpath: frameworks/prison
 repoactive: true
-repopath: prison
-type: module
+repopath: /frameworks/prison
diff --git a/projects-invent/frameworks/purpose/metadata.yaml b/projects-invent/frameworks/purpose/metadata.yaml
index 134e2d0f..f8d57652 100644
--- a/projects-invent/frameworks/purpose/metadata.yaml
+++ b/projects-invent/frameworks/purpose/metadata.yaml
@@ -1,12 +1,8 @@
 description: Framework for providing abstractions to get the developer's purposes
   fulfilled.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: purpose
 name: Purpose framework
 projectpath: frameworks/purpose
 repoactive: true
-repopath: purpose
-type: project
+repopath: /frameworks/purpose
diff --git a/projects-invent/frameworks/qqc2-desktop-style/metadata.yaml b/projects-invent/frameworks/qqc2-desktop-style/metadata.yaml
index caa225c7..ed67be57 100644
--- a/projects-invent/frameworks/qqc2-desktop-style/metadata.yaml
+++ b/projects-invent/frameworks/qqc2-desktop-style/metadata.yaml
@@ -1,11 +1,7 @@
-description: "Qt Quick Controls 2: Desktop Style"
+description: 'Qt Quick Controls 2: Desktop Style'
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: qqc2-desktop-style
 name: QQC2 Desktop Style
 projectpath: frameworks/qqc2-desktop-style
 repoactive: true
-repopath: qqc2-desktop-style
-type: project
+repopath: /frameworks/qqc2-desktop-style
diff --git a/projects-invent/frameworks/solid/metadata.yaml b/projects-invent/frameworks/solid/metadata.yaml
index 8f7b7482..ffddd876 100644
--- a/projects-invent/frameworks/solid/metadata.yaml
+++ b/projects-invent/frameworks/solid/metadata.yaml
@@ -1,9 +1,7 @@
 description: Solid
 hasrepo: true
-icon: null
-members: []
+identifier: solid
 name: Solid
 projectpath: frameworks/solid
 repoactive: true
-repopath: solid
-type: project
+repopath: /frameworks/solid
diff --git a/projects-invent/frameworks/sonnet/metadata.yaml b/projects-invent/frameworks/sonnet/metadata.yaml
index cf2cf510..42e5e10f 100644
--- a/projects-invent/frameworks/sonnet/metadata.yaml
+++ b/projects-invent/frameworks/sonnet/metadata.yaml
@@ -12,12 +12,8 @@ description: 'Spelling framework for Qt.
 
   "Documentation":https://api.kde.org/frameworks-api/frameworks5-apidocs/sonnet/html/index.html'
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: sonnet
 name: Sonnet
 projectpath: frameworks/sonnet
 repoactive: true
-repopath: sonnet
-type: project
+repopath: /frameworks/sonnet
diff --git a/projects-invent/frameworks/syndication/metadata.yaml b/projects-invent/frameworks/syndication/metadata.yaml
index 65f8b4d2..89161f20 100644
--- a/projects-invent/frameworks/syndication/metadata.yaml
+++ b/projects-invent/frameworks/syndication/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Syndication Library'
+description: Syndication Library
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: syndication
 name: syndication
 projectpath: frameworks/syndication
 repoactive: true
-repopath: syndication
-type: project
+repopath: /frameworks/syndication
diff --git a/projects-invent/frameworks/syntax-highlighting/metadata.yaml b/projects-invent/frameworks/syntax-highlighting/metadata.yaml
index 29c941c3..8da8c330 100644
--- a/projects-invent/frameworks/syntax-highlighting/metadata.yaml
+++ b/projects-invent/frameworks/syntax-highlighting/metadata.yaml
@@ -1,9 +1,7 @@
 description: Syntax highlighting Engine for Structured Text and Code.
 hasrepo: true
-icon: null
-members: []
+identifier: syntax-highlighting
 name: Syntax Highlighting Engine
 projectpath: frameworks/syntax-highlighting
 repoactive: true
-repopath: syntax-highlighting
-type: project
+repopath: /frameworks/syntax-highlighting
diff --git a/projects-invent/frameworks/threadweaver/metadata.yaml b/projects-invent/frameworks/threadweaver/metadata.yaml
index 837e03a6..4eb92684 100644
--- a/projects-invent/frameworks/threadweaver/metadata.yaml
+++ b/projects-invent/frameworks/threadweaver/metadata.yaml
@@ -1,11 +1,7 @@
 description: ThreadWeaver
 hasrepo: true
-icon: null
-members:
-- displayname: Mirko Boehm
-  username: mirko
+identifier: threadweaver
 name: ThreadWeaver
 projectpath: frameworks/threadweaver
 repoactive: true
-repopath: threadweaver
-type: project
+repopath: /frameworks/threadweaver
diff --git a/projects-invent/games/amor/metadata.yaml b/projects-invent/games/amor/metadata.yaml
index a8ab881b..6f8c1138 100644
--- a/projects-invent/games/amor/metadata.yaml
+++ b/projects-invent/games/amor/metadata.yaml
@@ -1,12 +1,8 @@
 description: Amusing Misuse of Resources animation that sits on top of the curent
   window.
 hasrepo: true
-icon: null
-members:
-- displayname: Stefan Yohansson Areeira Pinto
-  username: stefanyohansson
+identifier: amor
 name: Amor
 projectpath: playground/games/amor
 repoactive: true
-repopath: amor
-type: project
+repopath: /games/amor
diff --git a/projects-invent/games/atlantik/metadata.yaml b/projects-invent/games/atlantik/metadata.yaml
index 9b21dff7..29150e9e 100644
--- a/projects-invent/games/atlantik/metadata.yaml
+++ b/projects-invent/games/atlantik/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Atlantik Game'
+description: Atlantik Game
 hasrepo: true
-icon: null
-members:
-- displayname: Pino Toscano
-  username: pino
+identifier: atlantik
 name: Atlantik
 projectpath: playground/games/atlantik
 repoactive: true
-repopath: atlantik
-type: project
+repopath: /games/atlantik
diff --git a/projects-invent/games/bomber/metadata.yaml b/projects-invent/games/bomber/metadata.yaml
index 534eb480..e71d2028 100644
--- a/projects-invent/games/bomber/metadata.yaml
+++ b/projects-invent/games/bomber/metadata.yaml
@@ -1,13 +1,7 @@
 description: Bomber is a single player arcade game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: bomber
 name: Bomber
 projectpath: kde/kdegames/bomber
 repoactive: true
-repopath: bomber
-type: project
+repopath: /games/bomber
diff --git a/projects-invent/games/bovo/metadata.yaml b/projects-invent/games/bovo/metadata.yaml
index f11dce55..a07decfb 100644
--- a/projects-invent/games/bovo/metadata.yaml
+++ b/projects-invent/games/bovo/metadata.yaml
@@ -1,13 +1,7 @@
 description: Bovo is a Gomoku like game for two players
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: bovo
 name: Bovo
 projectpath: kde/kdegames/bovo
 repoactive: true
-repopath: bovo
-type: project
+repopath: /games/bovo
diff --git a/projects-invent/games/granatier/metadata.yaml b/projects-invent/games/granatier/metadata.yaml
index 63bdb19d..ca63e989 100644
--- a/projects-invent/games/granatier/metadata.yaml
+++ b/projects-invent/games/granatier/metadata.yaml
@@ -1,15 +1,7 @@
 description: Granatier is a clone of the classic Bomberman game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Mathias Kraus
-  username: mkraus
+identifier: granatier
 name: Granatier
 projectpath: kde/kdegames/granatier
 repoactive: true
-repopath: granatier
-type: project
+repopath: /games/granatier
diff --git a/projects-invent/games/kajongg/metadata.yaml b/projects-invent/games/kajongg/metadata.yaml
index 6a0b881b..5ec975d0 100644
--- a/projects-invent/games/kajongg/metadata.yaml
+++ b/projects-invent/games/kajongg/metadata.yaml
@@ -1,13 +1,7 @@
 description: Mah Jongg - the ancient Chinese board game for 4 players
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kajongg
 name: Kajongg
 projectpath: kde/kdegames/kajongg
 repoactive: true
-repopath: kajongg
-type: project
+repopath: /games/kajongg
diff --git a/projects-invent/games/kapman/metadata.yaml b/projects-invent/games/kapman/metadata.yaml
index 9f1fcbd7..1822a4fb 100644
--- a/projects-invent/games/kapman/metadata.yaml
+++ b/projects-invent/games/kapman/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kapman is a clone of the well known game Pac-Man
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kapman
 name: Kapman
 projectpath: kde/kdegames/kapman
 repoactive: true
-repopath: kapman
-type: project
+repopath: /games/kapman
diff --git a/projects-invent/games/katomic/metadata.yaml b/projects-invent/games/katomic/metadata.yaml
index 3075f852..f6875cb2 100644
--- a/projects-invent/games/katomic/metadata.yaml
+++ b/projects-invent/games/katomic/metadata.yaml
@@ -1,13 +1,7 @@
 description: Katomic is a fun and educational game built around molecular geometry
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: katomic
 name: Katomic
 projectpath: kde/kdegames/katomic
 repoactive: true
-repopath: katomic
-type: project
+repopath: /games/katomic
diff --git a/projects-invent/games/kblackbox/metadata.yaml b/projects-invent/games/kblackbox/metadata.yaml
index d1076b5c..05fa630d 100644
--- a/projects-invent/games/kblackbox/metadata.yaml
+++ b/projects-invent/games/kblackbox/metadata.yaml
@@ -1,13 +1,7 @@
 description: KBlackBox is a game of hide and seek played on a grid of boxes
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kblackbox
 name: KBlackBox
 projectpath: kde/kdegames/kblackbox
 repoactive: true
-repopath: kblackbox
-type: project
+repopath: /games/kblackbox
diff --git a/projects-invent/games/kblocks/metadata.yaml b/projects-invent/games/kblocks/metadata.yaml
index 3f9e2dc5..9bc46f18 100644
--- a/projects-invent/games/kblocks/metadata.yaml
+++ b/projects-invent/games/kblocks/metadata.yaml
@@ -1,13 +1,7 @@
 description: KBlocks is the classic falling blocks game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kblocks
 name: KBlocks
 projectpath: kde/kdegames/kblocks
 repoactive: true
-repopath: kblocks
-type: project
+repopath: /games/kblocks
diff --git a/projects-invent/games/kbounce/metadata.yaml b/projects-invent/games/kbounce/metadata.yaml
index ae1059a9..ab019046 100644
--- a/projects-invent/games/kbounce/metadata.yaml
+++ b/projects-invent/games/kbounce/metadata.yaml
@@ -1,15 +1,7 @@
 description: KBounce is a single player arcade game with the elements of puzzle
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Roney Gomes
-  username: roneygomes
+identifier: kbounce
 name: KBounce
 projectpath: kde/kdegames/kbounce
 repoactive: true
-repopath: kbounce
-type: project
+repopath: /games/kbounce
diff --git a/projects-invent/games/kbreakout/metadata.yaml b/projects-invent/games/kbreakout/metadata.yaml
index f0ac906b..77044dc7 100644
--- a/projects-invent/games/kbreakout/metadata.yaml
+++ b/projects-invent/games/kbreakout/metadata.yaml
@@ -1,16 +1,8 @@
 description: KBreakout is a Breakout-like game. Its objective is to destroy as many
   bricks as possible without losing the ball.
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Viranch Mehta
-  username: viranch
+identifier: kbreakout
 name: KBreakOut
 projectpath: kde/kdegames/kbreakout
 repoactive: true
-repopath: kbreakout
-type: project
+repopath: /games/kbreakout
diff --git a/projects-invent/games/kdiamond/metadata.yaml b/projects-invent/games/kdiamond/metadata.yaml
index 25196d4a..23b2ce39 100644
--- a/projects-invent/games/kdiamond/metadata.yaml
+++ b/projects-invent/games/kdiamond/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDiamond is a single player puzzle game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kdiamond
 name: KDiamond
 projectpath: kde/kdegames/kdiamond
 repoactive: true
-repopath: kdiamond
-type: project
+repopath: /games/kdiamond
diff --git a/projects-invent/games/kfourinline/metadata.yaml b/projects-invent/games/kfourinline/metadata.yaml
index d4738ba5..9f0f324b 100644
--- a/projects-invent/games/kfourinline/metadata.yaml
+++ b/projects-invent/games/kfourinline/metadata.yaml
@@ -1,13 +1,7 @@
 description: KFourInLine is a four-in-a-row game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kfourinline
 name: KFourInLine
 projectpath: kde/kdegames/kfourinline
 repoactive: true
-repopath: kfourinline
-type: project
+repopath: /games/kfourinline
diff --git a/projects-invent/games/kgoldrunner/metadata.yaml b/projects-invent/games/kgoldrunner/metadata.yaml
index 61099c88..fa9683c7 100644
--- a/projects-invent/games/kgoldrunner/metadata.yaml
+++ b/projects-invent/games/kgoldrunner/metadata.yaml
@@ -1,13 +1,7 @@
 description: KGoldrunner is a game of action and puzzle solving
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kgoldrunner
 name: KGoldrunner
 projectpath: kde/kdegames/kgoldrunner
 repoactive: true
-repopath: kgoldrunner
-type: project
+repopath: /games/kgoldrunner
diff --git a/projects-invent/games/kigo/metadata.yaml b/projects-invent/games/kigo/metadata.yaml
index e7bda9dc..36e46efc 100644
--- a/projects-invent/games/kigo/metadata.yaml
+++ b/projects-invent/games/kigo/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kigo is an open-source implementation of the popular Go game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kigo
 name: Kigo
 projectpath: kde/kdegames/kigo
 repoactive: true
-repopath: kigo
-type: project
+repopath: /games/kigo
diff --git a/projects-invent/games/killbots/metadata.yaml b/projects-invent/games/killbots/metadata.yaml
index f1abe354..09be7c47 100644
--- a/projects-invent/games/killbots/metadata.yaml
+++ b/projects-invent/games/killbots/metadata.yaml
@@ -1,15 +1,7 @@
 description: Killbots is a simple game of evading killer robots
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Parker Coates
-  username: coates
+identifier: killbots
 name: Killbots
 projectpath: kde/kdegames/killbots
 repoactive: true
-repopath: killbots
-type: project
+repopath: /games/killbots
diff --git a/projects-invent/games/kiriki/metadata.yaml b/projects-invent/games/kiriki/metadata.yaml
index b75d15cb..5a3c79a4 100644
--- a/projects-invent/games/kiriki/metadata.yaml
+++ b/projects-invent/games/kiriki/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kiriki is an addictive and fun dice game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kiriki
 name: Kiriki
 projectpath: kde/kdegames/kiriki
 repoactive: true
-repopath: kiriki
-type: project
+repopath: /games/kiriki
diff --git a/projects-invent/games/kjumpingcube/metadata.yaml b/projects-invent/games/kjumpingcube/metadata.yaml
index cf2e9d47..ff4218da 100644
--- a/projects-invent/games/kjumpingcube/metadata.yaml
+++ b/projects-invent/games/kjumpingcube/metadata.yaml
@@ -1,13 +1,7 @@
 description: KJumpingCube is a simple tactical game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kjumpingcube
 name: KJumpingCube
 projectpath: kde/kdegames/kjumpingcube
 repoactive: true
-repopath: kjumpingcube
-type: project
+repopath: /games/kjumpingcube
diff --git a/projects-invent/games/klickety/metadata.yaml b/projects-invent/games/klickety/metadata.yaml
index 798ae441..aff6b36d 100644
--- a/projects-invent/games/klickety/metadata.yaml
+++ b/projects-invent/games/klickety/metadata.yaml
@@ -1,13 +1,7 @@
 description: Klickety is an adaptation of the Clickomania game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: klickety
 name: Klickety
 projectpath: kde/kdegames/klickety
 repoactive: true
-repopath: klickety
-type: project
+repopath: /games/klickety
diff --git a/projects-invent/games/klines/metadata.yaml b/projects-invent/games/klines/metadata.yaml
index 88721c70..38607027 100644
--- a/projects-invent/games/klines/metadata.yaml
+++ b/projects-invent/games/klines/metadata.yaml
@@ -1,13 +1,7 @@
 description: KLines is a simple but highly addictive, one player game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: klines
 name: KLines
 projectpath: kde/kdegames/klines
 repoactive: true
-repopath: klines
-type: project
+repopath: /games/klines
diff --git a/projects-invent/games/kmahjongg/metadata.yaml b/projects-invent/games/kmahjongg/metadata.yaml
index b76e45d8..4a1070d7 100644
--- a/projects-invent/games/kmahjongg/metadata.yaml
+++ b/projects-invent/games/kmahjongg/metadata.yaml
@@ -1,15 +1,7 @@
 description: KMahjongg is a tile matching game for one or two players
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Christian Krippendorf
-  username: krippendorf
+identifier: kmahjongg
 name: KMahjongg
 projectpath: kde/kdegames/kmahjongg
 repoactive: true
-repopath: kmahjongg
-type: project
+repopath: /games/kmahjongg
diff --git a/projects-invent/games/kmines/metadata.yaml b/projects-invent/games/kmines/metadata.yaml
index 4b44da60..3e468dd2 100644
--- a/projects-invent/games/kmines/metadata.yaml
+++ b/projects-invent/games/kmines/metadata.yaml
@@ -1,13 +1,7 @@
 description: KMines is the classic Minesweeper game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kmines
 name: KMines
 projectpath: kde/kdegames/kmines
 repoactive: true
-repopath: kmines
-type: project
+repopath: /games/kmines
diff --git a/projects-invent/games/kmuddy/metadata.yaml b/projects-invent/games/kmuddy/metadata.yaml
index ff0118e0..ef0d5f0b 100644
--- a/projects-invent/games/kmuddy/metadata.yaml
+++ b/projects-invent/games/kmuddy/metadata.yaml
@@ -1,11 +1,7 @@
 description: A MUD (Multi-User Dungeon) client by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Tomas Mecir
-  username: mecir
+identifier: kmuddy
 name: KMuddy
 projectpath: playground/games/kmuddy
 repoactive: true
-repopath: kmuddy
-type: project
+repopath: /games/kmuddy
diff --git a/projects-invent/games/knavalbattle/metadata.yaml b/projects-invent/games/knavalbattle/metadata.yaml
index bbd005c4..6d072086 100644
--- a/projects-invent/games/knavalbattle/metadata.yaml
+++ b/projects-invent/games/knavalbattle/metadata.yaml
@@ -1,15 +1,7 @@
 description: Naval Battle is a ship sinking game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Roney Gomes
-  username: roneygomes
+identifier: knavalbattle
 name: KNavalBattle
 projectpath: kde/kdegames/knavalbattle
 repoactive: true
-repopath: knavalbattle
-type: project
+repopath: /games/knavalbattle
diff --git a/projects-invent/games/knetwalk/metadata.yaml b/projects-invent/games/knetwalk/metadata.yaml
index 2ba61168..003544ce 100644
--- a/projects-invent/games/knetwalk/metadata.yaml
+++ b/projects-invent/games/knetwalk/metadata.yaml
@@ -1,16 +1,8 @@
 description: 'KNetWalk: connect all the terminals to the server, in as few turns as
   possible'
 hasrepo: true
-icon: null
-members:
-- displayname: Ashwin Rajeev
-  username: rajeev
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: knetwalk
 name: KNetWalk
 projectpath: kde/kdegames/knetwalk
 repoactive: true
-repopath: knetwalk
-type: project
+repopath: /games/knetwalk
diff --git a/projects-invent/games/knights/metadata.yaml b/projects-invent/games/knights/metadata.yaml
index 853307e9..5a58b587 100644
--- a/projects-invent/games/knights/metadata.yaml
+++ b/projects-invent/games/knights/metadata.yaml
@@ -1,13 +1,7 @@
 description: Chess board program.
 hasrepo: true
-icon: knights
-members:
-- displayname: Alexander Semke
-  username: asemke
-- displayname: "Miha \u010Can\u010Dula"
-  username: mihac
+identifier: knights
 name: Knights
 projectpath: kde/kdegames/knights
 repoactive: true
-repopath: knights
-type: project
+repopath: /games/knights
diff --git a/projects-invent/games/kolf/metadata.yaml b/projects-invent/games/kolf/metadata.yaml
index 4481b2e3..d60230e3 100644
--- a/projects-invent/games/kolf/metadata.yaml
+++ b/projects-invent/games/kolf/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kolf is a miniature golf game with 2d top-down view
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kolf
 name: Kolf
 projectpath: kde/kdegames/kolf
 repoactive: true
-repopath: kolf
-type: project
+repopath: /games/kolf
diff --git a/projects-invent/games/kollision/metadata.yaml b/projects-invent/games/kollision/metadata.yaml
index df760549..0819820e 100644
--- a/projects-invent/games/kollision/metadata.yaml
+++ b/projects-invent/games/kollision/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kollision is a simple ball dodging game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kollision
 name: Kollision
 projectpath: kde/kdegames/kollision
 repoactive: true
-repopath: kollision
-type: project
+repopath: /games/kollision
diff --git a/projects-invent/games/kolorfill/metadata.yaml b/projects-invent/games/kolorfill/metadata.yaml
index c4d4ff93..d2a6b849 100644
--- a/projects-invent/games/kolorfill/metadata.yaml
+++ b/projects-invent/games/kolorfill/metadata.yaml
@@ -1,11 +1,7 @@
 description: Simple flood fill game
 hasrepo: true
-icon: null
-members:
-- displayname: Sune Vuorela
-  username: sune
+identifier: kolorfill
 name: Kolorfill
 projectpath: playground/base/kolorfill
 repoactive: true
-repopath: kolorfill
-type: module
+repopath: /games/kolorfill
diff --git a/projects-invent/games/konquest/metadata.yaml b/projects-invent/games/konquest/metadata.yaml
index ef640f99..e181cc7b 100644
--- a/projects-invent/games/konquest/metadata.yaml
+++ b/projects-invent/games/konquest/metadata.yaml
@@ -1,13 +1,7 @@
 description: Konquest is the KDE version of Gnu-Lactic
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: konquest
 name: Konquest
 projectpath: kde/kdegames/konquest
 repoactive: true
-repopath: konquest
-type: project
+repopath: /games/konquest
diff --git a/projects-invent/games/kpat/metadata.yaml b/projects-invent/games/kpat/metadata.yaml
index 60f1e6a3..bd6b8cd4 100644
--- a/projects-invent/games/kpat/metadata.yaml
+++ b/projects-invent/games/kpat/metadata.yaml
@@ -1,15 +1,7 @@
 description: KPatience offers a selection of solitaire card games
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Parker Coates
-  username: coates
+identifier: kpat
 name: KPat
 projectpath: kde/kdegames/kpat
 repoactive: true
-repopath: kpat
-type: project
+repopath: /games/kpat
diff --git a/projects-invent/games/kreversi/metadata.yaml b/projects-invent/games/kreversi/metadata.yaml
index f3cff119..c160d6e3 100644
--- a/projects-invent/games/kreversi/metadata.yaml
+++ b/projects-invent/games/kreversi/metadata.yaml
@@ -1,13 +1,7 @@
 description: KReversi is is a simple one player strategy game played against the computer
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kreversi
 name: KReversi
 projectpath: kde/kdegames/kreversi
 repoactive: true
-repopath: kreversi
-type: project
+repopath: /games/kreversi
diff --git a/projects-invent/games/kshisen/metadata.yaml b/projects-invent/games/kshisen/metadata.yaml
index df3d4e13..afea3dae 100644
--- a/projects-invent/games/kshisen/metadata.yaml
+++ b/projects-invent/games/kshisen/metadata.yaml
@@ -1,16 +1,8 @@
 description: Shisen-Sho is a solitaire-like game played using the standard set of
   Mahjong tiles
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Frederik Schwarzer
-  username: schwarzer
+identifier: kshisen
 name: KShisen
 projectpath: kde/kdegames/kshisen
 repoactive: true
-repopath: kshisen
-type: project
+repopath: /games/kshisen
diff --git a/projects-invent/games/ksirk/metadata.yaml b/projects-invent/games/ksirk/metadata.yaml
index 4149a301..01cfb728 100644
--- a/projects-invent/games/ksirk/metadata.yaml
+++ b/projects-invent/games/ksirk/metadata.yaml
@@ -1,15 +1,7 @@
 description: KsirK is a computerized version of a well known strategy game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: "Ga\xEBl de Chalendar"
-  username: kleag
+identifier: ksirk
 name: KsirK
 projectpath: kde/kdegames/ksirk
 repoactive: true
-repopath: ksirk
-type: project
+repopath: /games/ksirk
diff --git a/projects-invent/games/ksnakeduel/metadata.yaml b/projects-invent/games/ksnakeduel/metadata.yaml
index 5dc8155b..d63e1d69 100644
--- a/projects-invent/games/ksnakeduel/metadata.yaml
+++ b/projects-invent/games/ksnakeduel/metadata.yaml
@@ -1,13 +1,7 @@
 description: KSnakeDuel is a simple snake duel game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: ksnakeduel
 name: KSnakeDuel
 projectpath: kde/kdegames/ksnakeduel
 repoactive: true
-repopath: ksnakeduel
-type: project
+repopath: /games/ksnakeduel
diff --git a/projects-invent/games/ksokoban/metadata.yaml b/projects-invent/games/ksokoban/metadata.yaml
index 15b46874..ece6ca39 100644
--- a/projects-invent/games/ksokoban/metadata.yaml
+++ b/projects-invent/games/ksokoban/metadata.yaml
@@ -1,13 +1,7 @@
 description: KSokoban is the Japanese warehouse keeper sokoban game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: ksokoban
 name: KSokoban
 projectpath: playground/games/ksokoban
 repoactive: true
-repopath: ksokoban
-type: project
+repopath: /games/ksokoban
diff --git a/projects-invent/games/kspaceduel/metadata.yaml b/projects-invent/games/kspaceduel/metadata.yaml
index 9427c63c..d1da1c13 100644
--- a/projects-invent/games/kspaceduel/metadata.yaml
+++ b/projects-invent/games/kspaceduel/metadata.yaml
@@ -1,14 +1,8 @@
 description: 'KSpaceDuel: each of two possible players controls a satellite spaceship
   orbiting the sun'
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kspaceduel
 name: KSpaceDuel
 projectpath: kde/kdegames/kspaceduel
 repoactive: true
-repopath: kspaceduel
-type: project
+repopath: /games/kspaceduel
diff --git a/projects-invent/games/ksquares/metadata.yaml b/projects-invent/games/ksquares/metadata.yaml
index 8c3acfdd..2e706668 100644
--- a/projects-invent/games/ksquares/metadata.yaml
+++ b/projects-invent/games/ksquares/metadata.yaml
@@ -1,16 +1,8 @@
 description: KSquares is modeled after the well known pen and paper based game of
   Dots and Boxes
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
-- displayname: Matt Williams
-  username: milliams
+identifier: ksquares
 name: KSquares
 projectpath: kde/kdegames/ksquares
 repoactive: true
-repopath: ksquares
-type: project
+repopath: /games/ksquares
diff --git a/projects-invent/games/ksudoku/metadata.yaml b/projects-invent/games/ksudoku/metadata.yaml
index 0f299fb4..89b9ed6f 100644
--- a/projects-invent/games/ksudoku/metadata.yaml
+++ b/projects-invent/games/ksudoku/metadata.yaml
@@ -1,13 +1,7 @@
 description: KSudoku is a logic-based symbol placement puzzle
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: ksudoku
 name: KSudoku
 projectpath: kde/kdegames/ksudoku
 repoactive: true
-repopath: ksudoku
-type: project
+repopath: /games/ksudoku
diff --git a/projects-invent/games/ktuberling/metadata.yaml b/projects-invent/games/ktuberling/metadata.yaml
index b4185578..b7b02d73 100644
--- a/projects-invent/games/ktuberling/metadata.yaml
+++ b/projects-invent/games/ktuberling/metadata.yaml
@@ -1,14 +1,8 @@
 description: KTuberling is a simple constructor game suitable for children and adults
   alike
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: ktuberling
 name: KTuberling
 projectpath: kde/kdegames/ktuberling
 repoactive: true
-repopath: ktuberling
-type: project
+repopath: /games/ktuberling
diff --git a/projects-invent/games/kubrick/metadata.yaml b/projects-invent/games/kubrick/metadata.yaml
index 3c0f8c67..e78d1a29 100644
--- a/projects-invent/games/kubrick/metadata.yaml
+++ b/projects-invent/games/kubrick/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kubrick is based on the famous Rubik's Cube
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: kubrick
 name: Kubrick
 projectpath: kde/kdegames/kubrick
 repoactive: true
-repopath: kubrick
-type: project
+repopath: /games/kubrick
diff --git a/projects-invent/games/libkdegameai/metadata.yaml b/projects-invent/games/libkdegameai/metadata.yaml
index 9ce66c14..d5bd1bf9 100644
--- a/projects-invent/games/libkdegameai/metadata.yaml
+++ b/projects-invent/games/libkdegameai/metadata.yaml
@@ -1,11 +1,7 @@
 description: A library for easily creating game AI's
 hasrepo: true
-icon: null
-members:
-- displayname: Inge Wallin
-  username: ingwa
+identifier: libkdegameai
 name: KDE Game AI Library
 projectpath: playground/libs/libkdegameai
 repoactive: false
-repopath: libkdegameai
-type: project
+repopath: /games/libkdegameai
diff --git a/projects-invent/games/libkdegames/metadata.yaml b/projects-invent/games/libkdegames/metadata.yaml
index 100537d8..783fa105 100644
--- a/projects-invent/games/libkdegames/metadata.yaml
+++ b/projects-invent/games/libkdegames/metadata.yaml
@@ -1,13 +1,7 @@
 description: Common code and data for many KDE games
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: libkdegames
 name: libkdegames
 projectpath: kde/kdegames/libkdegames
 repoactive: true
-repopath: libkdegames
-type: project
+repopath: /games/libkdegames
diff --git a/projects-invent/games/libkmahjongg/metadata.yaml b/projects-invent/games/libkmahjongg/metadata.yaml
index e29b0864..4f1979ef 100644
--- a/projects-invent/games/libkmahjongg/metadata.yaml
+++ b/projects-invent/games/libkmahjongg/metadata.yaml
@@ -1,13 +1,7 @@
 description: Common code, backgrounds and tile sets for games using Mahjongg tiles
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: libkmahjongg
 name: libkmahjongg
 projectpath: kde/kdegames/libkmahjongg
 repoactive: true
-repopath: libkmahjongg
-type: project
+repopath: /games/libkmahjongg
diff --git a/projects-invent/games/lskat/metadata.yaml b/projects-invent/games/lskat/metadata.yaml
index eda13070..49169810 100644
--- a/projects-invent/games/lskat/metadata.yaml
+++ b/projects-invent/games/lskat/metadata.yaml
@@ -1,14 +1,8 @@
 description: Lieutenant Skat (from German Offiziersskat) is a fun and engaging card
   game for two players
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: lskat
 name: lskat
 projectpath: kde/kdegames/lskat
 repoactive: true
-repopath: lskat
-type: project
+repopath: /games/lskat
diff --git a/projects-invent/games/metadata.yaml b/projects-invent/games/metadata.yaml
index 80b957ac..ed598ec5 100644
--- a/projects-invent/games/metadata.yaml
+++ b/projects-invent/games/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Games
 projectpath: kde/kdegames
 repoactive: false
-repopath: null
-type: module
+repopath: /games
diff --git a/projects-invent/games/palapeli/metadata.yaml b/projects-invent/games/palapeli/metadata.yaml
index a2abc815..09ae5648 100644
--- a/projects-invent/games/palapeli/metadata.yaml
+++ b/projects-invent/games/palapeli/metadata.yaml
@@ -1,13 +1,7 @@
 description: Palapeli is a single-player jigsaw puzzle game
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Wolfgang Rohdewald
-  username: wrohdewald
+identifier: palapeli
 name: Palapeli
 projectpath: kde/kdegames/palapeli
 repoactive: true
-repopath: palapeli
-type: project
+repopath: /games/palapeli
diff --git a/projects-invent/games/picmi/metadata.yaml b/projects-invent/games/picmi/metadata.yaml
index bbbc70ed..e228023d 100644
--- a/projects-invent/games/picmi/metadata.yaml
+++ b/projects-invent/games/picmi/metadata.yaml
@@ -1,11 +1,7 @@
 description: A nonogram logic game by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Jakob Gruber
-  username: gruber
+identifier: picmi
 name: Picmi
 projectpath: kde/kdegames/picmi
 repoactive: true
-repopath: picmi
-type: project
+repopath: /games/picmi
diff --git a/projects-invent/graphics/colord-kde/metadata.yaml b/projects-invent/graphics/colord-kde/metadata.yaml
index 6d576339..41b1abad 100644
--- a/projects-invent/graphics/colord-kde/metadata.yaml
+++ b/projects-invent/graphics/colord-kde/metadata.yaml
@@ -1,11 +1,7 @@
 description: colord-kde provides interfaces and session daemon to colord
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: colord-kde
 name: colord-kde
 projectpath: playground/graphics/colord-kde
 repoactive: true
-repopath: colord-kde
-type: project
+repopath: /graphics/colord-kde
diff --git a/projects-invent/graphics/digikam/metadata.yaml b/projects-invent/graphics/digikam/metadata.yaml
index 3c70cbbd..8e6d734b 100644
--- a/projects-invent/graphics/digikam/metadata.yaml
+++ b/projects-invent/graphics/digikam/metadata.yaml
@@ -28,62 +28,8 @@ description: "digiKam is an advanced digital photo management application by KDE
   \ It runs without digiKam images database support, but provides all Image Editor\
   \ functions.\n\n!https://farm6.static.flickr.com/5136/5506071124_22f40225fd.jpg!"
 hasrepo: true
-icon: null
-members:
-- displayname: Jens Mueller
-  username: jmueller
-- displayname: Angelo Naselli
-  username: anaselli
-- displayname: Luka Renko
-  username: lure
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: Gerhard Kulzer
-  username: gkulzer
-- displayname: Julien Narboux
-  username: jnarboux
-- displayname: "Oliver D\xF6rr"
-  username: doerr
-- displayname: Achim Bohnet
-  username: ach
-- displayname: Pieter Edelman
-  username: pieteredelman
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Holger Foerster
-  username: foerster
-- displayname: Francesco Riosa
-  username: riosa
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Andi Clemens
-  username: aclemens
-- displayname: Michael Georg Hansen
-  username: mghansen
-- displayname: Gabriel Voicu
-  username: gvoicu
-- displayname: Aditya Jitesh Bhatt
-  username: adityab
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: Johannes Wienke
-  username: jwienke
-- displayname: "Nicolas L\xE9cureuil"
-  username: nlecureuil
-- displayname: Arnd Baecker
-  username: abaecker
-- displayname: jie zhang
-  username: jiezhang
-- displayname: Supreet Pal Singh
-  username: singh
-- displayname: Dhruv Patel
-  username: dhruvpatel
-- displayname: "Petri Damst\xE9n"
-  username: pdamsten
+identifier: digikam
 name: digiKam
 projectpath: extragear/graphics/digikam
 repoactive: true
-repopath: digikam
-type: project
+repopath: /graphics/digikam
diff --git a/projects-invent/graphics/gwenview/metadata.yaml b/projects-invent/graphics/gwenview/metadata.yaml
index beb2cd22..7060f0a8 100644
--- a/projects-invent/graphics/gwenview/metadata.yaml
+++ b/projects-invent/graphics/gwenview/metadata.yaml
@@ -1,13 +1,7 @@
 description: Image viewer by KDE
 hasrepo: true
-icon: gwenview
-members:
-- displayname: "Luk\xE1\u0161 Tinkl"
-  username: lukas
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
+identifier: gwenview
 name: Gwenview
 projectpath: kde/kdegraphics/gwenview
 repoactive: true
-repopath: gwenview
-type: project
+repopath: /graphics/gwenview
diff --git a/projects-invent/graphics/kamera/metadata.yaml b/projects-invent/graphics/kamera/metadata.yaml
index 22577cb9..b2204478 100644
--- a/projects-invent/graphics/kamera/metadata.yaml
+++ b/projects-invent/graphics/kamera/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE integration for gphoto2 cameras
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Marcus Meissner
-  username: mm
+identifier: kamera
 name: Kamera
 projectpath: kde/kdegraphics/kamera
 repoactive: true
-repopath: kamera
-type: project
+repopath: /graphics/kamera
diff --git a/projects-invent/graphics/kcolorchooser/metadata.yaml b/projects-invent/graphics/kcolorchooser/metadata.yaml
index 42ef3c3d..4ac4f4d9 100644
--- a/projects-invent/graphics/kcolorchooser/metadata.yaml
+++ b/projects-invent/graphics/kcolorchooser/metadata.yaml
@@ -1,11 +1,7 @@
 description: A small utility to select a color
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
+identifier: kcolorchooser
 name: KColorChooser
 projectpath: kde/kdegraphics/kcolorchooser
 repoactive: true
-repopath: kcolorchooser
-type: project
+repopath: /graphics/kcolorchooser
diff --git a/projects-invent/graphics/kdegraphics-mobipocket/metadata.yaml b/projects-invent/graphics/kdegraphics-mobipocket/metadata.yaml
index a9740713..ac8fbdc9 100644
--- a/projects-invent/graphics/kdegraphics-mobipocket/metadata.yaml
+++ b/projects-invent/graphics/kdegraphics-mobipocket/metadata.yaml
@@ -1,17 +1,7 @@
 description: A collection of plugins to handle mobipocket files
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Pino Toscano
-  username: pino
-- displayname: Jakub Stachowski
-  username: qbast
+identifier: kdegraphics-mobipocket
 name: mobipocket
 projectpath: kde/kdegraphics/kdegraphics-mobipocket
 repoactive: true
-repopath: kdegraphics-mobipocket
-type: project
+repopath: /graphics/kdegraphics-mobipocket
diff --git a/projects-invent/graphics/kdegraphics-thumbnailers/metadata.yaml b/projects-invent/graphics/kdegraphics-thumbnailers/metadata.yaml
index 62d6e7af..a8a29043 100644
--- a/projects-invent/graphics/kdegraphics-thumbnailers/metadata.yaml
+++ b/projects-invent/graphics/kdegraphics-thumbnailers/metadata.yaml
@@ -1,11 +1,7 @@
 description: Thumbnailers for various graphics file formats
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
+identifier: kdegraphics-thumbnailers
 name: Thumbnailers
 projectpath: kde/kdegraphics/kdegraphics-thumbnailers
 repoactive: true
-repopath: kdegraphics-thumbnailers
-type: project
+repopath: /graphics/kdegraphics-thumbnailers
diff --git a/projects-invent/graphics/kdiagram/metadata.yaml b/projects-invent/graphics/kdiagram/metadata.yaml
index 576af29e..ae6f12cf 100644
--- a/projects-invent/graphics/kdiagram/metadata.yaml
+++ b/projects-invent/graphics/kdiagram/metadata.yaml
@@ -1,11 +1,7 @@
 description: Powerful libraries (KChart, KGantt) for creating business diagrams
 hasrepo: true
-icon: null
-members:
-- displayname: Dag Andersen
-  username: danders
+identifier: kdiagram
 name: KDiagram
 projectpath: extragear/graphics/kdiagram
 repoactive: true
-repopath: kdiagram
-type: project
+repopath: /graphics/kdiagram
diff --git a/projects-invent/graphics/kgraphviewer/metadata.yaml b/projects-invent/graphics/kgraphviewer/metadata.yaml
index 8468b8de..8863de09 100644
--- a/projects-invent/graphics/kgraphviewer/metadata.yaml
+++ b/projects-invent/graphics/kgraphviewer/metadata.yaml
@@ -1,19 +1,7 @@
 description: KGraphViewer is a GraphViz dot graph viewer.
 hasrepo: true
-icon: null
-members:
-- displayname: "Ga\xEBl de Chalendar"
-  username: kleag
-- displayname: Sandro Andrade
-  username: sandroandrade
-- displayname: Tomaz  Canabrava
-  username: tcanabrava
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: "Reimar D\xF6ffinger"
-  username: rdoffinger
+identifier: kgraphviewer
 name: KGraphViewer
 projectpath: extragear/graphics/kgraphviewer
 repoactive: true
-repopath: kgraphviewer
-type: project
+repopath: /graphics/kgraphviewer
diff --git a/projects-invent/graphics/kimagemapeditor/metadata.yaml b/projects-invent/graphics/kimagemapeditor/metadata.yaml
index 93cfa2e5..b11be923 100644
--- a/projects-invent/graphics/kimagemapeditor/metadata.yaml
+++ b/projects-invent/graphics/kimagemapeditor/metadata.yaml
@@ -1,9 +1,7 @@
 description: Generator of HTML image maps.
 hasrepo: true
-icon: null
-members: []
+identifier: kimagemapeditor
 name: KImageMap Editor
 projectpath: kde/kdewebdev/kimagemapeditor
 repoactive: true
-repopath: kimagemapeditor
-type: project
+repopath: /graphics/kimagemapeditor
diff --git a/projects-invent/graphics/kipi-plugins/metadata.yaml b/projects-invent/graphics/kipi-plugins/metadata.yaml
index 42a30294..06bf117a 100644
--- a/projects-invent/graphics/kipi-plugins/metadata.yaml
+++ b/projects-invent/graphics/kipi-plugins/metadata.yaml
@@ -1,87 +1,14 @@
-description: "!https://cdn.kde.org/screenshots/kipi-plugins/kipi-logo.png!\n\
-  \nA collection of plugins extending the KDE graphics image applications\n such as\
-  \ Gwenview, and KPhotoalbum.\n\nTools are managed\
-  \ through \"libkipi\" from KDE Applications\
-  \ shared library by kipi host applications.\n\nTools provided can be used to:\n\n\
-  - Export items to web services,\n- Import items from web services,\n- Batch Process\
-  \ items (transform, fix, merge, ...),\n- Edit Metadata (Exif, IPTC, XMP, GPS, ...),\n\
+description: "!https://cdn.kde.org/screenshots/kipi-plugins/kipi-logo.png!\n\nA collection\
+  \ of plugins extending the KDE graphics image applications\n such as Gwenview, and\
+  \ KPhotoalbum.\n\nTools are managed through \"libkipi\" from KDE Applications shared\
+  \ library by kipi host applications.\n\nTools provided can be used to:\n\n- Export\
+  \ items to web services,\n- Import items from web services,\n- Batch Process items\
+  \ (transform, fix, merge, ...),\n- Edit Metadata (Exif, IPTC, XMP, GPS, ...),\n\
   - Display items,\n- Acquire items from devices,\n- Print Items,\n- etc...\n\n\n\n\
   \n!https://farm6.static.flickr.com/5056/5508432123_2ffe74712c_b.jpg!"
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Georg Hansen
-  username: mghansen
-- displayname: Achim Bohnet
-  username: ach
-- displayname: Arnd Baecker
-  username: abaecker
-- displayname: Johannes Wienke
-  username: jwienke
-- displayname: Aditya Jitesh Bhatt
-  username: adityab
-- displayname: Pieter Edelman
-  username: pieteredelman
-- displayname: Luka Renko
-  username: lure
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: Valerio Fuoglio
-  username: vfuoglio
-- displayname: "Timoth\xE9e Samuel Groleau"
-  username: tsgroleau
-- displayname: "Fr\xE9d\xE9ric Coiffier"
-  username: fcoiffier
-- displayname: Martin Engelmann
-  username: mengelmann
-- displayname: Orgad Shaneh
-  username: orgads
-- displayname: Seb Ruiz
-  username: seb
-- displayname: Julien Narboux
-  username: jnarboux
-- displayname: Robert Mathias Marmorstein
-  username: robertm
-- displayname: Markus Leuthold
-  username: kusi
-- displayname: Vardhman Jain
-  username: jaiva
-- displayname: Colin Guthrie
-  username: cguthrie
-- displayname: "Oliver D\xF6rr"
-  username: doerr
-- displayname: Pau Garcia i Quiles
-  username: pgquiles
-- displayname: Gabriel Voicu
-  username: gvoicu
-- displayname: Jens Mueller
-  username: jmueller
-- displayname: "Nicolas L\xE9cureuil"
-  username: nlecureuil
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Gerhard Kulzer
-  username: gkulzer
-- displayname: Alexandre Mendes
-  username: amendes
-- displayname: "Luk\xE1\u0161 Krej\u010D\xED"
-  username: krejci
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Angelo Naselli
-  username: anaselli
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Roman Tsisyk
-  username: tsisyk
-- displayname: "Petri Damst\xE9n"
-  username: pdamsten
-- displayname: Smit Mehta
-  username: smitmehta
+identifier: kipi-plugins
 name: Kipi Plugins
 projectpath: kde/kdegraphics/kipi-plugins
 repoactive: true
-repopath: kipi-plugins
-type: project
+repopath: /graphics/kipi-plugins
diff --git a/projects-invent/graphics/klook/metadata.yaml b/projects-invent/graphics/klook/metadata.yaml
index 8a6a2dfb..5eff5933 100644
--- a/projects-invent/graphics/klook/metadata.yaml
+++ b/projects-invent/graphics/klook/metadata.yaml
@@ -1,14 +1,8 @@
 description: Klook is a quick file content preview application that supports integration
   with Dolphin
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeniy Auzhin
-  username: auzhin
-- displayname: Sergey Borovkov
-  username: borovkov
+identifier: klook
 name: klook
 projectpath: playground/base/klook
 repoactive: true
-repopath: klook
-type: project
+repopath: /graphics/klook
diff --git a/projects-invent/graphics/kolor-manager/metadata.yaml b/projects-invent/graphics/kolor-manager/metadata.yaml
index 4400216b..80b10b31 100644
--- a/projects-invent/graphics/kolor-manager/metadata.yaml
+++ b/projects-invent/graphics/kolor-manager/metadata.yaml
@@ -1,16 +1,8 @@
 description: Oyranos CMS cross desktop settings for the KDE system settings panel.
   KolorServer supports the X Color Management spec as a kded module for KWin. !http://www.oyranos.org/images/KolorManager-oS12.1_2_500.png!
 hasrepo: true
-icon: null
-members:
-- displayname: Kai-Uwe Behrmann
-  username: behrmann
-- displayname: Joe Simon
-  username: josephsimon
-- displayname: Casian Andrei
-  username: casianandrei
+identifier: kolor-manager
 name: KolorManager
 projectpath: extragear/graphics/kolor-manager
 repoactive: true
-repopath: kolor-manager
-type: project
+repopath: /graphics/kolor-manager
diff --git a/projects-invent/graphics/kolourpaint/metadata.yaml b/projects-invent/graphics/kolourpaint/metadata.yaml
index f0bccca3..336c26be 100644
--- a/projects-invent/graphics/kolourpaint/metadata.yaml
+++ b/projects-invent/graphics/kolourpaint/metadata.yaml
@@ -1,11 +1,7 @@
 description: KolourPaint is an easy-to-use paint program
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Koller
-  username: mkoller
+identifier: kolourpaint
 name: KolourPaint
 projectpath: kde/kdegraphics/kolourpaint
 repoactive: true
-repopath: kolourpaint
-type: project
+repopath: /graphics/kolourpaint
diff --git a/projects-invent/graphics/kooka/metadata.yaml b/projects-invent/graphics/kooka/metadata.yaml
index a3fc01e5..a2816928 100644
--- a/projects-invent/graphics/kooka/metadata.yaml
+++ b/projects-invent/graphics/kooka/metadata.yaml
@@ -1,12 +1,8 @@
 description: The scanning application and libkscan library which were formerly included
   in kdegraphics
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Marten
-  username: marten
+identifier: kooka
 name: Kooka
 projectpath: playground/graphics/kooka
 repoactive: true
-repopath: kooka
-type: project
+repopath: /graphics/kooka
diff --git a/projects-invent/graphics/kphotoalbum/metadata.yaml b/projects-invent/graphics/kphotoalbum/metadata.yaml
index 3b1cc098..92efe66e 100644
--- a/projects-invent/graphics/kphotoalbum/metadata.yaml
+++ b/projects-invent/graphics/kphotoalbum/metadata.yaml
@@ -1,17 +1,7 @@
 description: Photo Album for easy organization of your images
 hasrepo: true
-icon: null
-members:
-- displayname: Jesper Pedersen
-  username: blackie
-- displayname: Henner Zeller
-  username: hzeller
-- displayname: Tuomas Suutari
-  username: suutari
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: kphotoalbum
 name: KPhotoAlbum
 projectpath: extragear/graphics/kphotoalbum
 repoactive: true
-repopath: kphotoalbum
-type: project
+repopath: /graphics/kphotoalbum
diff --git a/projects-invent/graphics/krita/metadata.yaml b/projects-invent/graphics/krita/metadata.yaml
index 79df6a29..91af8459 100644
--- a/projects-invent/graphics/krita/metadata.yaml
+++ b/projects-invent/graphics/krita/metadata.yaml
@@ -1,18 +1,8 @@
 description: Krita is a free digital painting application. Digital Painting, Creative
   Freedom!
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Wolthera van Hovell
-  username: woltherav
-- displayname: Dmitry Kazakov
-  username: dkazakov
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita
 name: Krita
 projectpath: extragear/graphics/krita
 repoactive: true
-repopath: krita
-type: project
+repopath: /graphics/krita
diff --git a/projects-invent/graphics/kruler/metadata.yaml b/projects-invent/graphics/kruler/metadata.yaml
index d206a311..ed627155 100644
--- a/projects-invent/graphics/kruler/metadata.yaml
+++ b/projects-invent/graphics/kruler/metadata.yaml
@@ -1,11 +1,7 @@
 description: A pixel measuring tool by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Mathias Soeken
-  username: msoeken
+identifier: kruler
 name: KDE Screen Ruler
 projectpath: kde/kdegraphics/kruler
 repoactive: true
-repopath: kruler
-type: project
+repopath: /graphics/kruler
diff --git a/projects-invent/graphics/kst-plot/metadata.yaml b/projects-invent/graphics/kst-plot/metadata.yaml
index f667b615..f4f0e99d 100644
--- a/projects-invent/graphics/kst-plot/metadata.yaml
+++ b/projects-invent/graphics/kst-plot/metadata.yaml
@@ -1,15 +1,7 @@
 description: kst is a fast real time plotting program with light data analysis capabilities
 hasrepo: true
-icon: null
-members:
-- displayname: Nicolas Brisset
-  username: brisset
-- displayname: "Peter K\xFCmmel"
-  username: kuemmel
-- displayname: Barth Netterfield
-  username: netterfield
+identifier: kst-plot
 name: kst realtime data viewing
 projectpath: extragear/graphics/kst-plot
 repoactive: true
-repopath: kst-plot
-type: project
+repopath: /graphics/kst-plot
diff --git a/projects-invent/graphics/kuickshow/metadata.yaml b/projects-invent/graphics/kuickshow/metadata.yaml
index f215b082..eaf8fc8f 100644
--- a/projects-invent/graphics/kuickshow/metadata.yaml
+++ b/projects-invent/graphics/kuickshow/metadata.yaml
@@ -1,11 +1,7 @@
 description: A fast and convenient image viewer
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Gerloff
-  username: cgerloff
+identifier: kuickshow
 name: Kuickshow
 projectpath: playground/graphics/kuickshow
 repoactive: true
-repopath: kuickshow
-type: project
+repopath: /graphics/kuickshow
diff --git a/projects-invent/graphics/kxstitch/metadata.yaml b/projects-invent/graphics/kxstitch/metadata.yaml
index d539ff85..24ee2372 100644
--- a/projects-invent/graphics/kxstitch/metadata.yaml
+++ b/projects-invent/graphics/kxstitch/metadata.yaml
@@ -1,11 +1,7 @@
 description: Cross stitch pattern and chart creation
 hasrepo: true
-icon: kxstitch
-members:
-- displayname: Steve Allewell
-  username: sallewell
+identifier: kxstitch
 name: KXStitch
 projectpath: extragear/graphics/kxstitch
 repoactive: true
-repopath: kxstitch
-type: project
+repopath: /graphics/kxstitch
diff --git a/projects-invent/graphics/libkdcraw/metadata.yaml b/projects-invent/graphics/libkdcraw/metadata.yaml
index 22baf675..7254a712 100644
--- a/projects-invent/graphics/libkdcraw/metadata.yaml
+++ b/projects-invent/graphics/libkdcraw/metadata.yaml
@@ -4,22 +4,8 @@ description: 'Libkdcraw is a C++ interface around "LibRaw library":https://www.l
 
   API documentation is available "here":http://api.kde.org/4.x-api/kdegraphics-apidocs/libs/libkdcraw/libkdcraw/html/index.html'
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Gerhard Kulzer
-  username: gkulzer
-- displayname: Achim Bohnet
-  username: ach
-- displayname: Michael Georg Hansen
-  username: mghansen
-- displayname: Angelo Naselli
-  username: anaselli
+identifier: libkdcraw
 name: libkdcraw
 projectpath: kde/kdegraphics/libs/libkdcraw
 repoactive: true
-repopath: libkdcraw
-type: project
+repopath: /graphics/libkdcraw
diff --git a/projects-invent/graphics/libkexiv2/metadata.yaml b/projects-invent/graphics/libkexiv2/metadata.yaml
index 7e294d25..5333a28b 100644
--- a/projects-invent/graphics/libkexiv2/metadata.yaml
+++ b/projects-invent/graphics/libkexiv2/metadata.yaml
@@ -1,5 +1,5 @@
-description: 'Libkexiv2 is a wrapper around "Exiv2 library":https://www.exiv2.org to
-  manipulate pictures metadata as "EXIF":https://en.wikipedia.org/wiki/Exif "IPTC":https://en.wikipedia.org/wiki/IPTC
+description: 'Libkexiv2 is a wrapper around "Exiv2 library":https://www.exiv2.org
+  to manipulate pictures metadata as "EXIF":https://en.wikipedia.org/wiki/Exif "IPTC":https://en.wikipedia.org/wiki/IPTC
   and "XMP":https://en.wikipedia.org/wiki/Extensible_Metadata_Platform.
 
 
@@ -18,22 +18,8 @@ description: 'Libkexiv2 is a wrapper around "Exiv2 library":https://www.exiv2.or
 
   !https://farm6.static.flickr.com/5056/5505686861_34bc764736.jpg!'
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Angelo Naselli
-  username: anaselli
-- displayname: Gerhard Kulzer
-  username: gkulzer
-- displayname: Achim Bohnet
-  username: ach
-- displayname: Michael Georg Hansen
-  username: mghansen
+identifier: libkexiv2
 name: libkexiv2
 projectpath: kde/kdegraphics/libs/libkexiv2
 repoactive: true
-repopath: libkexiv2
-type: project
+repopath: /graphics/libkexiv2
diff --git a/projects-invent/graphics/libkgeomap/metadata.yaml b/projects-invent/graphics/libkgeomap/metadata.yaml
index db2f5704..a641239d 100644
--- a/projects-invent/graphics/libkgeomap/metadata.yaml
+++ b/projects-invent/graphics/libkgeomap/metadata.yaml
@@ -1,21 +1,11 @@
 description: "Libkgeomap is a wrapper around different world-map components, to browse\
   \ and arrange photos over a map.\n\nCurrently supported map engine are:\n\n- \"\
   Marble\":https://edu.kde.org/marble, \n- \"OpenstreetMap\":https://www.openstreetmap.org\
-  \ (via Marble),\n- \"GoogleMap\":https://maps.google.com, \n\nAPI documentation is\
-  \ available \"here\":http://api.kde.org/extragear-api/libs-apidocs/libkgeomap/libkgeomap/html/index.html"
+  \ (via Marble),\n- \"GoogleMap\":https://maps.google.com, \n\nAPI documentation\
+  \ is available \"here\":http://api.kde.org/extragear-api/libs-apidocs/libkgeomap/libkgeomap/html/index.html"
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Michael Georg Hansen
-  username: mghansen
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Gabriel Voicu
-  username: gvoicu
+identifier: libkgeomap
 name: libkgeomap
 projectpath: kde/kdegraphics/libs/libkgeomap
 repoactive: true
-repopath: libkgeomap
-type: project
+repopath: /graphics/libkgeomap
diff --git a/projects-invent/graphics/libkipi/metadata.yaml b/projects-invent/graphics/libkipi/metadata.yaml
index 916d7996..2db709ba 100644
--- a/projects-invent/graphics/libkipi/metadata.yaml
+++ b/projects-invent/graphics/libkipi/metadata.yaml
@@ -4,26 +4,8 @@ description: 'Libkipi is a Qt/C++ interface to use kipi-plugins from a KDE image
 
   API documentation is available "here":http://api.kde.org/4.x-api/kdegraphics-apidocs/libs/libkipi/libkipi/html/index.html'
 hasrepo: true
-icon: null
-members:
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Angelo Naselli
-  username: anaselli
-- displayname: Michael Georg Hansen
-  username: mghansen
-- displayname: Gabriel Voicu
-  username: gvoicu
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Gerhard Kulzer
-  username: gkulzer
-- displayname: Achim Bohnet
-  username: ach
+identifier: libkipi
 name: libkipi
 projectpath: kde/kdegraphics/libs/libkipi
 repoactive: true
-repopath: libkipi
-type: project
+repopath: /graphics/libkipi
diff --git a/projects-invent/graphics/libksane/metadata.yaml b/projects-invent/graphics/libksane/metadata.yaml
index 80829323..920051c9 100644
--- a/projects-invent/graphics/libksane/metadata.yaml
+++ b/projects-invent/graphics/libksane/metadata.yaml
@@ -1,12 +1,8 @@
 description: libksane is an image scanning library that provides a QWidget that contains
   all the logic needed to interface a scanner.
 hasrepo: true
-icon: scanner
-members:
-- displayname: "K\xE5re S\xE4rs"
-  username: sars
+identifier: libksane
 name: libksane
 projectpath: kde/kdegraphics/libs/libksane
 repoactive: true
-repopath: libksane
-type: project
+repopath: /graphics/libksane
diff --git a/projects-invent/graphics/metadata.yaml b/projects-invent/graphics/metadata.yaml
index 9dca32cb..a09c61b7 100644
--- a/projects-invent/graphics/metadata.yaml
+++ b/projects-invent/graphics/metadata.yaml
@@ -3,18 +3,8 @@ description: 'An (optional) super-repository which holds the history of the kdeg
   as a whole. Note: this super-repository does not facilitate checking out (cloning)
   of the component kdegraphics repositories.'
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
-- displayname: Pino Toscano
-  username: pino
+identifier: kdegraphics
 name: KDE Graphics
 projectpath: kde/kdegraphics
 repoactive: false
-repopath: kdegraphics
-type: module
+repopath: /graphics
diff --git a/projects-invent/graphics/okular/metadata.yaml b/projects-invent/graphics/okular/metadata.yaml
index 48796e65..5a34fd21 100644
--- a/projects-invent/graphics/okular/metadata.yaml
+++ b/projects-invent/graphics/okular/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE document viewer
 hasrepo: true
-icon: null
-members:
-- displayname: Pino Toscano
-  username: pino
-- displayname: Albert Astals Cid
-  username: aacid
+identifier: okular
 name: Okular
 projectpath: kde/kdegraphics/okular
 repoactive: true
-repopath: okular
-type: project
+repopath: /graphics/okular
diff --git a/projects-invent/graphics/peruse/metadata.yaml b/projects-invent/graphics/peruse/metadata.yaml
index c2e2960b..f9d61db8 100644
--- a/projects-invent/graphics/peruse/metadata.yaml
+++ b/projects-invent/graphics/peruse/metadata.yaml
@@ -1,11 +1,7 @@
 description: A comic book viewer based on Frameworks 5, for use on multiple form factors
 hasrepo: true
-icon: null
-members:
-- displayname: Dan Leinir Turthra Jensen
-  username: leinir
+identifier: peruse
 name: Peruse Comic Book Reader
 projectpath: playground/base/peruse
 repoactive: true
-repopath: peruse
-type: project
+repopath: /graphics/peruse
diff --git a/projects-invent/graphics/pvfviewer/metadata.yaml b/projects-invent/graphics/pvfviewer/metadata.yaml
index 3314ccef..4884e40f 100644
--- a/projects-invent/graphics/pvfviewer/metadata.yaml
+++ b/projects-invent/graphics/pvfviewer/metadata.yaml
@@ -1,11 +1,7 @@
 description: PC Stitch Pattern Viewer
 hasrepo: true
-icon: pvfviewer
-members:
-- displayname: Steve Allewell
-  username: sallewell
+identifier: pvfviewer
 name: PVfViewer
-projectpath: extragear/graphics/pvfviewer 
+projectpath: extragear/graphics/pvfviewer
 repoactive: true
-repopath: pvfviewer
-type: project
+repopath: /graphics/pvfviewer
diff --git a/projects-invent/graphics/skanlite/metadata.yaml b/projects-invent/graphics/skanlite/metadata.yaml
index 19f7a15f..6693ea4c 100644
--- a/projects-invent/graphics/skanlite/metadata.yaml
+++ b/projects-invent/graphics/skanlite/metadata.yaml
@@ -1,11 +1,7 @@
 description: Lite image scanning application
 hasrepo: true
-icon: null
-members:
-- displayname: "K\xE5re S\xE4rs"
-  username: sars
+identifier: skanlite
 name: Skanlite
 projectpath: extragear/graphics/skanlite
 repoactive: true
-repopath: skanlite
-type: project
+repopath: /graphics/skanlite
diff --git a/projects-invent/graphics/spectacle/metadata.yaml b/projects-invent/graphics/spectacle/metadata.yaml
index 8a6aee55..b64ed7de 100644
--- a/projects-invent/graphics/spectacle/metadata.yaml
+++ b/projects-invent/graphics/spectacle/metadata.yaml
@@ -1,11 +1,7 @@
 description: Screenshot capture utility
 hasrepo: true
-icon: null
-members:
-- displayname: Boudhayan Gupta
-  username: bgupta
+identifier: spectacle
 name: Spectacle
 projectpath: kde/kdegraphics/spectacle
 repoactive: true
-repopath: spectacle
-type: project
+repopath: /graphics/spectacle
diff --git a/projects-invent/graphics/svgpart/metadata.yaml b/projects-invent/graphics/svgpart/metadata.yaml
index 7232b98d..b9c5cd00 100644
--- a/projects-invent/graphics/svgpart/metadata.yaml
+++ b/projects-invent/graphics/svgpart/metadata.yaml
@@ -1,11 +1,7 @@
 description: A SVG KPart
 hasrepo: true
-icon: null
-members:
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
+identifier: svgpart
 name: SVG KPart
 projectpath: kde/kdegraphics/svgpart
 repoactive: true
-repopath: svgpart
-type: project
+repopath: /graphics/svgpart
diff --git a/projects-invent/graphics/symboleditor/metadata.yaml b/projects-invent/graphics/symboleditor/metadata.yaml
index d91a9bee..ff204609 100644
--- a/projects-invent/graphics/symboleditor/metadata.yaml
+++ b/projects-invent/graphics/symboleditor/metadata.yaml
@@ -1,12 +1,8 @@
 description: Application to create libraries of QPainterPath objects with rendering
   hints
 hasrepo: true
-icon: symboleditor
-members:
-- displayname: Steve Allewell
-  username: sallewell
+identifier: symboleditor
 name: SymbolEditor
 projectpath: extragear/graphics/symboleditor
 repoactive: true
-repopath: symboleditor
-type: project
+repopath: /graphics/symboleditor
diff --git a/projects-invent/graphics/tikzkit/metadata.yaml b/projects-invent/graphics/tikzkit/metadata.yaml
index 1e722b7c..d52be09f 100644
--- a/projects-invent/graphics/tikzkit/metadata.yaml
+++ b/projects-invent/graphics/tikzkit/metadata.yaml
@@ -1,11 +1,7 @@
 description: TikZKit provides a graphical WYSIWYG editor to create PGF/TikZ pictures.
 hasrepo: true
-icon: null
-members:
-- displayname: Dominik Haumann
-  username: dhaumann
+identifier: tikzkit
 name: TikZKit
 projectpath: playground/graphics/tikzkit
 repoactive: true
-repopath: tikzkit
-type: project
+repopath: /graphics/tikzkit
diff --git a/projects-invent/graphics/washipad/metadata.yaml b/projects-invent/graphics/washipad/metadata.yaml
index b95d4de0..56f088b6 100644
--- a/projects-invent/graphics/washipad/metadata.yaml
+++ b/projects-invent/graphics/washipad/metadata.yaml
@@ -1,11 +1,7 @@
 description: A minimalist application for sketchnoting
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
+identifier: washipad
 name: Washipad
 projectpath: playground/utils/washipad
 repoactive: true
-repopath: washipad
-type: project
+repopath: /graphics/washipad
diff --git a/projects-invent/historical/amarok-history/metadata.yaml b/projects-invent/historical/amarok-history/metadata.yaml
index 6fe8b716..f485486f 100644
--- a/projects-invent/historical/amarok-history/metadata.yaml
+++ b/projects-invent/historical/amarok-history/metadata.yaml
@@ -1,11 +1,7 @@
 description: Amarok history
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
+identifier: amarok-history
 name: Amarok History
 projectpath: extragear/multimedia/amarok/amarok-history
 repoactive: false
-repopath: amarok-history
-type: project
+repopath: /historical/amarok-history
diff --git a/projects-invent/historical/calligra-history/metadata.yaml b/projects-invent/historical/calligra-history/metadata.yaml
index f04e9594..c2d017b0 100644
--- a/projects-invent/historical/calligra-history/metadata.yaml
+++ b/projects-invent/historical/calligra-history/metadata.yaml
@@ -1,13 +1,7 @@
 description: The home of inactive branches for Calligra Suite.
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: calligra-history
 name: Calligra History
 projectpath: calligra/calligra-history
 repoactive: false
-repopath: calligra-history
-type: module
+repopath: /historical/calligra-history
diff --git a/projects-invent/historical/kde1-kdeadmin/metadata.yaml b/projects-invent/historical/kde1-kdeadmin/metadata.yaml
index ce5f89b2..f39540bc 100644
--- a/projects-invent/historical/kde1-kdeadmin/metadata.yaml
+++ b/projects-invent/historical/kde1-kdeadmin/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the admin applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the admin applications module of KDE 1, adapted to
+  compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEAdmin"
+identifier: kde1-kdeadmin
+name: 'Historical: KDE 1 - KDEAdmin'
 projectpath: historical/kde1-kdeadmin
 repoactive: true
-repopath: kde1-kdeadmin
-type: module
+repopath: /historical/kde1-kdeadmin
diff --git a/projects-invent/historical/kde1-kdebase/metadata.yaml b/projects-invent/historical/kde1-kdebase/metadata.yaml
index 3b4838e4..ea32235a 100644
--- a/projects-invent/historical/kde1-kdebase/metadata.yaml
+++ b/projects-invent/historical/kde1-kdebase/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the base applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the base applications module of KDE 1, adapted to
+  compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEBase"
+identifier: kde1-kdebase
+name: 'Historical: KDE 1 - KDEBase'
 projectpath: historical/kde1-kdebase
 repoactive: true
-repopath: kde1-kdebase
-type: module
+repopath: /historical/kde1-kdebase
diff --git a/projects-invent/historical/kde1-kdegames/metadata.yaml b/projects-invent/historical/kde1-kdegames/metadata.yaml
index 755d20cc..7bd50ec1 100644
--- a/projects-invent/historical/kde1-kdegames/metadata.yaml
+++ b/projects-invent/historical/kde1-kdegames/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the gaming applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the gaming applications module of KDE 1, adapted to
+  compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEGames"
+identifier: kde1-kdegames
+name: 'Historical: KDE 1 - KDEGames'
 projectpath: historical/kde1-kdegames
 repoactive: true
-repopath: kde1-kdegames
-type: module
+repopath: /historical/kde1-kdegames
diff --git a/projects-invent/historical/kde1-kdegraphics/metadata.yaml b/projects-invent/historical/kde1-kdegraphics/metadata.yaml
index f030e030..dfc325e1 100644
--- a/projects-invent/historical/kde1-kdegraphics/metadata.yaml
+++ b/projects-invent/historical/kde1-kdegraphics/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the graphics applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the graphics applications module of KDE 1, adapted
+  to compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEGraphics"
+identifier: kde1-kdegraphics
+name: 'Historical: KDE 1 - KDEGraphics'
 projectpath: historical/kde1-kdegraphics
 repoactive: true
-repopath: kde1-kdegraphics
-type: module
+repopath: /historical/kde1-kdegraphics
diff --git a/projects-invent/historical/kde1-kdelibs/metadata.yaml b/projects-invent/historical/kde1-kdelibs/metadata.yaml
index c9dc18db..62059866 100644
--- a/projects-invent/historical/kde1-kdelibs/metadata.yaml
+++ b/projects-invent/historical/kde1-kdelibs/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the libraries module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the libraries module of KDE 1, adapted to compile
+  on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDELibs"
+identifier: kde1-kdelibs
+name: 'Historical: KDE 1 - KDELibs'
 projectpath: historical/kde1-kdelibs
 repoactive: true
-repopath: kde1-kdelibs
-type: module
+repopath: /historical/kde1-kdelibs
diff --git a/projects-invent/historical/kde1-kdemultimedia/metadata.yaml b/projects-invent/historical/kde1-kdemultimedia/metadata.yaml
index 709c7631..2cf233e4 100644
--- a/projects-invent/historical/kde1-kdemultimedia/metadata.yaml
+++ b/projects-invent/historical/kde1-kdemultimedia/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the multimedia applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the multimedia applications module of KDE 1, adapted
+  to compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEMultimedia"
+identifier: kde1-kdemultimedia
+name: 'Historical: KDE 1 - KDEMultimedia'
 projectpath: historical/kde1-kdemultimedia
 repoactive: true
-repopath: kde1-kdemultimedia
-type: module
+repopath: /historical/kde1-kdemultimedia
diff --git a/projects-invent/historical/kde1-kdenetwork/metadata.yaml b/projects-invent/historical/kde1-kdenetwork/metadata.yaml
index 3a689c82..0b8c5233 100644
--- a/projects-invent/historical/kde1-kdenetwork/metadata.yaml
+++ b/projects-invent/historical/kde1-kdenetwork/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the network applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the network applications module of KDE 1, adapted
+  to compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDENetwork"
+identifier: kde1-kdenetwork
+name: 'Historical: KDE 1 - KDENetwork'
 projectpath: historical/kde1-kdenetwork
 repoactive: true
-repopath: kde1-kdenetwork
-type: module
+repopath: /historical/kde1-kdenetwork
diff --git a/projects-invent/historical/kde1-kdetoys/metadata.yaml b/projects-invent/historical/kde1-kdetoys/metadata.yaml
index de7be0b7..692007be 100644
--- a/projects-invent/historical/kde1-kdetoys/metadata.yaml
+++ b/projects-invent/historical/kde1-kdetoys/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the toys module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the toys module of KDE 1, adapted to compile on modern
+  systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEToys"
+identifier: kde1-kdetoys
+name: 'Historical: KDE 1 - KDEToys'
 projectpath: historical/kde1-kdetoys
 repoactive: true
-repopath: kde1-kdetoys
-type: module
+repopath: /historical/kde1-kdetoys
diff --git a/projects-invent/historical/kde1-kdeutils/metadata.yaml b/projects-invent/historical/kde1-kdeutils/metadata.yaml
index 75b89435..918abab7 100644
--- a/projects-invent/historical/kde1-kdeutils/metadata.yaml
+++ b/projects-invent/historical/kde1-kdeutils/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the utility applications module of KDE 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of the utility applications module of KDE 1, adapted
+  to compile on modern systems (circa. 2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 - KDEUtils"
+identifier: kde1-kdeutils
+name: 'Historical: KDE 1 - KDEUtils'
 projectpath: historical/kde1-kdeutils
 repoactive: true
-repopath: kde1-kdeutils
-type: module
+repopath: /historical/kde1-kdeutils
diff --git a/projects-invent/historical/kde1/metadata.yaml b/projects-invent/historical/kde1/metadata.yaml
index ce5a5ab9..094ae5af 100644
--- a/projects-invent/historical/kde1/metadata.yaml
+++ b/projects-invent/historical/kde1/metadata.yaml
@@ -1,9 +1,7 @@
 description: Metamodule for the KDE 1 Release, adapted to run on modern systems
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 1 Meta Module"
+identifier: kde1
+name: 'Historical: KDE 1 Meta Module'
 projectpath: historical/kde1
 repoactive: true
-repopath: kde1
-type: module
+repopath: /historical/kde1
diff --git a/projects-invent/historical/kde2-kdelibs/metadata.yaml b/projects-invent/historical/kde2-kdelibs/metadata.yaml
index f8540be7..a399d2cd 100644
--- a/projects-invent/historical/kde2-kdelibs/metadata.yaml
+++ b/projects-invent/historical/kde2-kdelibs/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of the libraries module of KDE 2, adapted to compile on modern systems (circa. 2018)
+description: Historical copy of the libraries module of KDE 2, adapted to compile
+  on modern systems (circa. 2018)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 2 - KDELibs"
+identifier: kde2-kdelibs
+name: 'Historical: KDE 2 - KDELibs'
 projectpath: historical/kde2-kdelibs
 repoactive: true
-repopath: kde2-kdelibs
-type: module
+repopath: /historical/kde2-kdelibs
diff --git a/projects-invent/historical/kde2/metadata.yaml b/projects-invent/historical/kde2/metadata.yaml
index 9a864dc2..04b10d6c 100644
--- a/projects-invent/historical/kde2/metadata.yaml
+++ b/projects-invent/historical/kde2/metadata.yaml
@@ -1,9 +1,7 @@
 description: Metamodule for the KDE 2 Release, adapted to run on modern systems
 hasrepo: true
-icon: null
-members: []
-name: "Historical: KDE 2 Meta Module"
+identifier: kde2
+name: 'Historical: KDE 2 Meta Module'
 projectpath: historical/kde2
 repoactive: true
-repopath: kde2
-type: module
+repopath: /historical/kde2
diff --git a/projects-invent/historical/metadata.yaml b/projects-invent/historical/metadata.yaml
index e5398571..018eeaa2 100644
--- a/projects-invent/historical/metadata.yaml
+++ b/projects-invent/historical/metadata.yaml
@@ -1,9 +1,8 @@
-description: All projects here are historical, having evolved into different forms since. They're principally kept for archival purposes.
+description: All projects here are historical, having evolved into different forms
+  since. They're principally kept for archival purposes.
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Historical Projects
 projectpath: historical
 repoactive: false
-repopath: null
-type: component
+repopath: /historical
diff --git a/projects-invent/historical/qt1/metadata.yaml b/projects-invent/historical/qt1/metadata.yaml
index b3f5625e..19676f43 100644
--- a/projects-invent/historical/qt1/metadata.yaml
+++ b/projects-invent/historical/qt1/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of Qt 1, adapted to compile on modern systems (circa. 2016)
+description: Historical copy of Qt 1, adapted to compile on modern systems (circa.
+  2016)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: Qt 1"
+identifier: qt1
+name: 'Historical: Qt 1'
 projectpath: historical/qt1
 repoactive: true
-repopath: qt1
-type: module
+repopath: /historical/qt1
diff --git a/projects-invent/historical/qt2/metadata.yaml b/projects-invent/historical/qt2/metadata.yaml
index d66a94d8..b082195d 100644
--- a/projects-invent/historical/qt2/metadata.yaml
+++ b/projects-invent/historical/qt2/metadata.yaml
@@ -1,9 +1,8 @@
-description: Historical copy of Qt 2, adapted to compile on modern systems (circa. 2018)
+description: Historical copy of Qt 2, adapted to compile on modern systems (circa.
+  2018)
 hasrepo: true
-icon: null
-members: []
-name: "Historical: Qt 2"
+identifier: qt2
+name: 'Historical: Qt 2'
 projectpath: historical/qt2
 repoactive: true
-repopath: qt2
-type: module
+repopath: /historical/qt2
diff --git a/projects-invent/kdevelop/kdev-control-flow-graph/metadata.yaml b/projects-invent/kdevelop/kdev-control-flow-graph/metadata.yaml
index 21ed9201..2ee0d7f3 100644
--- a/projects-invent/kdevelop/kdev-control-flow-graph/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-control-flow-graph/metadata.yaml
@@ -1,14 +1,8 @@
 description: A plugin for KDevelop 4 that visualizes the information from it's static
   code analysis in graphs.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Sandro Andrade
-  username: sandroandrade
+identifier: kdev-control-flow-graph
 name: Control Flow Graph
 projectpath: playground/devtools/plugins/kdev-control-flow-graph
 repoactive: true
-repopath: kdev-control-flow-graph
-type: project
+repopath: /kdevelop/kdev-control-flow-graph
diff --git a/projects-invent/kdevelop/kdev-css/metadata.yaml b/projects-invent/kdevelop/kdev-css/metadata.yaml
index 7420da0b..cc787d6b 100644
--- a/projects-invent/kdevelop/kdev-css/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-css/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Plugin for CSS Language Support
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-css
 name: Css Language Plugin
 projectpath: playground/devtools/plugins/kdev-css
 repoactive: true
-repopath: kdev-css
-type: project
+repopath: /kdevelop/kdev-css
diff --git a/projects-invent/kdevelop/kdev-embedded/metadata.yaml b/projects-invent/kdevelop/kdev-embedded/metadata.yaml
index 97c0e785..7085e17a 100644
--- a/projects-invent/kdevelop/kdev-embedded/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-embedded/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plugin for KDevelop to support the development of embedded systems
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Pereira
-  username: patrickpereira
+identifier: kdev-embedded
 name: KDevelop Embedded Systems Support
 projectpath: playground/devtools/plugins/kdev-embedded
 repoactive: true
-repopath: kdev-embedded
-type: project
+repopath: /kdevelop/kdev-embedded
diff --git a/projects-invent/kdevelop/kdev-executebrowser/metadata.yaml b/projects-invent/kdevelop/kdev-executebrowser/metadata.yaml
index f0d67fcd..b5d764ba 100644
--- a/projects-invent/kdevelop/kdev-executebrowser/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-executebrowser/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Plugin that starts a script by opening a webbrowser.
 hasrepo: true
-icon: null
-members:
-- displayname: Sven Brauch
-  username: brauch
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-executebrowser
 name: Execute Browser Plugin for KDevelop
 projectpath: playground/devtools/plugins/kdev-executebrowser
 repoactive: true
-repopath: kdev-executebrowser
-type: project
+repopath: /kdevelop/kdev-executebrowser
diff --git a/projects-invent/kdevelop/kdev-krazy2/metadata.yaml b/projects-invent/kdevelop/kdev-krazy2/metadata.yaml
index 3f96664e..3f4eaec0 100644
--- a/projects-invent/kdevelop/kdev-krazy2/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-krazy2/metadata.yaml
@@ -1,13 +1,7 @@
 description: A plugin for KDevelop to perform Krazy2 analysis
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: "Daniel Calvi\xF1o S\xE1nchez"
-  username: danxuliu
+identifier: kdev-krazy2
 name: Krazy2 Plugin for KDevelop
 projectpath: playground/devtools/plugins/kdev-krazy2
 repoactive: true
-repopath: kdev-krazy2
-type: project
+repopath: /kdevelop/kdev-krazy2
diff --git a/projects-invent/kdevelop/kdev-mercurial/metadata.yaml b/projects-invent/kdevelop/kdev-mercurial/metadata.yaml
index 37e2292c..4c321ed3 100644
--- a/projects-invent/kdevelop/kdev-mercurial/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-mercurial/metadata.yaml
@@ -1,13 +1,7 @@
 description: Mercurial support for KDevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Andrey Batyiev
-  username: abatyiev
+identifier: kdev-mercurial
 name: KDevelop Mercurial Plugin
 projectpath: playground/devtools/plugins/kdev-mercurial
 repoactive: true
-repopath: kdev-mercurial
-type: project
+repopath: /kdevelop/kdev-mercurial
diff --git a/projects-invent/kdevelop/kdev-php/metadata.yaml b/projects-invent/kdevelop/kdev-php/metadata.yaml
index 249119e3..118e043c 100644
--- a/projects-invent/kdevelop/kdev-php/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-php/metadata.yaml
@@ -1,13 +1,7 @@
 description: PHP Language Plugin for KDevelop/Quanta.
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdev-php
 name: PHP
 projectpath: extragear/kdevelop/plugins/kdev-php
 repoactive: true
-repopath: kdev-php
-type: project
+repopath: /kdevelop/kdev-php
diff --git a/projects-invent/kdevelop/kdev-python/metadata.yaml b/projects-invent/kdevelop/kdev-python/metadata.yaml
index 7d40da4f..514ed332 100644
--- a/projects-invent/kdevelop/kdev-python/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-python/metadata.yaml
@@ -2,16 +2,8 @@ description: 'KDevelop plugin which provides Python language support.
 
   !https://1.bp.blogspot.com/-sKbyd7w50R0/TmpLCqJy1tI/AAAAAAAAADk/cq4p1n9BlJ8/s1600/alpha2_1.png!'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Sven Brauch
-  username: brauch
+identifier: kdev-python
 name: KDevelop Python Support
 projectpath: extragear/kdevelop/plugins/kdev-python
 repoactive: true
-repopath: kdev-python
-type: project
+repopath: /kdevelop/kdev-python
diff --git a/projects-invent/kdevelop/kdev-ruby/metadata.yaml b/projects-invent/kdevelop/kdev-ruby/metadata.yaml
index cebd1fa5..e411f89c 100644
--- a/projects-invent/kdevelop/kdev-ruby/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-ruby/metadata.yaml
@@ -1,19 +1,7 @@
 description: KDevelop plugin which provides Ruby language support.
 hasrepo: true
-icon: null
-members:
-- displayname: "Miquel Sabat\xE9"
-  username: mssola
-- displayname: Alexander Dymo
-  username: dymo
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Kevin Funk
-  username: kfunk
+identifier: kdev-ruby
 name: Ruby
 projectpath: playground/devtools/plugins/kdev-ruby
 repoactive: true
-repopath: kdev-ruby
-type: project
+repopath: /kdevelop/kdev-ruby
diff --git a/projects-invent/kdevelop/kdev-upload/metadata.yaml b/projects-invent/kdevelop/kdev-upload/metadata.yaml
index 604073a9..f43e6681 100644
--- a/projects-invent/kdevelop/kdev-upload/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-upload/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDevelop Plugin for uploading files to a remote server.
 hasrepo: true
-icon: null
-members:
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-upload
 name: Upload Plugin for KDevelop
 projectpath: playground/devtools/plugins/kdev-upload
 repoactive: true
-repopath: kdev-upload
-type: project
+repopath: /kdevelop/kdev-upload
diff --git a/projects-invent/kdevelop/kdev-valgrind/metadata.yaml b/projects-invent/kdevelop/kdev-valgrind/metadata.yaml
index 39207435..53a4fbd3 100644
--- a/projects-invent/kdevelop/kdev-valgrind/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-valgrind/metadata.yaml
@@ -1,20 +1,8 @@
 description: kdev-valgrind is a plugin offering a full integration of the valgrind
   suite to KDevelop.
 hasrepo: true
-icon: null
-members:
-- displayname: Lionel Duc
-  username: lionelduc
-- displayname: Mathieu Lornac
-  username: mathieulornac
-- displayname: "S\xE9bastien Rannou"
-  username: aimxhaisse
-- displayname: Damien Coppel
-  username: damiencoppel
-- displayname: Kevin Funk
-  username: kfunk
+identifier: kdev-valgrind
 name: Valgrind
 projectpath: playground/devtools/plugins/kdev-valgrind
 repoactive: true
-repopath: kdev-valgrind
-type: project
+repopath: /kdevelop/kdev-valgrind
diff --git a/projects-invent/kdevelop/kdev-verapp/metadata.yaml b/projects-invent/kdevelop/kdev-verapp/metadata.yaml
index dca464fc..5b1b4bfb 100644
--- a/projects-invent/kdevelop/kdev-verapp/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-verapp/metadata.yaml
@@ -1,11 +1,7 @@
 description: Verapp support for KDevelop 5
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
+identifier: kdev-verapp
 name: KDevelop Verapp Support
 projectpath: playground/devtools/plugins/kdev-verapp
 repoactive: true
-repopath: kdev-verapp
-type: project
+repopath: /kdevelop/kdev-verapp
diff --git a/projects-invent/kdevelop/kdev-xdebug/metadata.yaml b/projects-invent/kdevelop/kdev-xdebug/metadata.yaml
index 488ca9eb..077ace3d 100644
--- a/projects-invent/kdevelop/kdev-xdebug/metadata.yaml
+++ b/projects-invent/kdevelop/kdev-xdebug/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDevelop Debugger plugin for Php using XDebug
 hasrepo: true
-icon: null
-members:
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-xdebug
 name: XDebug Plugin for KDevelop
 projectpath: playground/devtools/plugins/kdev-xdebug
 repoactive: true
-repopath: kdev-xdebug
-type: project
+repopath: /kdevelop/kdev-xdebug
diff --git a/projects-invent/kdevelop/kdevelop-pg-qt/metadata.yaml b/projects-invent/kdevelop/kdevelop-pg-qt/metadata.yaml
index 1c907622..a7b2ba2c 100644
--- a/projects-invent/kdevelop/kdevelop-pg-qt/metadata.yaml
+++ b/projects-invent/kdevelop/kdevelop-pg-qt/metadata.yaml
@@ -4,18 +4,8 @@ description: 'KDevelop Parser Generator as used in e.g. the PHP language plugin
 
   Documentation can be found on techbase: https://techbase.kde.org/Development/KDevelop-PG-Qt_Introduction'
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: "Jonathan Schmidt-Domin\xE9"
-  username: schmidt-domine
+identifier: kdevelop-pg-qt
 name: KDevelop-PG-Qt
 projectpath: extragear/kdevelop/utilities/kdevelop-pg-qt
 repoactive: true
-repopath: kdevelop-pg-qt
-type: project
+repopath: /kdevelop/kdevelop-pg-qt
diff --git a/projects-invent/kdevelop/kdevelop/metadata.yaml b/projects-invent/kdevelop/kdevelop/metadata.yaml
index c0d5957a..dc533e51 100644
--- a/projects-invent/kdevelop/kdevelop/metadata.yaml
+++ b/projects-invent/kdevelop/kdevelop/metadata.yaml
@@ -1,15 +1,8 @@
-description: KDevelop, a featureful, plugin-extensible IDE for C/C++ and other programming languages
+description: KDevelop, a featureful, plugin-extensible IDE for C/C++ and other programming
+  languages
 hasrepo: true
-icon: kdevelop
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdevelop
 name: KDevelop
 projectpath: extragear/kdevelop/kdevelop
 repoactive: true
-repopath: kdevelop
-type: project
+repopath: /kdevelop/kdevelop
diff --git a/projects-invent/libraries/asynqt/metadata.yaml b/projects-invent/libraries/asynqt/metadata.yaml
index 50cb9a23..a360d2d3 100644
--- a/projects-invent/libraries/asynqt/metadata.yaml
+++ b/projects-invent/libraries/asynqt/metadata.yaml
@@ -1,12 +1,8 @@
 description: A framework which provides convenience methods which make QFuture actually
   useful.
 hasrepo: true
-icon: null
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: asynqt
 name: AsynQt Framework
 projectpath: playground/libs/asynqt
 repoactive: false
-repopath: asynqt
-type: project
+repopath: /libraries/asynqt
diff --git a/projects-invent/libraries/atcore/metadata.yaml b/projects-invent/libraries/atcore/metadata.yaml
index 37ace597..e0d40c2d 100644
--- a/projects-invent/libraries/atcore/metadata.yaml
+++ b/projects-invent/libraries/atcore/metadata.yaml
@@ -1,17 +1,7 @@
-description: '3D Printer Communication Library'
+description: 3D Printer Communication Library
 hasrepo: true
-icon: null
-members:
-- displayname: Chris Rizzitello
-  username: rizzitello
-- displayname: Patrick Jose Pereira
-  username: patrickelectric
-- displayname: Lays Rodrigues
-  username: laysrodrigues
-- displayname: Tomaz Canabrava
-  username: tcanabrava
+identifier: atcore
 name: Atcore
 projectpath: extragear/base/atcore
 repoactive: true
-repopath: atcore
-type: project
+repopath: /libraries/atcore
diff --git a/projects-invent/libraries/baloo-widgets/metadata.yaml b/projects-invent/libraries/baloo-widgets/metadata.yaml
index 56300314..23d5c3a5 100644
--- a/projects-invent/libraries/baloo-widgets/metadata.yaml
+++ b/projects-invent/libraries/baloo-widgets/metadata.yaml
@@ -1,11 +1,7 @@
 description: Widgets for Baloo
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: baloo-widgets
 name: Baloo Widgets
 projectpath: kde/applications/baloo-widgets
 repoactive: true
-repopath: baloo-widgets
-type: project
+repopath: /libraries/baloo-widgets
diff --git a/projects-invent/libraries/binschema/metadata.yaml b/projects-invent/libraries/binschema/metadata.yaml
index 098084ce..903260c1 100644
--- a/projects-invent/libraries/binschema/metadata.yaml
+++ b/projects-invent/libraries/binschema/metadata.yaml
@@ -1,11 +1,8 @@
-description: Define binary file formats via a schema. Code for reading and writing is generated.
+description: Define binary file formats via a schema. Code for reading and writing
+  is generated.
 hasrepo: true
-icon: null
-members:
-- displayname: Jos van den Oever
-  username: vandenoever
+identifier: binschema
 name: Schemas for binaries
 projectpath: playground/libs/binschema
 repoactive: true
-repopath: binschema
-type: project
+repopath: /libraries/binschema
diff --git a/projects-invent/libraries/cxx11-cmake-modules/metadata.yaml b/projects-invent/libraries/cxx11-cmake-modules/metadata.yaml
index a8ccaa4c..121ab98a 100644
--- a/projects-invent/libraries/cxx11-cmake-modules/metadata.yaml
+++ b/projects-invent/libraries/cxx11-cmake-modules/metadata.yaml
@@ -1,13 +1,7 @@
 description: CMake modules for detecting C++11 features supported by the compiler
 hasrepo: true
-icon: null
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: cxx11-cmake-modules
 name: CMake C++11 modules
 projectpath: playground/base/cxx11-cmake-modules
 repoactive: true
-repopath: cxx11-cmake-modules
-type: project
+repopath: /libraries/cxx11-cmake-modules
diff --git a/projects-invent/libraries/kasync/metadata.yaml b/projects-invent/libraries/kasync/metadata.yaml
index 09bfaed2..bd1e31d7 100644
--- a/projects-invent/libraries/kasync/metadata.yaml
+++ b/projects-invent/libraries/kasync/metadata.yaml
@@ -1,11 +1,7 @@
 description: C++ library for controlling asynchronous tasks
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: kasync
 name: KAsync
 projectpath: playground/libs/kasync
 repoactive: true
-repopath: kasync
-type: project
+repopath: /libraries/kasync
diff --git a/projects-invent/libraries/kcgroups/metadata.yaml b/projects-invent/libraries/kcgroups/metadata.yaml
index ff7fe979..fd9ea127 100644
--- a/projects-invent/libraries/kcgroups/metadata.yaml
+++ b/projects-invent/libraries/kcgroups/metadata.yaml
@@ -1,11 +1,8 @@
-description: This library allows easy access to currently running applications and their control groups resources, using the systemd dbus API.
+description: This library allows easy access to currently running applications and
+  their control groups resources, using the systemd dbus API.
 hasrepo: true
-icon: null
-members:
-- displayname: Henri Chain
-  username: hchain
+identifier: kcgroups
 name: kcgroups
 projectpath: playground/libs/kcgroups
 repoactive: true
-repopath: kcgroups
-type: project
+repopath: /libraries/kcgroups
diff --git a/projects-invent/libraries/kdb/metadata.yaml b/projects-invent/libraries/kdb/metadata.yaml
index 668a4e02..d59b314f 100644
--- a/projects-invent/libraries/kdb/metadata.yaml
+++ b/projects-invent/libraries/kdb/metadata.yaml
@@ -1,13 +1,7 @@
 description: A database connectivity and creation framework for various database vendors
 hasrepo: true
-icon: null
-members:
-- displayname: Adam Pigg
-  username: piggz
-- displayname: "Jaros\u0142aw Staniek"
-  username: staniek
+identifier: kdb
 name: KDb
 projectpath: extragear/libs/kdb
 repoactive: true
-repopath: kdb
-type: project
+repopath: /libraries/kdb
diff --git a/projects-invent/libraries/kdocumentstore/metadata.yaml b/projects-invent/libraries/kdocumentstore/metadata.yaml
index 85e9be34..142fbb5e 100644
--- a/projects-invent/libraries/kdocumentstore/metadata.yaml
+++ b/projects-invent/libraries/kdocumentstore/metadata.yaml
@@ -1,11 +1,7 @@
 description: A library to store QVariants and QVariantMaps.
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: kdocumentstore
 name: KDocumentStore
 projectpath: playground/libs/kdocumentstore
 repoactive: false
-repopath: kdocumentstore
-type: project
+repopath: /libraries/kdocumentstore
diff --git a/projects-invent/libraries/kirigami-addons/metadata.yaml b/projects-invent/libraries/kirigami-addons/metadata.yaml
index ad1c882f..058c422f 100644
--- a/projects-invent/libraries/kirigami-addons/metadata.yaml
+++ b/projects-invent/libraries/kirigami-addons/metadata.yaml
@@ -1,11 +1,7 @@
 description: Addons for the Kirigami Framework
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: kirigami-addons
 name: Kirigami Addons
 projectpath: playground/libs/kirigami-addons
 repoactive: true
-repopath: kirigami-addons
-type: project
+repopath: /libraries/kirigami-addons
diff --git a/projects-invent/libraries/kproperty/metadata.yaml b/projects-invent/libraries/kproperty/metadata.yaml
index 088ef399..5a2bff50 100644
--- a/projects-invent/libraries/kproperty/metadata.yaml
+++ b/projects-invent/libraries/kproperty/metadata.yaml
@@ -1,14 +1,8 @@
 description: A property editing framework with editor widget similar to what is known
   from Qt Designer.
 hasrepo: true
-icon: null
-members:
-- displayname: Adam Pigg
-  username: piggz
-- displayname: "Jaros\u0142aw Staniek"
-  username: staniek
+identifier: kproperty
 name: KProperty
 projectpath: extragear/libs/kproperty
 repoactive: true
-repopath: kproperty
-type: project
+repopath: /libraries/kproperty
diff --git a/projects-invent/libraries/kpublictransport/metadata.yaml b/projects-invent/libraries/kpublictransport/metadata.yaml
index ecb75db0..e0dd20c4 100644
--- a/projects-invent/libraries/kpublictransport/metadata.yaml
+++ b/projects-invent/libraries/kpublictransport/metadata.yaml
@@ -1,11 +1,8 @@
-description: Library to assist with accessing public transport timetables and other information
+description: Library to assist with accessing public transport timetables and other
+  information
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: kpublictransport
 name: Public Transport Information Library
 projectpath: extragear/libs/kpublictransport
 repoactive: true
-repopath: kpublictransport
-type: project
+repopath: /libraries/kpublictransport
diff --git a/projects-invent/libraries/kqtquickcharts/metadata.yaml b/projects-invent/libraries/kqtquickcharts/metadata.yaml
index 8df7f11e..cbc21736 100644
--- a/projects-invent/libraries/kqtquickcharts/metadata.yaml
+++ b/projects-invent/libraries/kqtquickcharts/metadata.yaml
@@ -1,11 +1,7 @@
 description: A QtQuick plugin to render beautiful and interactive charts
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Gottfried
-  username: gottfried
+identifier: kqtquickcharts
 name: kqtquickcharts
 projectpath: kde/kdeedu/kqtquickcharts
 repoactive: true
-repopath: kqtquickcharts
-type: project
+repopath: /libraries/kqtquickcharts
diff --git a/projects-invent/libraries/kquickitemviews/metadata.yaml b/projects-invent/libraries/kquickitemviews/metadata.yaml
index 3a84e9bd..57ed0cc1 100644
--- a/projects-invent/libraries/kquickitemviews/metadata.yaml
+++ b/projects-invent/libraries/kquickitemviews/metadata.yaml
@@ -1,11 +1,7 @@
 description: Qt Model Compatibility layer for QML
 hasrepo: true
-icon: null
-members:
-- displayname: Emmanuel Lepage Vallee
-  username: lepagevalleeemmanuel
+identifier: kquickitemviews
 name: KQuickItemViews
 projectpath: playground/libs/kquickitemviews
 repoactive: true
-repopath: kquickitemviews
-type: project
+repopath: /libraries/kquickitemviews
diff --git a/projects-invent/libraries/kreport/metadata.yaml b/projects-invent/libraries/kreport/metadata.yaml
index 532dc125..48e4255e 100644
--- a/projects-invent/libraries/kreport/metadata.yaml
+++ b/projects-invent/libraries/kreport/metadata.yaml
@@ -1,13 +1,7 @@
 description: A framework for creation and generation of reports in multiple formats
 hasrepo: true
-icon: null
-members:
-- displayname: Adam Pigg
-  username: piggz
-- displayname: "Jaros\u0142aw Staniek"
-  username: staniek
+identifier: kreport
 name: KReport
 projectpath: extragear/libs/kreport
 repoactive: true
-repopath: kreport
-type: project
+repopath: /libraries/kreport
diff --git a/projects-invent/libraries/kross-interpreters/metadata.yaml b/projects-invent/libraries/kross-interpreters/metadata.yaml
index 61c2bb13..0da6b1ad 100644
--- a/projects-invent/libraries/kross-interpreters/metadata.yaml
+++ b/projects-invent/libraries/kross-interpreters/metadata.yaml
@@ -1,13 +1,7 @@
 description: Language interpreters to enable in-process scripting with Kross.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Sebastian Sauer
-  username: sebsauer
+identifier: kross-interpreters
 name: Kross Interpreters
 projectpath: kde/kdebindings/kross-interpreters
 repoactive: true
-repopath: kross-interpreters
-type: project
+repopath: /libraries/kross-interpreters
diff --git a/projects-invent/libraries/kuserfeedback/metadata.yaml b/projects-invent/libraries/kuserfeedback/metadata.yaml
index 238c43c9..9024356b 100644
--- a/projects-invent/libraries/kuserfeedback/metadata.yaml
+++ b/projects-invent/libraries/kuserfeedback/metadata.yaml
@@ -1,11 +1,8 @@
-description: Framework for collecting user feedback for applications via telemetry and surveys
+description: Framework for collecting user feedback for applications via telemetry
+  and surveys
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: kuserfeedback
 name: User Feedback Collection Framework
 projectpath: extragear/libs/kuserfeedback
 repoactive: true
-repopath: kuserfeedback
-type: project
+repopath: /libraries/kuserfeedback
diff --git a/projects-invent/libraries/kwebkitpart/metadata.yaml b/projects-invent/libraries/kwebkitpart/metadata.yaml
index fd8e24fe..2eed3fa9 100644
--- a/projects-invent/libraries/kwebkitpart/metadata.yaml
+++ b/projects-invent/libraries/kwebkitpart/metadata.yaml
@@ -1,15 +1,7 @@
 description: A WebKit browser component available as KPart
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Dawit Alemayehu
-  username: adawit
-- displayname: Johannes Obermayr
-  username: jobermayr
+identifier: kwebkitpart
 name: kwebkitpart
 projectpath: extragear/base/kwebkitpart
 repoactive: true
-repopath: kwebkitpart
-type: project
+repopath: /libraries/kwebkitpart
diff --git a/projects-invent/libraries/kwindowsaddons/metadata.yaml b/projects-invent/libraries/kwindowsaddons/metadata.yaml
index b723c54d..75c699c7 100644
--- a/projects-invent/libraries/kwindowsaddons/metadata.yaml
+++ b/projects-invent/libraries/kwindowsaddons/metadata.yaml
@@ -1,11 +1,7 @@
 description: Runtime components for KDE software on Windows.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kwindowsaddons
 name: KF5 Windows Addons
 projectpath: playground/base/kwindowsaddons
 repoactive: true
-repopath: kwindowsaddons
-type: project
+repopath: /libraries/kwindowsaddons
diff --git a/projects-invent/libraries/libkimageannotator/metadata.yaml b/projects-invent/libraries/libkimageannotator/metadata.yaml
index 2ce1cbfd..b913da2a 100644
--- a/projects-invent/libraries/libkimageannotator/metadata.yaml
+++ b/projects-invent/libraries/libkimageannotator/metadata.yaml
@@ -1,11 +1,7 @@
 description: Utility for annotating images
 hasrepo: true
-icon: null
-members:
-- displayname: Damir Porobic
-  username: dporobic
+identifier: libkimageannotator
 name: KImageAnnotator
 projectpath: playground/libs/libkimageannotator
 repoactive: true
-repopath: libkimageannotator
-type: project
+repopath: /libraries/libkimageannotator
diff --git a/projects-invent/libraries/libkubuntu/metadata.yaml b/projects-invent/libraries/libkubuntu/metadata.yaml
index c4cbc59b..cce6121a 100644
--- a/projects-invent/libraries/libkubuntu/metadata.yaml
+++ b/projects-invent/libraries/libkubuntu/metadata.yaml
@@ -1,13 +1,7 @@
 description: library for Kubuntu platform integration
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: libkubuntu
 name: LibKubuntu
 projectpath: playground/base/libkubuntu
 repoactive: false
-repopath: libkubuntu
-type: project
+repopath: /libraries/libkubuntu
diff --git a/projects-invent/libraries/libkvkontakte/metadata.yaml b/projects-invent/libraries/libkvkontakte/metadata.yaml
index 545079bd..55f5f6d9 100644
--- a/projects-invent/libraries/libkvkontakte/metadata.yaml
+++ b/projects-invent/libraries/libkvkontakte/metadata.yaml
@@ -1,12 +1,8 @@
 description: KF5-based C++ library for asynchronous interaction with VK social network
   via its web API.
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Potashev
-  username: aspotashev
+identifier: libkvkontakte
 name: Library implementing VK.com API
 projectpath: extragear/libs/libkvkontakte
 repoactive: true
-repopath: libkvkontakte
-type: project
+repopath: /libraries/libkvkontakte
diff --git a/projects-invent/libraries/libmediawiki/metadata.yaml b/projects-invent/libraries/libmediawiki/metadata.yaml
index d90dbf02..434d7ddb 100644
--- a/projects-invent/libraries/libmediawiki/metadata.yaml
+++ b/projects-invent/libraries/libmediawiki/metadata.yaml
@@ -13,26 +13,8 @@ description: 'libmediawiki is a KDE C++ interface for "MediaWiki":https://www.me
 
   !https://farm6.static.flickr.com/5062/5564467832_98ec55be99_b.jpg!'
 hasrepo: true
-icon: null
-members:
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Manuel Campomanes
-  username: campomanes
-- displayname: Alexandre Mendes
-  username: amendes
-- displayname: Richard Moore
-  username: rich
-- displayname: Andi Clemens
-  username: aclemens
-- displayname: Guillaume Hormiere
-  username: hormiere
-- displayname: Ludovic Delfau
-  username: ludovicdelfau
+identifier: libmediawiki
 name: libmediawiki
 projectpath: extragear/libs/libmediawiki
 repoactive: true
-repopath: libmediawiki
-type: project
+repopath: /libraries/libmediawiki
diff --git a/projects-invent/libraries/libqaccessibilityclient/metadata.yaml b/projects-invent/libraries/libqaccessibilityclient/metadata.yaml
index c4984499..de92b7eb 100644
--- a/projects-invent/libraries/libqaccessibilityclient/metadata.yaml
+++ b/projects-invent/libraries/libqaccessibilityclient/metadata.yaml
@@ -1,12 +1,8 @@
 description: Helper to make writing accessibility tools easier. Used by screen readers
   for example.
 hasrepo: true
-icon: null
-members:
-- displayname: Frederik Gladhorn
-  username: gladhorn
+identifier: libqaccessibilityclient
 name: Accessibilty tools helper library
 projectpath: extragear/libs/libqaccessibilityclient
 repoactive: true
-repopath: libqaccessibilityclient 
-type: project
+repopath: /libraries/libqaccessibilityclient
diff --git a/projects-invent/libraries/libqgit2/metadata.yaml b/projects-invent/libraries/libqgit2/metadata.yaml
index 1220034b..6e5457cf 100644
--- a/projects-invent/libraries/libqgit2/metadata.yaml
+++ b/projects-invent/libraries/libqgit2/metadata.yaml
@@ -1,13 +1,7 @@
 description: A Qt wrapper library around the libgit2 git access library
 hasrepo: true
-icon: null
-members:
-- displayname: Aki Koskinen
-  username: akikoskinen
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: libqgit2
 name: libgit2 bindings for Qt
 projectpath: playground/libs/libqgit2
 repoactive: false
-repopath: libqgit2
-type: project
+repopath: /libraries/libqgit2
diff --git a/projects-invent/libraries/libqsystemd/metadata.yaml b/projects-invent/libraries/libqsystemd/metadata.yaml
index 442c55ed..8f7752e9 100644
--- a/projects-invent/libraries/libqsystemd/metadata.yaml
+++ b/projects-invent/libraries/libqsystemd/metadata.yaml
@@ -1,11 +1,7 @@
 description: A simple class interface for apps who want to communicate with systemd.
 hasrepo: true
-icon: null
-members:
-- displayname: Stefan Majewsky
-  username: majewsky
+identifier: libqsystemd
 name: Qt systemd interface library
 projectpath: playground/libs/libqsystemd
 repoactive: false
-repopath: libqsystemd
-type: project
+repopath: /libraries/libqsystemd
diff --git a/projects-invent/libraries/libtmdbqt/metadata.yaml b/projects-invent/libraries/libtmdbqt/metadata.yaml
index 4f6a4a40..7a62410f 100644
--- a/projects-invent/libraries/libtmdbqt/metadata.yaml
+++ b/projects-invent/libraries/libtmdbqt/metadata.yaml
@@ -1,12 +1,8 @@
 description: This library can retrieve information about movies from the Tmdb web
   service.
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
+identifier: libtmdbqt
 name: libtmdbqt
 projectpath: playground/network/libtmdbqt
 repoactive: true
-repopath: libtmdbqt
-type: project
+repopath: /libraries/libtmdbqt
diff --git a/projects-invent/libraries/metadata.yaml b/projects-invent/libraries/metadata.yaml
index d0487741..4e21b485 100644
--- a/projects-invent/libraries/metadata.yaml
+++ b/projects-invent/libraries/metadata.yaml
@@ -1,9 +1,7 @@
 description: Extragear libraries.
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Libs
 projectpath: extragear/libs
 repoactive: false
-repopath: null
-type: module
+repopath: /libraries
diff --git a/projects-invent/libraries/phonon-gstreamer/metadata.yaml b/projects-invent/libraries/phonon-gstreamer/metadata.yaml
index 5a5073ce..7309a818 100644
--- a/projects-invent/libraries/phonon-gstreamer/metadata.yaml
+++ b/projects-invent/libraries/phonon-gstreamer/metadata.yaml
@@ -1,17 +1,7 @@
 description: A GStreamer backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Rohan Garg
-  username: garg
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: phonon-gstreamer
 name: Phonon GStreamer
 projectpath: kdesupport/phonon-gstreamer
 repoactive: true
-repopath: phonon-gstreamer
-type: project
+repopath: /libraries/phonon-gstreamer
diff --git a/projects-invent/libraries/phonon-vlc/metadata.yaml b/projects-invent/libraries/phonon-vlc/metadata.yaml
index fd166adb..99cc3674 100644
--- a/projects-invent/libraries/phonon-vlc/metadata.yaml
+++ b/projects-invent/libraries/phonon-vlc/metadata.yaml
@@ -1,15 +1,7 @@
 description: A VLC backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jean-Baptiste Kempf
-  username: kempf
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: phonon-vlc
 name: Phonon VLC
 projectpath: kdesupport/phonon-vlc
 repoactive: true
-repopath: phonon-vlc
-type: project
+repopath: /libraries/phonon-vlc
diff --git a/projects-invent/libraries/phonon/metadata.yaml b/projects-invent/libraries/phonon/metadata.yaml
index dc89a1af..2fb9bf90 100644
--- a/projects-invent/libraries/phonon/metadata.yaml
+++ b/projects-invent/libraries/phonon/metadata.yaml
@@ -1,13 +1,7 @@
 description: The Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: phonon
 name: Phonon
 projectpath: kdesupport/phonon
 repoactive: true
-repopath: phonon
-type: project
+repopath: /libraries/phonon
diff --git a/projects-invent/libraries/plasma-wayland-protocols/metadata.yaml b/projects-invent/libraries/plasma-wayland-protocols/metadata.yaml
index 9b1dba4a..d1e3a214 100644
--- a/projects-invent/libraries/plasma-wayland-protocols/metadata.yaml
+++ b/projects-invent/libraries/plasma-wayland-protocols/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma Specific Protocols for Wayland
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: plasma-wayland-protocols
 name: Plasma Wayland Protocols
 projectpath: playground/libs/plasma-wayland-protocols
 repoactive: true
-repopath: plasma-wayland-protocols
-type: project
+repopath: /libraries/plasma-wayland-protocols
diff --git a/projects-invent/libraries/polkit-qt-1/metadata.yaml b/projects-invent/libraries/polkit-qt-1/metadata.yaml
index 20a8ca44..9eb4f9a4 100644
--- a/projects-invent/libraries/polkit-qt-1/metadata.yaml
+++ b/projects-invent/libraries/polkit-qt-1/metadata.yaml
@@ -5,16 +5,8 @@ description: 'Qt wrapper around polkit-1 client libraries, used by kdelibs to pr
   Please be sure to read and follow "the polkit-KDE contribution and development guidelines":https://techbase.kde.org/Polkit-KDE_development_guidelines
   to contribute code.'
 hasrepo: true
-icon: null
-members:
-- displayname: "Jaroslav \u0158ezn\xEDk"
-  username: jreznik
-- displayname: Dario Freddi
-  username: dafre
-- displayname: "Martin B\u0159\xEDza"
-  username: mbriza
+identifier: polkit-qt-1
 name: Polkit Qt
 projectpath: kdesupport/polkit-qt-1
 repoactive: true
-repopath: polkit-qt-1
-type: module
+repopath: /libraries/polkit-qt-1
diff --git a/projects-invent/libraries/pulseaudio-qt/metadata.yaml b/projects-invent/libraries/pulseaudio-qt/metadata.yaml
index f7f8dce5..d155648b 100644
--- a/projects-invent/libraries/pulseaudio-qt/metadata.yaml
+++ b/projects-invent/libraries/pulseaudio-qt/metadata.yaml
@@ -1,13 +1,7 @@
 description: Qt bindings for libpulse
 hasrepo: true
-icon: null
-members:
-- displayname: David Rosca
-  username: drosca
-- displayname: Nicolas Fella
-  username: nicolasfella
+identifier: pulseaudio-qt
 name: PulseAudio-Qt
 projectpath: extragear/libs/pulseaudio-qt
 repoactive: true
-repopath: pulseaudio-qt
-type: project
+repopath: /libraries/pulseaudio-qt
diff --git a/projects-invent/libraries/pykde5/metadata.yaml b/projects-invent/libraries/pykde5/metadata.yaml
index 09fc282c..d81e7a7c 100644
--- a/projects-invent/libraries/pykde5/metadata.yaml
+++ b/projects-invent/libraries/pykde5/metadata.yaml
@@ -1,11 +1,7 @@
 description: Python bindings for KF5
 hasrepo: true
-icon: null
-members:
-- displayname: Simon Edwards
-  username: sedwards
+identifier: pykde5
 name: PyKDE 5
 projectpath: kde/kdebindings/python/pykde5
 repoactive: false
-repopath: pykde5
-type: project
+repopath: /libraries/pykde5
diff --git a/projects-invent/libraries/qca/metadata.yaml b/projects-invent/libraries/qca/metadata.yaml
index 180f4c03..d6af9753 100644
--- a/projects-invent/libraries/qca/metadata.yaml
+++ b/projects-invent/libraries/qca/metadata.yaml
@@ -1,20 +1,8 @@
 description: QCA (Qt Cryptographic Architecture) provides a straightforward and cross-platform
   crypto API
 hasrepo: true
-icon: null
-members:
-- displayname: Ivan Romanov
-  username: iromanov
-- displayname: David Faure
-  username: dfaure
-- displayname: Justin Karneges
-  username: infiniti
-- displayname: Ben Cooksley
-  username: bcooksley
-- displayname: "Andr\xE9 W\xF6bbeking"
-  username: woebbe
+identifier: qca
 name: QCA
 projectpath: kdesupport/qca
 repoactive: true
-repopath: qca
-type: module
+repopath: /libraries/qca
diff --git a/projects-invent/libraries/qtjolie/metadata.yaml b/projects-invent/libraries/qtjolie/metadata.yaml
index fc09f3ac..df5169f7 100644
--- a/projects-invent/libraries/qtjolie/metadata.yaml
+++ b/projects-invent/libraries/qtjolie/metadata.yaml
@@ -1,11 +1,7 @@
 description: Qt binding to use the Jolie service oriented framework.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
+identifier: qtjolie
 name: QtJolie
 projectpath: playground/libs/qtjolie
 repoactive: true
-repopath: qtjolie
-type: project
+repopath: /libraries/qtjolie
diff --git a/projects-invent/libraries/snorenotify/metadata.yaml b/projects-invent/libraries/snorenotify/metadata.yaml
index d52fa4a1..a3f141a0 100644
--- a/projects-invent/libraries/snorenotify/metadata.yaml
+++ b/projects-invent/libraries/snorenotify/metadata.yaml
@@ -1,11 +1,7 @@
 description: Snorenotify is a multi platform Qt notification framework.
 hasrepo: true
-icon: null
-members:
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: snorenotify
 name: Snore notification framework
 projectpath: playground/libs/snorenotify
 repoactive: true
-repopath: snorenotify
-type: project
+repopath: /libraries/snorenotify
diff --git a/projects-invent/libraries/snoretoast/metadata.yaml b/projects-invent/libraries/snoretoast/metadata.yaml
index 23f56588..605a0f03 100644
--- a/projects-invent/libraries/snoretoast/metadata.yaml
+++ b/projects-invent/libraries/snoretoast/metadata.yaml
@@ -1,11 +1,7 @@
 description: A command line application capable of creating Windows Toast notifications.
 hasrepo: true
-icon: null
-members:
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: snoretoast
 name: Snore toast notifications
 projectpath: playground/libs/snoretoast
 repoactive: false
-repopath: snoretoast
-type: project
+repopath: /libraries/snoretoast
diff --git a/projects-invent/libraries/twine2/metadata.yaml b/projects-invent/libraries/twine2/metadata.yaml
index 10289cc9..8e528242 100644
--- a/projects-invent/libraries/twine2/metadata.yaml
+++ b/projects-invent/libraries/twine2/metadata.yaml
@@ -1,13 +1,7 @@
 description: Processes C++ header files into .sip files for Riverbank SIP
 hasrepo: true
-icon: null
-members:
-- displayname: "Dennis Nienh\xFCser"
-  username: nienhueser
-- displayname: Simon Edwards
-  username: sedwards
+identifier: twine2
 name: twine2 - Python Bindings SIP Updater
 projectpath: playground/bindings/twine2
 repoactive: true
-repopath: twine2
-type: project
+repopath: /libraries/twine2
diff --git a/projects-invent/libraries/upnp-lib-qt/metadata.yaml b/projects-invent/libraries/upnp-lib-qt/metadata.yaml
index d6a11847..04b206c5 100644
--- a/projects-invent/libraries/upnp-lib-qt/metadata.yaml
+++ b/projects-invent/libraries/upnp-lib-qt/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'UPnP Wrapper for Qt'
+description: UPnP Wrapper for Qt
 hasrepo: true
-icon: null
-members:
-- displayname: Matthieu Gallien
-  username: mgallien
+identifier: upnp-lib-qt
 name: UPnP Qt Library
 projectpath: playground/base/upnp-lib-qt
 repoactive: true
-repopath: upnp-lib-qt
-type: project
+repopath: /libraries/upnp-lib-qt
diff --git a/projects-invent/libraries/xdg-portal-test-kde/metadata.yaml b/projects-invent/libraries/xdg-portal-test-kde/metadata.yaml
index 8c73bd3c..374cb828 100644
--- a/projects-invent/libraries/xdg-portal-test-kde/metadata.yaml
+++ b/projects-invent/libraries/xdg-portal-test-kde/metadata.yaml
@@ -1,11 +1,7 @@
-description: "Test application for Flatpak portals and Qt flatpak platform plugin"
+description: Test application for Flatpak portals and Qt flatpak platform plugin
 hasrepo: true
-icon: null
-members:
-- displayname: Jan Grulich
-  username: grulich
-name: "Flatpak Support: Testing Application for Portals"
+identifier: xdg-portal-test-kde
+name: 'Flatpak Support: Testing Application for Portals'
 projectpath: playground/base/xdg-portal-test-kde
 repoactive: true
-repopath: xdg-portal-test-kde
-type: project
+repopath: /libraries/xdg-portal-test-kde
diff --git a/projects-invent/maui/buho/metadata.yaml b/projects-invent/maui/buho/metadata.yaml
index 631a6caf..e90c5145 100644
--- a/projects-invent/maui/buho/metadata.yaml
+++ b/projects-invent/maui/buho/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: buho
 name: Buho Task and Note Keeper
 projectpath: playground/base/buho
 repoactive: true
-repopath: buho
-type: project
+repopath: /maui/buho
diff --git a/projects-invent/maui/index-fm/metadata.yaml b/projects-invent/maui/index-fm/metadata.yaml
index e5a03d4b..9b078e16 100644
--- a/projects-invent/maui/index-fm/metadata.yaml
+++ b/projects-invent/maui/index-fm/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: index-fm
 name: Index File Manager
 projectpath: playground/base/index-fm
 repoactive: true
-repopath: index-fm
-type: project
+repopath: /maui/index-fm
diff --git a/projects-invent/maui/maui-accounts-dbus-daemon/metadata.yaml b/projects-invent/maui/maui-accounts-dbus-daemon/metadata.yaml
index f3e2bb30..f9a8563b 100644
--- a/projects-invent/maui/maui-accounts-dbus-daemon/metadata.yaml
+++ b/projects-invent/maui/maui-accounts-dbus-daemon/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-accounts-dbus-daemon
 name: Maui Accounts DBus Daemon
 projectpath: playground/base/maui-accounts-dbus-daemon
 repoactive: true
-repopath: maui-accounts-dbus-daemon
-type: project
+repopath: /maui/maui-accounts-dbus-daemon
diff --git a/projects-invent/maui/maui-accounts-gui/metadata.yaml b/projects-invent/maui/maui-accounts-gui/metadata.yaml
index 91ee9428..b808db72 100644
--- a/projects-invent/maui/maui-accounts-gui/metadata.yaml
+++ b/projects-invent/maui/maui-accounts-gui/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-accounts-gui
 name: Maui Android Integration
 projectpath: playground/base/maui-accounts-gui
 repoactive: true
-repopath: maui-accounts-gui
-type: project
+repopath: /maui/maui-accounts-gui
diff --git a/projects-invent/maui/maui-dialer/metadata.yaml b/projects-invent/maui/maui-dialer/metadata.yaml
index e983fead..7925fdb3 100644
--- a/projects-invent/maui/maui-dialer/metadata.yaml
+++ b/projects-invent/maui/maui-dialer/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-dialer
 name: Maui Contacts and Dialer
 projectpath: playground/base/maui-dialer
 repoactive: true
-repopath: maui-dialer
-type: project
+repopath: /maui/maui-dialer
diff --git a/projects-invent/maui/maui-libdavclient/metadata.yaml b/projects-invent/maui/maui-libdavclient/metadata.yaml
index 1a21cc7a..304b4ebf 100644
--- a/projects-invent/maui/maui-libdavclient/metadata.yaml
+++ b/projects-invent/maui/maui-libdavclient/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-libdavclient
 name: Maui DAV Protocol Support
 projectpath: playground/base/maui-libdavclient
 repoactive: true
-repopath: maui-libdavclient
-type: project
+repopath: /maui/maui-libdavclient
diff --git a/projects-invent/maui/maui-library/metadata.yaml b/projects-invent/maui/maui-library/metadata.yaml
index 3fa7ea5e..2a30d969 100644
--- a/projects-invent/maui/maui-library/metadata.yaml
+++ b/projects-invent/maui/maui-library/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-library
 name: Library Document and EBook Collection Manager
 projectpath: playground/base/maui-library
 repoactive: true
-repopath: maui-library
-type: project
+repopath: /maui/maui-library
diff --git a/projects-invent/maui/maui-pix/metadata.yaml b/projects-invent/maui/maui-pix/metadata.yaml
index 958b21b7..06e84816 100644
--- a/projects-invent/maui/maui-pix/metadata.yaml
+++ b/projects-invent/maui/maui-pix/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-pix
 name: Pix Image Gallery
 projectpath: playground/base/maui-pix
 repoactive: true
-repopath: maui-pix
-type: project
+repopath: /maui/maui-pix
diff --git a/projects-invent/maui/maui-station/metadata.yaml b/projects-invent/maui/maui-station/metadata.yaml
index b2073a21..b0fad27f 100644
--- a/projects-invent/maui/maui-station/metadata.yaml
+++ b/projects-invent/maui/maui-station/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: maui-station
 name: Station Covergent Terminal Editor
 projectpath: playground/base/maui-station
 repoactive: true
-repopath: maui-station
-type: project
+repopath: /maui/maui-station
diff --git a/projects-invent/maui/mauikit/metadata.yaml b/projects-invent/maui/mauikit/metadata.yaml
index 52872323..0ff78129 100644
--- a/projects-invent/maui/mauikit/metadata.yaml
+++ b/projects-invent/maui/mauikit/metadata.yaml
@@ -1,13 +1,8 @@
-description: 'Templated convergent controls and multiplatform utilities for Maui based applications.'
+description: Templated convergent controls and multiplatform utilities for Maui based
+  applications.
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: mauikit
 name: MauiKit
 projectpath: playground/libs/mauikit
 repoactive: true
-repopath: mauikit
-type: project
+repopath: /maui/mauikit
diff --git a/projects-invent/maui/nomad-style/metadata.yaml b/projects-invent/maui/nomad-style/metadata.yaml
index 2817a08f..a23b7095 100644
--- a/projects-invent/maui/nomad-style/metadata.yaml
+++ b/projects-invent/maui/nomad-style/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: nomad-style
 name: Nomad QQC2 Style
 projectpath: playground/base/nomad-style
 repoactive: true
-repopath: nomad-style
-type: project
+repopath: /maui/nomad-style
diff --git a/projects-invent/maui/nota/metadata.yaml b/projects-invent/maui/nota/metadata.yaml
index 3f4707b1..9925fafb 100644
--- a/projects-invent/maui/nota/metadata.yaml
+++ b/projects-invent/maui/nota/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Camilo Higuita"
-  username: camiloh
-- displayname: "Aleix Pol"
-  username: apol
+identifier: nota
 name: Nota Text Editor
 projectpath: playground/base/nota
 repoactive: true
-repopath: nota
-type: project
+repopath: /maui/nota
diff --git a/projects-invent/maui/vvave/metadata.yaml b/projects-invent/maui/vvave/metadata.yaml
index f42c3828..28af9271 100644
--- a/projects-invent/maui/vvave/metadata.yaml
+++ b/projects-invent/maui/vvave/metadata.yaml
@@ -1,11 +1,7 @@
 description: Vvave Media Player
 hasrepo: true
-icon: null
-members:
-- displayname: Camilo Higuita
-  username: camiloh
+identifier: vvave
 name: Vvave Media Player
 projectpath: playground/multimedia/vvave
 repoactive: true
-repopath: vvave
-type: project
+repopath: /maui/vvave
diff --git a/projects-invent/multimedia/amarok/metadata.yaml b/projects-invent/multimedia/amarok/metadata.yaml
index e36bac9c..fb4db790 100644
--- a/projects-invent/multimedia/amarok/metadata.yaml
+++ b/projects-invent/multimedia/amarok/metadata.yaml
@@ -9,38 +9,8 @@ description: 'Amarok, the powerful music player that lets you rediscover your mu
 
   "QuickGit":https://quickgit.kde.org/amarok.git'
 hasrepo: true
-icon: null
-members:
-- displayname: Myriam Schweingruber
-  username: schweingruber
-- displayname: Mark Kretschmann
-  username: markey
-- displayname: "Mat\u011Bj Laitl"
-  username: laitl
-- displayname: Edward Toroshchin
-  username: hades
-- displayname: Bart Cerneels
-  username: shanachie
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Ralf Engels
-  username: rengels
-- displayname: Sven Krohlas
-  username: krohlas
-- displayname: Teo Mrnjavac
-  username: mrnjavac
-- displayname: Dan Meltzer
-  username: dmeltzer
-- displayname: Sam Lade
-  username: lade
-- displayname: Phalgun Guduthur
-  username: guduthur
-- displayname: Soren Harward
-  username: stharward
-- displayname: Sergey Ivanov
-  username: ivanov
+identifier: amarok
 name: Amarok
 projectpath: extragear/multimedia/amarok
 repoactive: true
-repopath: amarok
-type: project
+repopath: /multimedia/amarok
diff --git a/projects-invent/multimedia/audex/metadata.yaml b/projects-invent/multimedia/audex/metadata.yaml
index 8dd547e6..005c1217 100644
--- a/projects-invent/multimedia/audex/metadata.yaml
+++ b/projects-invent/multimedia/audex/metadata.yaml
@@ -1,11 +1,7 @@
 description: Audex is a tool for ripping compact discs
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Nelles
-  username: marcon
+identifier: audex
 name: Audex
 projectpath: playground/multimedia/audex
 repoactive: true
-repopath: audex
-type: project
+repopath: /multimedia/audex
diff --git a/projects-invent/multimedia/audiocd-kio/metadata.yaml b/projects-invent/multimedia/audiocd-kio/metadata.yaml
index 7c513d5f..303a2973 100644
--- a/projects-invent/multimedia/audiocd-kio/metadata.yaml
+++ b/projects-invent/multimedia/audiocd-kio/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kioslave for accessing audio CDs
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: audiocd-kio
 name: AudioCD KIO
 projectpath: kde/kdemultimedia/audiocd-kio
 repoactive: true
-repopath: audiocd-kio
-type: project
+repopath: /multimedia/audiocd-kio
diff --git a/projects-invent/multimedia/dragon/metadata.yaml b/projects-invent/multimedia/dragon/metadata.yaml
index 9514f60e..d0c1580b 100644
--- a/projects-invent/multimedia/dragon/metadata.yaml
+++ b/projects-invent/multimedia/dragon/metadata.yaml
@@ -1,13 +1,7 @@
 description: A multimedia player where the focus is on simplicity, instead of features.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: dragon
 name: Dragon
 projectpath: kde/kdemultimedia/dragon
 repoactive: true
-repopath: dragon
-type: project
+repopath: /multimedia/dragon
diff --git a/projects-invent/multimedia/elisa/metadata.yaml b/projects-invent/multimedia/elisa/metadata.yaml
index 73c0d2cf..e2b703d7 100644
--- a/projects-invent/multimedia/elisa/metadata.yaml
+++ b/projects-invent/multimedia/elisa/metadata.yaml
@@ -1,11 +1,7 @@
 description: Elisa Music Player
 hasrepo: true
-icon: null
-members:
-- displayname: Matthieu Gallien
-  username: mgallien
+identifier: elisa
 name: Elisa Music Player
 projectpath: kde/kdemultimedia/elisa
 repoactive: true
-repopath: elisa
-type: project
+repopath: /multimedia/elisa
diff --git a/projects-invent/multimedia/ffmpegthumbs/metadata.yaml b/projects-invent/multimedia/ffmpegthumbs/metadata.yaml
index 8e0c4b59..f322cce8 100644
--- a/projects-invent/multimedia/ffmpegthumbs/metadata.yaml
+++ b/projects-invent/multimedia/ffmpegthumbs/metadata.yaml
@@ -1,11 +1,7 @@
 description: ffmpeg-based thumbnail creator for video files.
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: ffmpegthumbs
 name: ffmpegthumbs
 projectpath: kde/kdemultimedia/ffmpegthumbs
 repoactive: true
-repopath: ffmpegthumbs
-type: project
+repopath: /multimedia/ffmpegthumbs
diff --git a/projects-invent/multimedia/juk/metadata.yaml b/projects-invent/multimedia/juk/metadata.yaml
index 69bda7cc..0fa268ef 100644
--- a/projects-invent/multimedia/juk/metadata.yaml
+++ b/projects-invent/multimedia/juk/metadata.yaml
@@ -1,15 +1,7 @@
 description: Juk is a jukebox, tagger and music collection manager
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
-- displayname: Michael Pyne
-  username: mpyne
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: juk
 name: Juk
 projectpath: kde/kdemultimedia/juk
 repoactive: true
-repopath: juk
-type: project
+repopath: /multimedia/juk
diff --git a/projects-invent/multimedia/k3b/metadata.yaml b/projects-invent/multimedia/k3b/metadata.yaml
index 34d87a70..9c3b5b1b 100644
--- a/projects-invent/multimedia/k3b/metadata.yaml
+++ b/projects-invent/multimedia/k3b/metadata.yaml
@@ -1,15 +1,7 @@
 description: K3b is a full-featured CD/DVD/Blu-ray burning and ripping application.
 hasrepo: true
-icon: k3b
-members:
-- displayname: Sebastian Trueg
-  username: trueg
-- displayname: "Micha\u0142 Ma\u0142ek"
-  username: mmalek
-- displayname: "Leslie Zhai"
-  username: lesliezhai
+identifier: k3b
 name: K3b
 projectpath: kde/kdemultimedia/k3b
 repoactive: true
-repopath: k3b
-type: project
+repopath: /multimedia/k3b
diff --git a/projects-invent/multimedia/kaffeine/metadata.yaml b/projects-invent/multimedia/kaffeine/metadata.yaml
index 74df95eb..842cb7f3 100644
--- a/projects-invent/multimedia/kaffeine/metadata.yaml
+++ b/projects-invent/multimedia/kaffeine/metadata.yaml
@@ -13,12 +13,8 @@ description: 'Kaffeine is a media player with support for digital television (DV
 
   Bugs: https://bugs.kde.org/component-report.cgi?product=kaffeine'
 hasrepo: true
-icon: kaffeine
-members:
-- displayname: Lasse Lindqvist
-  username: lasselindqvist
+identifier: kaffeine
 name: Kaffeine
 projectpath: extragear/multimedia/kaffeine
 repoactive: true
-repopath: kaffeine
-type: project
+repopath: /multimedia/kaffeine
diff --git a/projects-invent/multimedia/kamoso/metadata.yaml b/projects-invent/multimedia/kamoso/metadata.yaml
index 10d38154..86136662 100644
--- a/projects-invent/multimedia/kamoso/metadata.yaml
+++ b/projects-invent/multimedia/kamoso/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kamoso is an application to take pictures and videos out of your webcam.
 hasrepo: true
-icon: kamoso
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kamoso
 name: Kamoso
 projectpath: kde/kdemultimedia/kamoso
 repoactive: true
-repopath: kamoso
-type: project
+repopath: /multimedia/kamoso
diff --git a/projects-invent/multimedia/kdenlive/metadata.yaml b/projects-invent/multimedia/kdenlive/metadata.yaml
index e006654f..c654246e 100644
--- a/projects-invent/multimedia/kdenlive/metadata.yaml
+++ b/projects-invent/multimedia/kdenlive/metadata.yaml
@@ -1,26 +1,8 @@
 description: Kdenlive is an intuitive and powerful multi-track video editor, including
   most recent video technologies.
 hasrepo: true
-icon: null
-members:
-- displayname: Jean-Baptiste Mardelle
-  username: mardelle
-- displayname: Marco Gittler
-  username: gittler
-- displayname: Ed Rogalsky
-  username: rogalskyed
-- displayname: Brian Matherly
-  username: brianmatherly
-- displayname: Vincent Pinon
-  username: vpinon
-- displayname: Till Theato
-  username: theato
-- displayname: Alberto Villa
-  username: avilla
-- displayname: Simon Eugster
-  username: eugster
+identifier: kdenlive
 name: Kdenlive
 projectpath: kde/kdemultimedia/kdenlive
 repoactive: true
-repopath: kdenlive
-type: project
+repopath: /multimedia/kdenlive
diff --git a/projects-invent/multimedia/kid3/metadata.yaml b/projects-invent/multimedia/kid3/metadata.yaml
index 98c6bffd..f4b8ec33 100644
--- a/projects-invent/multimedia/kid3/metadata.yaml
+++ b/projects-invent/multimedia/kid3/metadata.yaml
@@ -1,11 +1,8 @@
-description: "Kid3 is an audio tag editor supporting MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Opus, Speex, TrueAudio, WavPack, WMA, WAV and AIFF files"
+description: Kid3 is an audio tag editor supporting MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC,
+  MP2, Opus, Speex, TrueAudio, WavPack, WMA, WAV and AIFF files
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Fleisch
-  username: ufleisch
+identifier: kid3
 name: Kid3
 projectpath: extragear/multimedia/kid3
 repoactive: true
-repopath: kid3
-type: project
+repopath: /multimedia/kid3
diff --git a/projects-invent/multimedia/kmix/metadata.yaml b/projects-invent/multimedia/kmix/metadata.yaml
index e2b061cc..d8a0f379 100644
--- a/projects-invent/multimedia/kmix/metadata.yaml
+++ b/projects-invent/multimedia/kmix/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE volume control program
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
-- displayname: Christian Esken
-  username: esken
+identifier: kmix
 name: KMix
 projectpath: kde/kdemultimedia/kmix
 repoactive: true
-repopath: kmix
-type: project
+repopath: /multimedia/kmix
diff --git a/projects-invent/multimedia/kmplayer/metadata.yaml b/projects-invent/multimedia/kmplayer/metadata.yaml
index d66d8bad..14c85e0c 100644
--- a/projects-invent/multimedia/kmplayer/metadata.yaml
+++ b/projects-invent/multimedia/kmplayer/metadata.yaml
@@ -1,11 +1,7 @@
 description: KPart based video player plugin
 hasrepo: true
-icon: null
-members:
-- displayname: Koos Vriezen
-  username: vriezen
+identifier: kmplayer
 name: KMPlayer
 projectpath: extragear/multimedia/kmplayer
 repoactive: true
-repopath: kmplayer
-type: project
+repopath: /multimedia/kmplayer
diff --git a/projects-invent/multimedia/kscd/metadata.yaml b/projects-invent/multimedia/kscd/metadata.yaml
index 24b8fc33..325b73dd 100644
--- a/projects-invent/multimedia/kscd/metadata.yaml
+++ b/projects-invent/multimedia/kscd/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE CD player
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: kscd
 name: KSCD
 projectpath: playground/multimedia/kscd
 repoactive: true
-repopath: kscd
-type: project
+repopath: /multimedia/kscd
diff --git a/projects-invent/multimedia/kwave/metadata.yaml b/projects-invent/multimedia/kwave/metadata.yaml
index 888b343e..71981129 100644
--- a/projects-invent/multimedia/kwave/metadata.yaml
+++ b/projects-invent/multimedia/kwave/metadata.yaml
@@ -5,7 +5,8 @@ description: 'Kwave is a sound editor by KDE
   !http://kwave.sourceforge.net/screenshot/screenshot1_s.gif!
 
 
-  It is written with KDE Frameworks/Qt and is extendable through a powerful plugin interface.
+  It is written with KDE Frameworks/Qt and is extendable through a powerful plugin
+  interface.
 
   With Kwave you can record, play back, import and edit many sorts of audio files
   including multi channel files. Kwave includes some plugins to transform audio files
@@ -28,14 +29,8 @@ description: 'Kwave is a sound editor by KDE
 
   * Handbook (PDF): https://docs.kde.org/index.php?application=kwave&branch=trunk5&language=en&path=kwave.pdf'
 hasrepo: true
-icon: kwave
-members:
-- displayname: Thomas Eschenbacher
-  username: eschenbacher
-- displayname: Helio Castro
-  username: helio
+identifier: kwave
 name: Kwave
 projectpath: kde/kdemultimedia/kwave
 repoactive: true
-repopath: kwave
-type: project
+repopath: /multimedia/kwave
diff --git a/projects-invent/multimedia/libkcddb/metadata.yaml b/projects-invent/multimedia/libkcddb/metadata.yaml
index 76eec15e..ddd0dfe4 100644
--- a/projects-invent/multimedia/libkcddb/metadata.yaml
+++ b/projects-invent/multimedia/libkcddb/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE CDDB library
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: libkcddb
 name: libkcddb
 projectpath: kde/kdemultimedia/libkcddb
 repoactive: true
-repopath: libkcddb
-type: project
+repopath: /multimedia/libkcddb
diff --git a/projects-invent/multimedia/libkcompactdisc/metadata.yaml b/projects-invent/multimedia/libkcompactdisc/metadata.yaml
index 6be63a85..7d594621 100644
--- a/projects-invent/multimedia/libkcompactdisc/metadata.yaml
+++ b/projects-invent/multimedia/libkcompactdisc/metadata.yaml
@@ -1,11 +1,7 @@
 description: library for interfacing with CDs
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: libkcompactdisc
 name: libkcompactdisc
 projectpath: kde/kdemultimedia/libkcompactdisc
 repoactive: true
-repopath: libkcompactdisc
-type: project
+repopath: /multimedia/libkcompactdisc
diff --git a/projects-invent/multimedia/metadata.yaml b/projects-invent/multimedia/metadata.yaml
index de9dc27b..b69f5262 100644
--- a/projects-invent/multimedia/metadata.yaml
+++ b/projects-invent/multimedia/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE Multimedia
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Multimedia
 projectpath: kde/kdemultimedia
 repoactive: false
-repopath: null
-type: module
+repopath: /multimedia
diff --git a/projects-invent/multimedia/subtitlecomposer/metadata.yaml b/projects-invent/multimedia/subtitlecomposer/metadata.yaml
index c6bcef22..a4599035 100644
--- a/projects-invent/multimedia/subtitlecomposer/metadata.yaml
+++ b/projects-invent/multimedia/subtitlecomposer/metadata.yaml
@@ -1,11 +1,7 @@
 description: Video Subtitle Editor
 hasrepo: true
-icon: null
-members:
-- displayname: Mladen Milinkovic
-  username: milinkovic
+identifier: subtitlecomposer
 name: SubtitleComposer
 projectpath: playground/multimedia/subtitlecomposer
 repoactive: true
-repopath: subtitlecomposer
-type: project
+repopath: /multimedia/subtitlecomposer
diff --git a/projects-invent/network/choqok/metadata.yaml b/projects-invent/network/choqok/metadata.yaml
index 01982b74..1cf71214 100644
--- a/projects-invent/network/choqok/metadata.yaml
+++ b/projects-invent/network/choqok/metadata.yaml
@@ -7,18 +7,8 @@ description: 'KDE Microblogging client
 
   "Development Mailing list":https://mail.kde.org/mailman/listinfo/choqok-devel'
 hasrepo: true
-icon: choqok
-members:
-- displayname: Andrea Scarpino
-  username: scarpino
-- displayname: Daniel Kreuter
-  username: dkreuter
-- displayname: Mehrdad Momeny
-  username: momeny
-- displayname: Andrey Esin
-  username: esin
+identifier: choqok
 name: Choqok
 projectpath: extragear/network/choqok
 repoactive: true
-repopath: choqok
-type: project
+repopath: /network/choqok
diff --git a/projects-invent/network/falkon/metadata.yaml b/projects-invent/network/falkon/metadata.yaml
index cc665aa8..c942f7de 100644
--- a/projects-invent/network/falkon/metadata.yaml
+++ b/projects-invent/network/falkon/metadata.yaml
@@ -1,11 +1,7 @@
 description: Cross-platform Qt Web Browser
 hasrepo: true
-icon: null
-members:
-- displayname: David Rosca
-  username: drosca
+identifier: falkon
 name: Falkon
 projectpath: extragear/network/falkon
 repoactive: true
-repopath: falkon
-type: project
+repopath: /network/falkon
diff --git a/projects-invent/network/kaccounts-integration/metadata.yaml b/projects-invent/network/kaccounts-integration/metadata.yaml
index 582dffb6..77b43fc0 100644
--- a/projects-invent/network/kaccounts-integration/metadata.yaml
+++ b/projects-invent/network/kaccounts-integration/metadata.yaml
@@ -1,14 +1,8 @@
 description: 'Small system to administer web accounts for the sites and services across
   the KDE desktop, including: Google, Facebook, Owncloud, IMAP, Jabber and others'
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kaccounts-integration
 name: Web Account Management System
 projectpath: kde/kdenetwork/kaccounts-integration
 repoactive: true
-repopath: kaccounts-integration
-type: project
+repopath: /network/kaccounts-integration
diff --git a/projects-invent/network/kaccounts-providers/metadata.yaml b/projects-invent/network/kaccounts-providers/metadata.yaml
index 75ef9c83..1066e839 100644
--- a/projects-invent/network/kaccounts-providers/metadata.yaml
+++ b/projects-invent/network/kaccounts-providers/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Accounts Providers
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kaccounts-providers
 name: KAccounts-Providers
 projectpath: kde/kdenetwork/kaccounts-providers
 repoactive: true
-repopath: kaccounts-providers
-type: project
+repopath: /network/kaccounts-providers
diff --git a/projects-invent/network/kaidan/metadata.yaml b/projects-invent/network/kaidan/metadata.yaml
index 45de8629..a0e45701 100644
--- a/projects-invent/network/kaidan/metadata.yaml
+++ b/projects-invent/network/kaidan/metadata.yaml
@@ -1,11 +1,7 @@
 description: A user-friendly XMPP client for every device.
 hasrepo: true
-icon: null
-members:
-- displayname: "Linus Jahn"
-  username: lnj
-name: "Kaidan"
+identifier: kaidan
+name: Kaidan
 projectpath: playground/network/kaidan
 repoactive: true
-repopath: kaidan
-type: project
+repopath: /network/kaidan
diff --git a/projects-invent/network/kdeconnect-android/metadata.yaml b/projects-invent/network/kdeconnect-android/metadata.yaml
index 6a5ec680..4b23fc54 100644
--- a/projects-invent/network/kdeconnect-android/metadata.yaml
+++ b/projects-invent/network/kdeconnect-android/metadata.yaml
@@ -1,16 +1,8 @@
 description: This Android app provides integration with the KDE desktop using KDE
   Connect.
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Albert Vaca Cintora
-  username: albertvaka
+identifier: kdeconnect-android
 name: KDE Connect client for Android
 projectpath: extragear/network/kdeconnect-android
 repoactive: true
-repopath: kdeconnect-android
-type: project
+repopath: /network/kdeconnect-android
diff --git a/projects-invent/network/kdeconnect-kde/metadata.yaml b/projects-invent/network/kdeconnect-kde/metadata.yaml
index b7d53fbb..6d8b5295 100644
--- a/projects-invent/network/kdeconnect-kde/metadata.yaml
+++ b/projects-invent/network/kdeconnect-kde/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDE Connect adds communication between your desktop and your smartphone.
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Albert Vaca Cintora
-  username: albertvaka
+identifier: kdeconnect-kde
 name: KDE Connect client for Plasma
 projectpath: kde/kdenetwork/kdeconnect-kde
 repoactive: true
-repopath: kdeconnect-kde
-type: project
+repopath: /network/kdeconnect-kde
diff --git a/projects-invent/network/kdenetwork-filesharing/metadata.yaml b/projects-invent/network/kdenetwork-filesharing/metadata.yaml
index 730ce092..302ecc49 100644
--- a/projects-invent/network/kdenetwork-filesharing/metadata.yaml
+++ b/projects-invent/network/kdenetwork-filesharing/metadata.yaml
@@ -1,15 +1,7 @@
 description: Network File Sharing
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Rodrigo Belem
-  username: belem
+identifier: kdenetwork-filesharing
 name: Filesharing
 projectpath: kde/kdenetwork/kdenetwork-filesharing
 repoactive: true
-repopath: kdenetwork-filesharing
-type: project
+repopath: /network/kdenetwork-filesharing
diff --git a/projects-invent/network/kget/metadata.yaml b/projects-invent/network/kget/metadata.yaml
index c82cf318..95ae02df 100644
--- a/projects-invent/network/kget/metadata.yaml
+++ b/projects-invent/network/kget/metadata.yaml
@@ -1,15 +1,7 @@
 description: Download Manager
 hasrepo: true
-icon: kget
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Lukas Appelhans
-  username: lappelhans
+identifier: kget
 name: KGet
 projectpath: kde/kdenetwork/kget
 repoactive: true
-repopath: kget
-type: project
+repopath: /network/kget
diff --git a/projects-invent/network/kio-extras/metadata.yaml b/projects-invent/network/kio-extras/metadata.yaml
index b8ebf42f..63d2eb90 100644
--- a/projects-invent/network/kio-extras/metadata.yaml
+++ b/projects-invent/network/kio-extras/metadata.yaml
@@ -1,13 +1,7 @@
 description: Additional components to increase the functionality of KIO
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kio-extras
 name: KIO Extras
 projectpath: kde/kdenetwork/kio-extras
 repoactive: true
-repopath: kio-extras
-type: project
+repopath: /network/kio-extras
diff --git a/projects-invent/network/kio-gdrive/metadata.yaml b/projects-invent/network/kio-gdrive/metadata.yaml
index 21ae861a..9bd6cd18 100644
--- a/projects-invent/network/kio-gdrive/metadata.yaml
+++ b/projects-invent/network/kio-gdrive/metadata.yaml
@@ -1,13 +1,7 @@
 description: KIO Slave to access Google Drive
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: "Elvis Angelaccio"
-  username: "elvisangelaccio"
+identifier: kio-gdrive
 name: KIO GDrive
 projectpath: extragear/network/kio-gdrive
 repoactive: true
-repopath: kio-gdrive
-type: project
+repopath: /network/kio-gdrive
diff --git a/projects-invent/network/kio-gopher/metadata.yaml b/projects-invent/network/kio-gopher/metadata.yaml
index 321ae9b6..e92af315 100644
--- a/projects-invent/network/kio-gopher/metadata.yaml
+++ b/projects-invent/network/kio-gopher/metadata.yaml
@@ -1,13 +1,7 @@
 description: Gopher kioslave
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Luigi Toscano
-  username: ltoscano
+identifier: kio-gopher
 name: Gopher kioslave
 projectpath: extragear/network/kio-gopher
 repoactive: true
-repopath: kio-gopher
-type: project
+repopath: /network/kio-gopher
diff --git a/projects-invent/network/kio-upnp-ms/metadata.yaml b/projects-invent/network/kio-upnp-ms/metadata.yaml
index 0244c588..7f2291b3 100644
--- a/projects-invent/network/kio-upnp-ms/metadata.yaml
+++ b/projects-invent/network/kio-upnp-ms/metadata.yaml
@@ -1,11 +1,7 @@
 description: KIO slave for UPnP MediaServer devices.
 hasrepo: true
-icon: null
-members:
-- displayname: Nikhil Shantanu Marathe
-  username: nikhilm
+identifier: kio-upnp-ms
 name: KIO UPnP MediaServer slave
 projectpath: playground/base/kio-upnp-ms
 repoactive: true
-repopath: kio-upnp-ms
-type: project
+repopath: /network/kio-upnp-ms
diff --git a/projects-invent/network/konqueror/metadata.yaml b/projects-invent/network/konqueror/metadata.yaml
index 05f7d373..8f2fd038 100644
--- a/projects-invent/network/konqueror/metadata.yaml
+++ b/projects-invent/network/konqueror/metadata.yaml
@@ -1,11 +1,7 @@
 description: Konqueror
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
+identifier: konqueror
 name: Konqueror
 projectpath: kde/applications/konqueror
 repoactive: true
-repopath: konqueror
-type: project
+repopath: /network/konqueror
diff --git a/projects-invent/network/konversation/metadata.yaml b/projects-invent/network/konversation/metadata.yaml
index 6a89cea0..d05ccd37 100644
--- a/projects-invent/network/konversation/metadata.yaml
+++ b/projects-invent/network/konversation/metadata.yaml
@@ -11,16 +11,8 @@ description: 'A user-friendly and fully-featured IRC client.
 
   "QuickGit":https://quickgit.kde.org/?p=konversation.git&a=summary'
 hasrepo: true
-icon: konversation
-members:
-- displayname: Eike Hein
-  username: hein
-- displayname: Bernd Buschinski
-  username: buschinski
-- displayname: Eli MacKenzie
-  username: argonel
+identifier: konversation
 name: Konversation
 projectpath: extragear/network/konversation
 repoactive: true
-repopath: konversation
-type: project
+repopath: /network/konversation
diff --git a/projects-invent/network/kopete/metadata.yaml b/projects-invent/network/kopete/metadata.yaml
index 5c2d922a..df500925 100644
--- a/projects-invent/network/kopete/metadata.yaml
+++ b/projects-invent/network/kopete/metadata.yaml
@@ -17,16 +17,8 @@ description: 'h1. Kopete - The KDE Instant Messenger
   Kopete also features tools to enhance your instant messaging experience, such as
   message encryption, archiving, and many other fun and useful effects.'
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete
 name: Kopete
 projectpath: kde/kdenetwork/kopete
 repoactive: true
-repopath: kopete
-type: project
+repopath: /network/kopete
diff --git a/projects-invent/network/krdc/metadata.yaml b/projects-invent/network/krdc/metadata.yaml
index f2747c11..8d4ead02 100644
--- a/projects-invent/network/krdc/metadata.yaml
+++ b/projects-invent/network/krdc/metadata.yaml
@@ -1,13 +1,7 @@
 description: Remote Desktop Client
 hasrepo: true
-icon: krdc
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: krdc
 name: KRDC
 projectpath: kde/kdenetwork/krdc
 repoactive: true
-repopath: krdc
-type: project
+repopath: /network/krdc
diff --git a/projects-invent/network/krfb/metadata.yaml b/projects-invent/network/krfb/metadata.yaml
index 2f44dfe6..75a64439 100644
--- a/projects-invent/network/krfb/metadata.yaml
+++ b/projects-invent/network/krfb/metadata.yaml
@@ -1,15 +1,7 @@
 description: Desktop Sharing
 hasrepo: true
-icon: krfb
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: George Kiagiadakis
-  username: gkiagia
+identifier: krfb
 name: Krfb
 projectpath: kde/kdenetwork/krfb
 repoactive: true
-repopath: krfb
-type: project
+repopath: /network/krfb
diff --git a/projects-invent/network/kte-collaborative/metadata.yaml b/projects-invent/network/kte-collaborative/metadata.yaml
index 2f5563c5..f8c03dca 100644
--- a/projects-invent/network/kte-collaborative/metadata.yaml
+++ b/projects-invent/network/kte-collaborative/metadata.yaml
@@ -1,13 +1,7 @@
 description: A plugin for KTextEditor which allows to edit text documents collaboratively.
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Sven Brauch
-  username: brauch
+identifier: kte-collaborative
 name: Collaborative editing in KTextEditor
 projectpath: playground/network/kte-collaborative
 repoactive: true
-repopath: kte-collaborative
-type: project
+repopath: /network/kte-collaborative
diff --git a/projects-invent/network/ktorrent/metadata.yaml b/projects-invent/network/ktorrent/metadata.yaml
index ee2f6c7f..48598433 100644
--- a/projects-invent/network/ktorrent/metadata.yaml
+++ b/projects-invent/network/ktorrent/metadata.yaml
@@ -1,11 +1,7 @@
 description: A powerful BitTorrent client.
 hasrepo: true
-icon: null
-members:
-- displayname: Joris Guisson
-  username: guisson
+identifier: ktorrent
 name: KTorrent
 projectpath: extragear/network/ktorrent
 repoactive: true
-repopath: ktorrent
-type: project
+repopath: /network/ktorrent
diff --git a/projects-invent/network/ktp-accounts-kcm/metadata.yaml b/projects-invent/network/ktp-accounts-kcm/metadata.yaml
index 88d84a37..097e9345 100644
--- a/projects-invent/network/ktp-accounts-kcm/metadata.yaml
+++ b/projects-invent/network/ktp-accounts-kcm/metadata.yaml
@@ -1,17 +1,7 @@
 description: KCM Module for configuring Telepathy Instant Messaging Accounts.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-accounts-kcm
 name: Telepathy Accounts KCM
 projectpath: kde/kdenetwork/ktp-accounts-kcm
 repoactive: true
-repopath: ktp-accounts-kcm
-type: project
+repopath: /network/ktp-accounts-kcm
diff --git a/projects-invent/network/ktp-approver/metadata.yaml b/projects-invent/network/ktp-approver/metadata.yaml
index 6f3827ce..01173a96 100644
--- a/projects-invent/network/ktp-approver/metadata.yaml
+++ b/projects-invent/network/ktp-approver/metadata.yaml
@@ -1,17 +1,7 @@
 description: KDE Channel Approver for Telepathy.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-approver
 name: Telepathy Approver
 projectpath: kde/kdenetwork/ktp-approver
 repoactive: true
-repopath: ktp-approver
-type: project
+repopath: /network/ktp-approver
diff --git a/projects-invent/network/ktp-auth-handler/metadata.yaml b/projects-invent/network/ktp-auth-handler/metadata.yaml
index d3535628..ecb83823 100644
--- a/projects-invent/network/ktp-auth-handler/metadata.yaml
+++ b/projects-invent/network/ktp-auth-handler/metadata.yaml
@@ -1,16 +1,8 @@
 description: Provide UI/KWallet Integration For Passwords and SSL Errors on Account
   Connect
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-auth-handler
 name: Telepathy Auth Handler
 projectpath: kde/kdenetwork/ktp-auth-handler
 repoactive: true
-repopath: ktp-auth-handler
-type: project
+repopath: /network/ktp-auth-handler
diff --git a/projects-invent/network/ktp-call-ui/metadata.yaml b/projects-invent/network/ktp-call-ui/metadata.yaml
index 34675e33..18ca9890 100644
--- a/projects-invent/network/ktp-call-ui/metadata.yaml
+++ b/projects-invent/network/ktp-call-ui/metadata.yaml
@@ -1,17 +1,7 @@
 description: Voice/Video Call UI for Telepathy
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-call-ui
 name: Telepathy Call UI
 projectpath: kde/kdenetwork/ktp-call-ui
 repoactive: true
-repopath: ktp-call-ui
-type: project
+repopath: /network/ktp-call-ui
diff --git a/projects-invent/network/ktp-common-internals/metadata.yaml b/projects-invent/network/ktp-common-internals/metadata.yaml
index 27d0f821..9e80d49e 100644
--- a/projects-invent/network/ktp-common-internals/metadata.yaml
+++ b/projects-invent/network/ktp-common-internals/metadata.yaml
@@ -1,17 +1,7 @@
 description: Library for KTp
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-common-internals
 name: Telepathy Common Internals
 projectpath: kde/kdenetwork/ktp-common-internals
 repoactive: true
-repopath: ktp-common-internals
-type: project
+repopath: /network/ktp-common-internals
diff --git a/projects-invent/network/ktp-contact-list/metadata.yaml b/projects-invent/network/ktp-contact-list/metadata.yaml
index 758ea018..dfb3d7ca 100644
--- a/projects-invent/network/ktp-contact-list/metadata.yaml
+++ b/projects-invent/network/ktp-contact-list/metadata.yaml
@@ -1,17 +1,7 @@
 description: Telepathy contact list application
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-contact-list
 name: Telepathy Contact List
 projectpath: kde/kdenetwork/ktp-contact-list
 repoactive: true
-repopath: ktp-contact-list
-type: project
+repopath: /network/ktp-contact-list
diff --git a/projects-invent/network/ktp-contact-runner/metadata.yaml b/projects-invent/network/ktp-contact-runner/metadata.yaml
index e511d455..544b41f4 100644
--- a/projects-invent/network/ktp-contact-runner/metadata.yaml
+++ b/projects-invent/network/ktp-contact-runner/metadata.yaml
@@ -1,17 +1,7 @@
 description: KRunner plugin for KDE Telepathy.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: ktp-contact-runner
 name: Telepathy Contact Runner
 projectpath: kde/kdenetwork/ktp-contact-runner
 repoactive: true
-repopath: ktp-contact-runner
-type: project
+repopath: /network/ktp-contact-runner
diff --git a/projects-invent/network/ktp-desktop-applets/metadata.yaml b/projects-invent/network/ktp-desktop-applets/metadata.yaml
index 64c7a5eb..22d48083 100644
--- a/projects-invent/network/ktp-desktop-applets/metadata.yaml
+++ b/projects-invent/network/ktp-desktop-applets/metadata.yaml
@@ -1,17 +1,7 @@
 description: the kde-telepathy plasma desktop applets
 hasrepo: true
-icon: null
-members:
-- displayname: Francesco Nwokeka
-  username: nwokeka
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-desktop-applets
 name: Telepathy Desktop Applets
 projectpath: kde/kdenetwork/ktp-desktop-applets
 repoactive: true
-repopath: ktp-desktop-applets
-type: project
+repopath: /network/ktp-desktop-applets
diff --git a/projects-invent/network/ktp-filetransfer-handler/metadata.yaml b/projects-invent/network/ktp-filetransfer-handler/metadata.yaml
index a530aa6c..5133f5cc 100644
--- a/projects-invent/network/ktp-filetransfer-handler/metadata.yaml
+++ b/projects-invent/network/ktp-filetransfer-handler/metadata.yaml
@@ -1,17 +1,7 @@
 description: Telepathy file transfer handler
 hasrepo: true
-icon: null
-members:
-- displayname: Daniele E. Domenichelli
-  username: ddomenichelli
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-filetransfer-handler
 name: Telepathy File Transfer Handler
 projectpath: kde/kdenetwork/ktp-filetransfer-handler
 repoactive: true
-repopath: ktp-filetransfer-handler
-type: project
+repopath: /network/ktp-filetransfer-handler
diff --git a/projects-invent/network/ktp-kded-module/metadata.yaml b/projects-invent/network/ktp-kded-module/metadata.yaml
index a185b489..d11b4870 100644
--- a/projects-invent/network/ktp-kded-module/metadata.yaml
+++ b/projects-invent/network/ktp-kded-module/metadata.yaml
@@ -1,16 +1,8 @@
 description: This module sits in KDED and takes care of various bits of system integration
   like setting user to auto-away or handling connection errors.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: ktp-kded-module
 name: Telepathy KDE integration module
 projectpath: kde/kdenetwork/ktp-kded-module
 repoactive: true
-repopath: ktp-kded-module
-type: project
+repopath: /network/ktp-kded-module
diff --git a/projects-invent/network/ktp-send-file/metadata.yaml b/projects-invent/network/ktp-send-file/metadata.yaml
index 11d7c2bb..5b6914d6 100644
--- a/projects-invent/network/ktp-send-file/metadata.yaml
+++ b/projects-invent/network/ktp-send-file/metadata.yaml
@@ -1,16 +1,8 @@
 description: A File manager plugin to launch a file transfer job with a specified
   contact
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-send-file
 name: Telepathy Send File
 projectpath: kde/kdenetwork/ktp-send-file
 repoactive: true
-repopath: ktp-send-file
-type: project
+repopath: /network/ktp-send-file
diff --git a/projects-invent/network/ktp-text-ui/metadata.yaml b/projects-invent/network/ktp-text-ui/metadata.yaml
index 882628ca..e6a0ce04 100644
--- a/projects-invent/network/ktp-text-ui/metadata.yaml
+++ b/projects-invent/network/ktp-text-ui/metadata.yaml
@@ -1,17 +1,7 @@
 description: Telepathy handler for Text Chats
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-text-ui
 name: Telepathy Text UI
 projectpath: kde/kdenetwork/ktp-text-ui
 repoactive: true
-repopath: ktp-text-ui
-type: project
+repopath: /network/ktp-text-ui
diff --git a/projects-invent/network/kwooty/metadata.yaml b/projects-invent/network/kwooty/metadata.yaml
index 3d722b46..ac490fd6 100644
--- a/projects-invent/network/kwooty/metadata.yaml
+++ b/projects-invent/network/kwooty/metadata.yaml
@@ -1,11 +1,7 @@
 description: A friendly nzb usenet binary download application
 hasrepo: true
-icon: null
-members:
-- displayname: Xavier Lefage
-  username: xavierl
+identifier: kwooty
 name: Kwooty
 projectpath: playground/network/kwooty
 repoactive: true
-repopath: kwooty
-type: project
+repopath: /network/kwooty
diff --git a/projects-invent/network/libktorrent/metadata.yaml b/projects-invent/network/libktorrent/metadata.yaml
index bfa8748f..3a579a45 100644
--- a/projects-invent/network/libktorrent/metadata.yaml
+++ b/projects-invent/network/libktorrent/metadata.yaml
@@ -1,11 +1,7 @@
 description: A BitTorrent protocol implementation.
 hasrepo: true
-icon: null
-members:
-- displayname: Joris Guisson
-  username: guisson
+identifier: libktorrent
 name: libktorrent
 projectpath: extragear/network/libktorrent
 repoactive: true
-repopath: libktorrent
-type: project
+repopath: /network/libktorrent
diff --git a/projects-invent/network/metadata.yaml b/projects-invent/network/metadata.yaml
index b15da3b6..7d61de66 100644
--- a/projects-invent/network/metadata.yaml
+++ b/projects-invent/network/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Network
 projectpath: kde/kdenetwork
 repoactive: false
-repopath: null
-type: module
+repopath: /network
diff --git a/projects-invent/network/ring-kde/metadata.yaml b/projects-invent/network/ring-kde/metadata.yaml
index 3205e328..c9de0e1e 100644
--- a/projects-invent/network/ring-kde/metadata.yaml
+++ b/projects-invent/network/ring-kde/metadata.yaml
@@ -1,11 +1,7 @@
 description: The KDE client for the Ring communication framework (www.ring.cx)
 hasrepo: true
-icon: null
-members:
-- displayname: Emmanuel Lepage Vallee
-  username: lepagevalleeemmanuel
+identifier: ring-kde
 name: Ring KDE client
 projectpath: extragear/pim/ring-kde
 repoactive: true
-repopath: ring-kde
-type: project
+repopath: /network/ring-kde
diff --git a/projects-invent/network/ruqola/metadata.yaml b/projects-invent/network/ruqola/metadata.yaml
index 279035c1..b66b7481 100644
--- a/projects-invent/network/ruqola/metadata.yaml
+++ b/projects-invent/network/ruqola/metadata.yaml
@@ -1,11 +1,7 @@
 description: Ruqola is a QML client for Rocket Chat
 hasrepo: true
-icon: null
-members:
-- displayname: "Vasudha Mathur"
-  username: vasudhamathur
-name: "Ruqola"
+identifier: ruqola
+name: Ruqola
 projectpath: extragear/network/ruqola
 repoactive: true
-repopath: ruqola
-type: project
+repopath: /network/ruqola
diff --git a/projects-invent/network/signon-kwallet-extension/metadata.yaml b/projects-invent/network/signon-kwallet-extension/metadata.yaml
index a3d47348..00965782 100644
--- a/projects-invent/network/signon-kwallet-extension/metadata.yaml
+++ b/projects-invent/network/signon-kwallet-extension/metadata.yaml
@@ -1,13 +1,7 @@
 description: KWallet integration for signon framework (code.google.com/p/accounts-sso)
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: signon-kwallet-extension
 name: KWallet integration for signon
 projectpath: kde/kdenetwork/signon-kwallet-extension
 repoactive: true
-repopath: signon-kwallet-extension
-type: project
+repopath: /network/signon-kwallet-extension
diff --git a/projects-invent/network/smb4k/metadata.yaml b/projects-invent/network/smb4k/metadata.yaml
index 4dbe3f94..6602900c 100644
--- a/projects-invent/network/smb4k/metadata.yaml
+++ b/projects-invent/network/smb4k/metadata.yaml
@@ -1,12 +1,8 @@
-description: 'The advanced network neighborhood browser and Samba share mounting utility
-  by KDE.'
+description: The advanced network neighborhood browser and Samba share mounting utility
+  by KDE.
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Reinholdt
-  username: areinholdt
+identifier: smb4k
 name: Smb4K
 projectpath: extragear/network/smb4k
 repoactive: true
-repopath: smb4k
-type: project
+repopath: /network/smb4k
diff --git a/projects-invent/network/telepathy-logger-qt/metadata.yaml b/projects-invent/network/telepathy-logger-qt/metadata.yaml
index 6f80bf44..efc4b98d 100644
--- a/projects-invent/network/telepathy-logger-qt/metadata.yaml
+++ b/projects-invent/network/telepathy-logger-qt/metadata.yaml
@@ -1,13 +1,7 @@
 description: Qt Wrapper around TpLogger client library.
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: telepathy-logger-qt
 name: Qt bindings for telepathy logger
 projectpath: extragear/network/telepathy/telepathy-logger-qt
 repoactive: true
-repopath: telepathy-logger-qt
-type: project
+repopath: /network/telepathy-logger-qt
diff --git a/projects-invent/network/zeroconf-ioslave/metadata.yaml b/projects-invent/network/zeroconf-ioslave/metadata.yaml
index 3ab6254b..d3f861ac 100644
--- a/projects-invent/network/zeroconf-ioslave/metadata.yaml
+++ b/projects-invent/network/zeroconf-ioslave/metadata.yaml
@@ -1,13 +1,7 @@
 description: Network Monitor for DNS-SD services (Zeroconf)
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: zeroconf-ioslave
 name: kdnssd
 projectpath: kde/kdenetwork/zeroconf-ioslave
 repoactive: true
-repopath: zeroconf-ioslave
-type: project
+repopath: /network/zeroconf-ioslave
diff --git a/projects-invent/office/alkimia/metadata.yaml b/projects-invent/office/alkimia/metadata.yaml
index 3383d896..08d81dc8 100644
--- a/projects-invent/office/alkimia/metadata.yaml
+++ b/projects-invent/office/alkimia/metadata.yaml
@@ -1,15 +1,7 @@
 description: Library used by KDE Finance applications
 hasrepo: true
-icon: null
-members:
-- displayname: "Cristian One\u021B"
-  username: conet
-- displayname: Alvaro Soliverez
-  username: asoliverez
-- displayname: Thomas Baumgart
-  username: tbaumgart
+identifier: alkimia
 name: Alkimia library
 projectpath: extragear/office/alkimia
 repoactive: true
-repopath: alkimia
-type: project
+repopath: /office/alkimia
diff --git a/projects-invent/office/calligra/metadata.yaml b/projects-invent/office/calligra/metadata.yaml
index 4b9bdc3f..ba32421e 100644
--- a/projects-invent/office/calligra/metadata.yaml
+++ b/projects-invent/office/calligra/metadata.yaml
@@ -1,19 +1,8 @@
-description: The Calligra project develops a set of applications for productivity and creative usage
+description: The Calligra project develops a set of applications for productivity
+  and creative usage
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Boudewijn Rempt
-  username: rempt
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Jarosław Staniek
-  username: staniek
+identifier: calligra
 name: Calligra
 projectpath: calligra/calligra
 repoactive: true
-repopath: calligra
-type: project
+repopath: /office/calligra
diff --git a/projects-invent/office/calligraplan/metadata.yaml b/projects-invent/office/calligraplan/metadata.yaml
index 51ee668f..60e8fd13 100644
--- a/projects-invent/office/calligraplan/metadata.yaml
+++ b/projects-invent/office/calligraplan/metadata.yaml
@@ -1,11 +1,7 @@
 description: Project management application
 hasrepo: true
-icon: kexi
-members:
-- displayname: "Dag Andersen"
-  username: danders
+identifier: calligraplan
 name: Calligra Plan
 projectpath: calligra/calligraplan
 repoactive: true
-repopath: calligraplan
-type: project
+repopath: /office/calligraplan
diff --git a/projects-invent/office/kbibtex-testset/metadata.yaml b/projects-invent/office/kbibtex-testset/metadata.yaml
index e9bb14d0..26866ca5 100644
--- a/projects-invent/office/kbibtex-testset/metadata.yaml
+++ b/projects-invent/office/kbibtex-testset/metadata.yaml
@@ -1,11 +1,7 @@
 description: Testing data for KBibTex
 hasrepo: true
-icon: kbibtex
-members:
-- displayname: Thomas Fischer
-  username: thomasfischer
+identifier: kbibtex-testset
 name: KBibTeX Testing Data
 projectpath: extragear/office/kbibtex-testset
 repoactive: true
-repopath: kbibtex-testset
-type: project
+repopath: /office/kbibtex-testset
diff --git a/projects-invent/office/kbibtex/metadata.yaml b/projects-invent/office/kbibtex/metadata.yaml
index 53b61595..920eed28 100644
--- a/projects-invent/office/kbibtex/metadata.yaml
+++ b/projects-invent/office/kbibtex/metadata.yaml
@@ -1,11 +1,7 @@
 description: An editor for bibliographies used with LaTeX
 hasrepo: true
-icon: kbibtex
-members:
-- displayname: Thomas Fischer
-  username: thomasfischer
+identifier: kbibtex
 name: KBibTeX
 projectpath: extragear/office/kbibtex
 repoactive: true
-repopath: kbibtex
-type: project
+repopath: /office/kbibtex
diff --git a/projects-invent/office/kexi-extras/metadata.yaml b/projects-invent/office/kexi-extras/metadata.yaml
index 79e11695..6c6b42cb 100644
--- a/projects-invent/office/kexi-extras/metadata.yaml
+++ b/projects-invent/office/kexi-extras/metadata.yaml
@@ -1,13 +1,7 @@
 description: Common components for Kexi libraries
 hasrepo: true
-icon: kexi
-members:
-- displayname: Adam Pigg
-  username: piggz
-- displayname: "Jaros\u0142aw Staniek"
-  username: staniek
+identifier: kexi-extras
 name: Kexi Extras
 projectpath: calligra/kexi-extras
 repoactive: true
-repopath: kexi-extras
-type: project
+repopath: /office/kexi-extras
diff --git a/projects-invent/office/kexi/metadata.yaml b/projects-invent/office/kexi/metadata.yaml
index 6e6ac256..524ae5d5 100644
--- a/projects-invent/office/kexi/metadata.yaml
+++ b/projects-invent/office/kexi/metadata.yaml
@@ -1,15 +1,7 @@
 description: Kexi is a visual database applications creator
 hasrepo: true
-icon: kexi
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
-- displayname: Adam Pigg
-  username: piggz
-- displayname: "Jaros\u0142aw Staniek"
-  username: staniek
+identifier: kexi
 name: Kexi
 projectpath: calligra/kexi
 repoactive: true
-repopath: kexi
-type: project
+repopath: /office/kexi
diff --git a/projects-invent/office/kile/metadata.yaml b/projects-invent/office/kile/metadata.yaml
index aaf56a30..c4c3c37c 100644
--- a/projects-invent/office/kile/metadata.yaml
+++ b/projects-invent/office/kile/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kile is a user-friendly TeX/LaTeX editor for the KDE desktop environment.
 hasrepo: true
-icon: null
-members:
-- displayname: Michel Ludwig
-  username: mludwig
-- displayname: Holger Danielsson
-  username: danielsson
+identifier: kile
 name: Kile
 projectpath: extragear/office/kile
 repoactive: true
-repopath: kile
-type: project
+repopath: /office/kile
diff --git a/projects-invent/office/kmymoney/metadata.yaml b/projects-invent/office/kmymoney/metadata.yaml
index e83e0a05..54e5aeb8 100644
--- a/projects-invent/office/kmymoney/metadata.yaml
+++ b/projects-invent/office/kmymoney/metadata.yaml
@@ -1,21 +1,7 @@
 description: KMyMoney Personal Finance Manager
 hasrepo: true
-icon: application/x-kmymoney
-members:
-- displayname: Thomas Baumgart
-  username: tbaumgart
-- displayname: "Cristian One\u021B"
-  username: conet
-- displayname: Jack Ostroff
-  username: ostroffjh
-- displayname: "\uC581ukasz Wojniłowicz"
-  username: wojnilowicz
-- displayname: Alvaro Soliverez
-  username: asoliverez
-- displayname: Fernando Vilas
-  username: fvilas
+identifier: kmymoney
 name: KMyMoney
 projectpath: extragear/office/kmymoney
 repoactive: true
-repopath: kmymoney
-type: project
+repopath: /office/kmymoney
diff --git a/projects-invent/office/knipptasch/metadata.yaml b/projects-invent/office/knipptasch/metadata.yaml
index 18845461..de9dfb19 100644
--- a/projects-invent/office/knipptasch/metadata.yaml
+++ b/projects-invent/office/knipptasch/metadata.yaml
@@ -7,12 +7,8 @@ description: 'Knipptasch is a personal accounting application aimed to be the mo
 
   "gitweb":http://gitweb.kde.org/knipptasch.git'
 hasrepo: true
-icon: null
-members:
-- displayname: "Stefan B\xF6hmann"
-  username: sboehmann
+identifier: knipptasch
 name: Knipptasch
 projectpath: playground/office/knipptasch
 repoactive: true
-repopath: knipptasch
-type: project
+repopath: /office/knipptasch
diff --git a/projects-invent/office/skrooge/metadata.yaml b/projects-invent/office/skrooge/metadata.yaml
index aded903e..7546a519 100644
--- a/projects-invent/office/skrooge/metadata.yaml
+++ b/projects-invent/office/skrooge/metadata.yaml
@@ -1,16 +1,8 @@
 description: Skrooge is a personal finances manager, aiming at being powerful and
   intuitive
 hasrepo: true
-icon: null
-members:
-- displayname: Guillaume de Bure
-  username: gdebure
-- displayname: Stephane Mankowski
-  username: smankowski
-- displayname: Siddharth Sharma
-  username: siddharthsharma
+identifier: skrooge
 name: Skrooge, Personal Finances Manager
 projectpath: extragear/office/skrooge
 repoactive: true
-repopath: skrooge
-type: project
+repopath: /office/skrooge
diff --git a/projects-invent/office/tellico/metadata.yaml b/projects-invent/office/tellico/metadata.yaml
index 2f35a7ae..fc70a8c8 100644
--- a/projects-invent/office/tellico/metadata.yaml
+++ b/projects-invent/office/tellico/metadata.yaml
@@ -1,13 +1,7 @@
 description: A collection manager for books, movies, music, and anything else
 hasrepo: true
-icon: null
-members:
-- displayname: Robby Stephenson
-  username: rstephenson
-- displayname: Regis Boudin
-  username: regisboudin
+identifier: tellico
 name: Tellico
 projectpath: extragear/office/tellico
 repoactive: true
-repopath: tellico
-type: project
+repopath: /office/tellico
diff --git a/projects-invent/others/fiduciary-licensing-agreement/metadata.yaml b/projects-invent/others/fiduciary-licensing-agreement/metadata.yaml
index 31c39180..ac705689 100644
--- a/projects-invent/others/fiduciary-licensing-agreement/metadata.yaml
+++ b/projects-invent/others/fiduciary-licensing-agreement/metadata.yaml
@@ -1,13 +1,7 @@
 description: Holds the sources for KDE e.V. Fiduciary Licensing Agreement
 hasrepo: true
-icon: null
-members:
-- displayname: Lydia Pintscher
-  username: lydia
-- displayname: Albert Astals Cid
-  username: aacid
+identifier: others-fiduciary-licensing-agreement
 name: KDE eV Fiduciary Licensing Agreement
 projectpath: others/fiduciary-licensing-agreement
 repoactive: false
-repopath: others/fiduciary-licensing-agreement
-type: module
+repopath: /others/fiduciary-licensing-agreement
diff --git a/projects-invent/others/metadata.yaml b/projects-invent/others/metadata.yaml
index 77693473..75d74b55 100644
--- a/projects-invent/others/metadata.yaml
+++ b/projects-invent/others/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Others
 projectpath: others
 repoactive: false
-repopath: null
-type: component
+repopath: /others
diff --git a/projects-invent/packaging/appimage-packaging/metadata.yaml b/projects-invent/packaging/appimage-packaging/metadata.yaml
index 751f810d..58aa576e 100644
--- a/projects-invent/packaging/appimage-packaging/metadata.yaml
+++ b/projects-invent/packaging/appimage-packaging/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Recipes and other materials needed to create application appimages'
+description: Recipes and other materials needed to create application appimages
 hasrepo: true
-icon: null
-members:
-- displayname: Scarlett Clark
-  username: scarlettclark
+identifier: appimage-packaging
 name: Appimage Packaging
 projectpath: playground/packaging/appimage-packaging
 repoactive: true
-repopath: appimage-packaging
-type: project
+repopath: /packaging/appimage-packaging
diff --git a/projects-invent/packaging/chocolatey-packaging/metadata.yaml b/projects-invent/packaging/chocolatey-packaging/metadata.yaml
index bd644735..f83cd5f0 100644
--- a/projects-invent/packaging/chocolatey-packaging/metadata.yaml
+++ b/projects-invent/packaging/chocolatey-packaging/metadata.yaml
@@ -1,11 +1,7 @@
 description: Packaging information necessary to generate Chocolatey.org packages
 hasrepo: true
-icon: null
-members:
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: chocolatey-packaging
 name: Chocolatey Packaging
 projectpath: playground/devtools/chocolatey-packaging
 repoactive: false
-repopath: chocolatey-packaging
-type: project
+repopath: /packaging/chocolatey-packaging
diff --git a/projects-invent/packaging/craft-blueprints-kde/metadata.yaml b/projects-invent/packaging/craft-blueprints-kde/metadata.yaml
index bd7650ef..8e867ed2 100644
--- a/projects-invent/packaging/craft-blueprints-kde/metadata.yaml
+++ b/projects-invent/packaging/craft-blueprints-kde/metadata.yaml
@@ -1,17 +1,8 @@
-description: 'Project build blueprints for Craft - the open source meta build system and package manager.'
+description: Project build blueprints for Craft - the open source meta build system
+  and package manager.
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Andre Heinecke
-  username: aheinecke
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: craft-blueprints-kde
 name: craft-blueprints-kde
 projectpath: kdesupport/craft-blueprints-kde
 repoactive: true
-repopath: craft-blueprints-kde
-type: module
+repopath: /packaging/craft-blueprints-kde
diff --git a/projects-invent/packaging/craft/metadata.yaml b/projects-invent/packaging/craft/metadata.yaml
index 8fb99f83..d3b49dbb 100644
--- a/projects-invent/packaging/craft/metadata.yaml
+++ b/projects-invent/packaging/craft/metadata.yaml
@@ -1,19 +1,10 @@
 description: 'Open source meta build system and package manager.
 
-    Craft manages dependencies and builds libraries and applications from source, on Windows, Mac, Linux and FreeBSD.'
+  Craft manages dependencies and builds libraries and applications from source, on
+  Windows, Mac, Linux and FreeBSD.'
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Andre Heinecke
-  username: aheinecke
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: craft
 name: craft
 projectpath: kdesupport/craft
 repoactive: true
-repopath: craft
-type: module
+repopath: /packaging/craft
diff --git a/projects-invent/packaging/craftmaster/metadata.yaml b/projects-invent/packaging/craftmaster/metadata.yaml
index 75d2426f..960bbe0b 100644
--- a/projects-invent/packaging/craftmaster/metadata.yaml
+++ b/projects-invent/packaging/craftmaster/metadata.yaml
@@ -1,17 +1,7 @@
-description: 'Orchestrate multiple Craft instance configuration.'
+description: Orchestrate multiple Craft instance configuration.
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Andre Heinecke
-  username: aheinecke
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: craftmaster
 name: Craft Master
 projectpath: kdesupport/craftmaster
 repoactive: true
-repopath: craftmaster
-type: module
+repopath: /packaging/craftmaster
diff --git a/projects-invent/packaging/docker-neon-all/metadata.yaml b/projects-invent/packaging/docker-neon-all/metadata.yaml
index 1e34f518..44dabadc 100644
--- a/projects-invent/packaging/docker-neon-all/metadata.yaml
+++ b/projects-invent/packaging/docker-neon-all/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Docker packaging environment for KDE Neon, including everything'
+description: Docker packaging environment for KDE Neon, including everything
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: docker-neon-all
 name: KDE Neon in Docker
 projectpath: playground/packaging/docker-neon-all
 repoactive: true
-repopath: docker-neon-all
-type: project
+repopath: /packaging/docker-neon-all
diff --git a/projects-invent/packaging/docker-neon/metadata.yaml b/projects-invent/packaging/docker-neon/metadata.yaml
index 0e111bd3..ee007c83 100644
--- a/projects-invent/packaging/docker-neon/metadata.yaml
+++ b/projects-invent/packaging/docker-neon/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Docker packaging environment for KDE Neon'
+description: Docker packaging environment for KDE Neon
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: docker-neon
 name: KDE Neon in Docker
 projectpath: playground/packaging/docker-neon
 repoactive: true
-repopath: docker-neon
-type: project
+repopath: /packaging/docker-neon
diff --git a/projects-invent/packaging/flatpak-kde-applications/metadata.yaml b/projects-invent/packaging/flatpak-kde-applications/metadata.yaml
index b231cfac..d6976669 100644
--- a/projects-invent/packaging/flatpak-kde-applications/metadata.yaml
+++ b/projects-invent/packaging/flatpak-kde-applications/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Flatpak packaging files for some KDE Applications'
+description: Flatpak packaging files for some KDE Applications
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: flatpak-kde-applications
 name: Flatpak KDE Applications
 projectpath: playground/packaging/flatpak-kde-applications
 repoactive: true
-repopath: flatpak-kde-applications
-type: project
+repopath: /packaging/flatpak-kde-applications
diff --git a/projects-invent/packaging/flatpak-kde-runtime/metadata.yaml b/projects-invent/packaging/flatpak-kde-runtime/metadata.yaml
index 0a26436f..8f319f54 100644
--- a/projects-invent/packaging/flatpak-kde-runtime/metadata.yaml
+++ b/projects-invent/packaging/flatpak-kde-runtime/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Has the files to generate a repository with org.kde.Platform and Sdk.'
+description: Has the files to generate a repository with org.kde.Platform and Sdk.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: flatpak-kde-runtime
 name: Flatpak KDE Runtime
 projectpath: playground/packaging/flatpak-kde-runtime
 repoactive: true
-repopath: flatpak-kde-runtime
-type: project
+repopath: /packaging/flatpak-kde-runtime
diff --git a/projects-invent/packaging/kdesdk-devenv-dependencies/metadata.yaml b/projects-invent/packaging/kdesdk-devenv-dependencies/metadata.yaml
index c24fbe72..950fbc75 100644
--- a/projects-invent/packaging/kdesdk-devenv-dependencies/metadata.yaml
+++ b/projects-invent/packaging/kdesdk-devenv-dependencies/metadata.yaml
@@ -1,11 +1,8 @@
-description: 'Distribution packaging source files detailing the requirements for building most KDE software'
+description: Distribution packaging source files detailing the requirements for building
+  most KDE software
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: kdesdk-devenv-dependencies
 name: 'SDK: Distribution Packaging Details for Dependencies'
 projectpath: playground/packaging/kdesdk-devenv-dependencies
 repoactive: true
-repopath: kdesdk-devenv-dependencies
-type: project
+repopath: /packaging/kdesdk-devenv-dependencies
diff --git a/projects-invent/packaging/kdewin-installer/metadata.yaml b/projects-invent/packaging/kdewin-installer/metadata.yaml
index 5c821a0e..4fd588fa 100644
--- a/projects-invent/packaging/kdewin-installer/metadata.yaml
+++ b/projects-invent/packaging/kdewin-installer/metadata.yaml
@@ -1,14 +1,8 @@
 description: KDEWin Installer is for installing KDE applications on Windows. The latest
   version can be downloaded from https://download.kde.org/stable/kdewin/installer/kdewin-installer-gui-latest.exe.mirrorlist
 hasrepo: true
-icon: null
-members:
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Patrick Spendrin
-  username: sengels
+identifier: kdewin-installer
 name: kdewin-installer
 projectpath: kdesupport/kdewin-installer
 repoactive: true
-repopath: kdewin-installer
-type: module
+repopath: /packaging/kdewin-installer
diff --git a/projects-invent/packaging/kdewin-tools/metadata.yaml b/projects-invent/packaging/kdewin-tools/metadata.yaml
index 87b7fef5..3dacbf21 100644
--- a/projects-invent/packaging/kdewin-tools/metadata.yaml
+++ b/projects-invent/packaging/kdewin-tools/metadata.yaml
@@ -1,13 +1,8 @@
-description: KDEWin Tools are a set of supplementary tools which are assist compiling KDE applications on Windows.
+description: KDEWin Tools are a set of supplementary tools which are assist compiling
+  KDE applications on Windows.
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
+identifier: kdewin-tools
 name: KDE on Windows Tooling
 projectpath: kdesupport/kdewin-tools
 repoactive: true
-repopath: kdewin-tools
-type: module
+repopath: /packaging/kdewin-tools
diff --git a/projects-invent/packaging/kdewin/metadata.yaml b/projects-invent/packaging/kdewin/metadata.yaml
index edf7de46..4c4ded17 100644
--- a/projects-invent/packaging/kdewin/metadata.yaml
+++ b/projects-invent/packaging/kdewin/metadata.yaml
@@ -1,14 +1,8 @@
 description: KDEWin is a supplementary library and provides supplementary tools which
   are required for compiling KDE applications on Windows.
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
+identifier: kdewin
 name: kdewin
 projectpath: kdesupport/kdewin
 repoactive: true
-repopath: kdewin
-type: module
+repopath: /packaging/kdewin
diff --git a/projects-invent/packaging/metadata.yaml b/projects-invent/packaging/metadata.yaml
index 599fc193..7d956a2d 100644
--- a/projects-invent/packaging/metadata.yaml
+++ b/projects-invent/packaging/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Packaging
 projectpath: playground/packaging
 repoactive: false
-repopath: null
-type: module
+repopath: /packaging
diff --git a/projects-invent/packaging/snap-kf5-launcher/metadata.yaml b/projects-invent/packaging/snap-kf5-launcher/metadata.yaml
index eadecedd..6b459d33 100644
--- a/projects-invent/packaging/snap-kf5-launcher/metadata.yaml
+++ b/projects-invent/packaging/snap-kf5-launcher/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Launcher for Content Snap for Qt5 and KF5'
+description: Launcher for Content Snap for Qt5 and KF5
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: snap-kf5-launcher
 name: Launcher for Qt5 and KF5 Snaps
 projectpath: playground/packaging/snap-kf5-launcher
 repoactive: true
-repopath: snap-kf5-launcher
-type: project
+repopath: /packaging/snap-kf5-launcher
diff --git a/projects-invent/packaging/snap-kf5/metadata.yaml b/projects-invent/packaging/snap-kf5/metadata.yaml
index 5f2aa8c2..08b5eb87 100644
--- a/projects-invent/packaging/snap-kf5/metadata.yaml
+++ b/projects-invent/packaging/snap-kf5/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Content Snap for Qt5 and KF5'
+description: Content Snap for Qt5 and KF5
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: snap-kf5
 name: Snapcraft for Qt5 and KF5
 projectpath: playground/packaging/snap-kf5
 repoactive: true
-repopath: snap-kf5
-type: project
+repopath: /packaging/snap-kf5
diff --git a/projects-invent/packaging/snapcraft-kde-applications/metadata.yaml b/projects-invent/packaging/snapcraft-kde-applications/metadata.yaml
index cb18fdfe..7e47e415 100644
--- a/projects-invent/packaging/snapcraft-kde-applications/metadata.yaml
+++ b/projects-invent/packaging/snapcraft-kde-applications/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Snapcraft packaging files for some KDE Applications'
+description: Snapcraft packaging files for some KDE Applications
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: snapcraft-kde-applications
 name: Snapcraft KDE Applications
 projectpath: playground/packaging/snapcraft-kde-applications
 repoactive: true
-repopath: snapcraft-kde-applications
-type: project
+repopath: /packaging/snapcraft-kde-applications
diff --git a/projects-invent/packaging/yocto-meta-kde/metadata.yaml b/projects-invent/packaging/yocto-meta-kde/metadata.yaml
index a318c191..6788e2e6 100644
--- a/projects-invent/packaging/yocto-meta-kde/metadata.yaml
+++ b/projects-invent/packaging/yocto-meta-kde/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Yocto packaging metadata for KDE Projects'
+description: Yocto packaging metadata for KDE Projects
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: yocto-meta-kde
 name: Yocto Packaging for KDE
 projectpath: playground/packaging/yocto-meta-kde
 repoactive: true
-repopath: yocto-meta-kde
-type: project
+repopath: /packaging/yocto-meta-kde
diff --git a/projects-invent/packaging/yocto-meta-kf5/metadata.yaml b/projects-invent/packaging/yocto-meta-kf5/metadata.yaml
index ee04a213..4ae9125f 100644
--- a/projects-invent/packaging/yocto-meta-kf5/metadata.yaml
+++ b/projects-invent/packaging/yocto-meta-kf5/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Yocto packaging metadata for KDE Frameworks'
+description: Yocto packaging metadata for KDE Frameworks
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: yocto-meta-kf5
 name: Yocto Packaging for Frameworks
 projectpath: playground/packaging/yocto-meta-kf5
 repoactive: true
-repopath: yocto-meta-kf5
-type: project
+repopath: /packaging/yocto-meta-kf5
diff --git a/projects-invent/pim/akonadi-airsync/metadata.yaml b/projects-invent/pim/akonadi-airsync/metadata.yaml
index 9324b591..51cb35a0 100644
--- a/projects-invent/pim/akonadi-airsync/metadata.yaml
+++ b/projects-invent/pim/akonadi-airsync/metadata.yaml
@@ -1,12 +1,8 @@
 description: Akonadi Resource to download emails from an MS Exchange Server using
   the Exchange Active Sync protocol
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Koller
-  username: mkoller
+identifier: akonadi-airsync
 name: Akonadi Exchange Active Sync Resource
 projectpath: playground/pim/akonadi-airsync
 repoactive: true
-repopath: akonadi-airsync
-type: project
+repopath: /pim/akonadi-airsync
diff --git a/projects-invent/pim/akonadi-calendar-tools/metadata.yaml b/projects-invent/pim/akonadi-calendar-tools/metadata.yaml
index 297f4407..d7bc9e9c 100644
--- a/projects-invent/pim/akonadi-calendar-tools/metadata.yaml
+++ b/projects-invent/pim/akonadi-calendar-tools/metadata.yaml
@@ -1,11 +1,7 @@
 description: Console applications and utilities for managing calendars in Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: akonadi-calendar-tools
 name: Akonadi Calendar Tools
 projectpath: kde/pim/akonadi-calendar-tools
 repoactive: true
-repopath: akonadi-calendar-tools
-type: project
+repopath: /pim/akonadi-calendar-tools
diff --git a/projects-invent/pim/akonadi-calendar/metadata.yaml b/projects-invent/pim/akonadi-calendar/metadata.yaml
index fa9f71f2..e316ca47 100644
--- a/projects-invent/pim/akonadi-calendar/metadata.yaml
+++ b/projects-invent/pim/akonadi-calendar/metadata.yaml
@@ -1,13 +1,7 @@
 description: Akonadi Calendar Integration.
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: akonadi-calendar
 name: Akonadi Calendar
 projectpath: kde/pim/akonadi-calendar
 repoactive: true
-repopath: akonadi-calendar
-type: project
+repopath: /pim/akonadi-calendar
diff --git a/projects-invent/pim/akonadi-contacts/metadata.yaml b/projects-invent/pim/akonadi-contacts/metadata.yaml
index c8ed9315..5c6bfa6f 100644
--- a/projects-invent/pim/akonadi-contacts/metadata.yaml
+++ b/projects-invent/pim/akonadi-contacts/metadata.yaml
@@ -1,17 +1,7 @@
 description: Libraries and daemons to implement Contact Management in Akonadi.
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Christian Mollekopf
-  username: cmollekopf
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: "Sandro Knau\xDF"
-  username: knauss
+identifier: akonadi-contacts
 name: Akonadi Contacts
 projectpath: kde/pim/akonadi-contacts
 repoactive: true
-repopath: akonadi-contacts
-type: project
+repopath: /pim/akonadi-contacts
diff --git a/projects-invent/pim/akonadi-exchange/metadata.yaml b/projects-invent/pim/akonadi-exchange/metadata.yaml
index b5e756d3..7a95e8b8 100644
--- a/projects-invent/pim/akonadi-exchange/metadata.yaml
+++ b/projects-invent/pim/akonadi-exchange/metadata.yaml
@@ -1,13 +1,7 @@
 description: Akonadi plugin for Exchange groupware functionality
 hasrepo: true
-icon: null
-members:
-- displayname: Alf B. Rustad
-  username: alfbr
-- displayname: Shaheed Haque
-  username: shaheed
+identifier: akonadi-exchange
 name: Akonadi Exchange Resource
 projectpath: playground/pim/akonadi-exchange
 repoactive: true
-repopath: akonadi-exchange
-type: project
+repopath: /pim/akonadi-exchange
diff --git a/projects-invent/pim/akonadi-import-wizard/metadata.yaml b/projects-invent/pim/akonadi-import-wizard/metadata.yaml
index e91e046a..b42439cc 100644
--- a/projects-invent/pim/akonadi-import-wizard/metadata.yaml
+++ b/projects-invent/pim/akonadi-import-wizard/metadata.yaml
@@ -1,11 +1,8 @@
-description: Assistant to import PIM data from other applications into Akonadi for use in KDE PIM applications.
+description: Assistant to import PIM data from other applications into Akonadi for
+  use in KDE PIM applications.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: akonadi-import-wizard
 name: Akonadi Data Import Wizard
 projectpath: kde/pim/akonadi-import-wizard
 repoactive: true
-repopath: akonadi-import-wizard
-type: project
+repopath: /pim/akonadi-import-wizard
diff --git a/projects-invent/pim/akonadi-mime/metadata.yaml b/projects-invent/pim/akonadi-mime/metadata.yaml
index e9454069..c691a0dd 100644
--- a/projects-invent/pim/akonadi-mime/metadata.yaml
+++ b/projects-invent/pim/akonadi-mime/metadata.yaml
@@ -1,17 +1,7 @@
 description: Libraries and daemons to implement basic email handling.
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Christian Mollekopf
-  username: cmollekopf
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: "Sandro Knau\xDF"
-  username: knauss
+identifier: akonadi-mime
 name: Akonadi Mime
 projectpath: kde/pim/akonadi-mime
 repoactive: true
-repopath: akonadi-mime
-type: project
+repopath: /pim/akonadi-mime
diff --git a/projects-invent/pim/akonadi-notes/metadata.yaml b/projects-invent/pim/akonadi-notes/metadata.yaml
index 422c2d1d..0ded61d6 100644
--- a/projects-invent/pim/akonadi-notes/metadata.yaml
+++ b/projects-invent/pim/akonadi-notes/metadata.yaml
@@ -1,17 +1,7 @@
 description: Libraries and daemons to implement management of notes in Akonadi.
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Christian Mollekopf
-  username: cmollekopf
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: "Sandro Knau\xDF"
-  username: knauss
+identifier: akonadi-notes
 name: Akonadi Notes
 projectpath: kde/pim/akonadi-notes
 repoactive: true
-repopath: akonadi-notes
-type: project
+repopath: /pim/akonadi-notes
diff --git a/projects-invent/pim/akonadi-phabricator-resource/metadata.yaml b/projects-invent/pim/akonadi-phabricator-resource/metadata.yaml
index 8685d2ab..b70e6803 100644
--- a/projects-invent/pim/akonadi-phabricator-resource/metadata.yaml
+++ b/projects-invent/pim/akonadi-phabricator-resource/metadata.yaml
@@ -1,11 +1,7 @@
 description: Synchronize your Phabricator tasks with KOrganizer
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: akonadi-phabricator-resource
 name: Akonadi Phabricator Resource
 projectpath: playground/pim/akonadi-phabricator-resource
 repoactive: true
-repopath: akonadi-phabricator-resource
-type: project
+repopath: /pim/akonadi-phabricator-resource
diff --git a/projects-invent/pim/akonadi-search/metadata.yaml b/projects-invent/pim/akonadi-search/metadata.yaml
index 8ab80d07..e8b004d8 100644
--- a/projects-invent/pim/akonadi-search/metadata.yaml
+++ b/projects-invent/pim/akonadi-search/metadata.yaml
@@ -1,19 +1,7 @@
 description: Libraries and daemons to implement searching in Akonadi.
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Christian Mollekopf
-  username: cmollekopf
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: "Sandro Knau\xDF"
-  username: knauss
+identifier: akonadi-search
 name: Akonadi Search
 projectpath: kde/pim/akonadi-search
 repoactive: true
-repopath: akonadi-search
-type: project
+repopath: /pim/akonadi-search
diff --git a/projects-invent/pim/akonadi/metadata.yaml b/projects-invent/pim/akonadi/metadata.yaml
index cb7fcabb..8b7fd7fe 100644
--- a/projects-invent/pim/akonadi/metadata.yaml
+++ b/projects-invent/pim/akonadi/metadata.yaml
@@ -1,24 +1,8 @@
 description: Akonadi Server. A cross-desktop storage service for PIM data and meta
   data providing concurrent read, write, and query access.
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
-- displayname: Till Adam
-  username: tilladam
-- displayname: Tobias Koenig
-  username: tokoe
-- displayname: Kevin Krammer
-  username: krake
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
-- displayname: Stephen Kelly
-  username: skelly
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: akonadi
 name: Akonadi
 projectpath: kde/pim/akonadi
 repoactive: true
-repopath: akonadi
-type: project
+repopath: /pim/akonadi
diff --git a/projects-invent/pim/akonadiclient/metadata.yaml b/projects-invent/pim/akonadiclient/metadata.yaml
index 2df2b6ff..12e5fed8 100644
--- a/projects-invent/pim/akonadiclient/metadata.yaml
+++ b/projects-invent/pim/akonadiclient/metadata.yaml
@@ -1,13 +1,7 @@
 description: Commandline interface for accessing Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Krammer
-  username: krake
-- displayname: Jonathan Marten
-  username: marten
+identifier: akonadiclient
 name: Akonadi Commandline Client
 projectpath: playground/pim/akonadiclient
 repoactive: true
-repopath: akonadiclient
-type: project
+repopath: /pim/akonadiclient
diff --git a/projects-invent/pim/akonadiconsole/metadata.yaml b/projects-invent/pim/akonadiconsole/metadata.yaml
index 850bd658..78a45d62 100644
--- a/projects-invent/pim/akonadiconsole/metadata.yaml
+++ b/projects-invent/pim/akonadiconsole/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application for debugging Akonadi Resources
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: akonadiconsole
 name: Akonadi Console
 projectpath: kde/pim/akonadiconsole
 repoactive: true
-repopath: akonadiconsole
-type: project
+repopath: /pim/akonadiconsole
diff --git a/projects-invent/pim/akregator/metadata.yaml b/projects-invent/pim/akregator/metadata.yaml
index 2367016b..f15b7f6a 100644
--- a/projects-invent/pim/akregator/metadata.yaml
+++ b/projects-invent/pim/akregator/metadata.yaml
@@ -1,11 +1,7 @@
 description: RSS Feed Reader
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: akregator
 name: Akregator
 projectpath: kde/pim/akregator
 repoactive: true
-repopath: akregator
-type: project
+repopath: /pim/akregator
diff --git a/projects-invent/pim/calendarsupport/metadata.yaml b/projects-invent/pim/calendarsupport/metadata.yaml
index 04625874..6cea798e 100644
--- a/projects-invent/pim/calendarsupport/metadata.yaml
+++ b/projects-invent/pim/calendarsupport/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides calendar support
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: calendarsupport
 name: Add calendar support
 projectpath: kde/pim/calendarsupport
 repoactive: true
-repopath: calendarsupport
-type: project
+repopath: /pim/calendarsupport
diff --git a/projects-invent/pim/eventviews/metadata.yaml b/projects-invent/pim/eventviews/metadata.yaml
index 5ea4d01a..a4babac0 100644
--- a/projects-invent/pim/eventviews/metadata.yaml
+++ b/projects-invent/pim/eventviews/metadata.yaml
@@ -1,11 +1,7 @@
 description: It contains lib for creating events
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: eventviews
 name: Library for eventviews
 projectpath: kde/pim/eventviews
 repoactive: true
-repopath: eventviews
-type: project
+repopath: /pim/eventviews
diff --git a/projects-invent/pim/grantlee-editor/metadata.yaml b/projects-invent/pim/grantlee-editor/metadata.yaml
index 09256aeb..75d976c4 100644
--- a/projects-invent/pim/grantlee-editor/metadata.yaml
+++ b/projects-invent/pim/grantlee-editor/metadata.yaml
@@ -1,11 +1,7 @@
 description: Utilities and tools to manage themes in KDE PIM applications
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: grantlee-editor
 name: Grantlee Editor
 projectpath: kde/pim/grantlee-editor
 repoactive: true
-repopath: grantlee-editor
-type: project
+repopath: /pim/grantlee-editor
diff --git a/projects-invent/pim/grantleetheme/metadata.yaml b/projects-invent/pim/grantleetheme/metadata.yaml
index b1cb6383..e1386387 100644
--- a/projects-invent/pim/grantleetheme/metadata.yaml
+++ b/projects-invent/pim/grantleetheme/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides grantlee theme support
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: grantleetheme
 name: Theme based on grantlee
 projectpath: kde/pim/grantleetheme
 repoactive: true
-repopath: grantleetheme
-type: project
+repopath: /pim/grantleetheme
diff --git a/projects-invent/pim/incidenceeditor/metadata.yaml b/projects-invent/pim/incidenceeditor/metadata.yaml
index 72a8a16c..0f674148 100644
--- a/projects-invent/pim/incidenceeditor/metadata.yaml
+++ b/projects-invent/pim/incidenceeditor/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides incidence editor
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: incidenceeditor
 name: Calendar incidence editor
 projectpath: kde/pim/incidenceeditor
 repoactive: true
-repopath: incidenceeditor
-type: project
+repopath: /pim/incidenceeditor
diff --git a/projects-invent/pim/itinerary/metadata.yaml b/projects-invent/pim/itinerary/metadata.yaml
index 0a6cdaa1..52a68d2c 100644
--- a/projects-invent/pim/itinerary/metadata.yaml
+++ b/projects-invent/pim/itinerary/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application to assist with usage of Travel Reservations
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: itinerary
 name: Itinerary (application)
 projectpath: extragear/pim/itinerary
 repoactive: true
-repopath: itinerary
-type: project
+repopath: /pim/itinerary
diff --git a/projects-invent/pim/kaddressbook/metadata.yaml b/projects-invent/pim/kaddressbook/metadata.yaml
index 362e8503..3341766e 100644
--- a/projects-invent/pim/kaddressbook/metadata.yaml
+++ b/projects-invent/pim/kaddressbook/metadata.yaml
@@ -1,11 +1,7 @@
 description: Address Book application to manage your contacts
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kaddressbook
 name: KAddressBook
 projectpath: kde/pim/kaddressbook
 repoactive: true
-repopath: kaddressbook
-type: project
+repopath: /pim/kaddressbook
diff --git a/projects-invent/pim/kalarm/metadata.yaml b/projects-invent/pim/kalarm/metadata.yaml
index cac1bfad..4c0cc561 100644
--- a/projects-invent/pim/kalarm/metadata.yaml
+++ b/projects-invent/pim/kalarm/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application to manage alarms and other timer based alerts for the desktop.
 hasrepo: true
-icon: null
-members:
-- displayname: David Jarvie
-  username: djarvie
+identifier: kalarm
 name: KAlarm
 projectpath: kde/pim/kalarm
 repoactive: true
-repopath: kalarm
-type: project
+repopath: /pim/kalarm
diff --git a/projects-invent/pim/kalarmcal/metadata.yaml b/projects-invent/pim/kalarmcal/metadata.yaml
index 7ddf8e17..6816f3ea 100644
--- a/projects-invent/pim/kalarmcal/metadata.yaml
+++ b/projects-invent/pim/kalarmcal/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Calendar support for KAlarm'
+description: Calendar support for KAlarm
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kalarmcal
 name: kalarmcal
 projectpath: kde/pim/kalarmcal
 repoactive: true
-repopath: kalarmcal
-type: project
+repopath: /pim/kalarmcal
diff --git a/projects-invent/pim/kblog/metadata.yaml b/projects-invent/pim/kblog/metadata.yaml
index 80a27c60..38af6f59 100644
--- a/projects-invent/pim/kblog/metadata.yaml
+++ b/projects-invent/pim/kblog/metadata.yaml
@@ -1,11 +1,7 @@
 description: 'KBlog: Support for reading various blog feeds'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kblog
 name: kblog
 projectpath: kde/pim/kblog
 repoactive: true
-repopath: kblog
-type: project
+repopath: /pim/kblog
diff --git a/projects-invent/pim/kcalutils/metadata.yaml b/projects-invent/pim/kcalutils/metadata.yaml
index 583977f1..ff1b5b63 100644
--- a/projects-invent/pim/kcalutils/metadata.yaml
+++ b/projects-invent/pim/kcalutils/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'KCalUtils - Library to assist working with calendars'
+description: KCalUtils - Library to assist working with calendars
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kcalutils
 name: kcalutils
 projectpath: kde/pim/kcalutils
 repoactive: true
-repopath: kcalutils
-type: project
+repopath: /pim/kcalutils
diff --git a/projects-invent/pim/kdav/metadata.yaml b/projects-invent/pim/kdav/metadata.yaml
index 664f1dfd..4a844d5e 100644
--- a/projects-invent/pim/kdav/metadata.yaml
+++ b/projects-invent/pim/kdav/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'A DAV protocol implementation with KJobs'
+description: A DAV protocol implementation with KJobs
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Knauß
-  username: knauss
+identifier: kdav
 name: KDav
 projectpath: kde/pim/kdav
 repoactive: true
-repopath: kdav
-type: project
+repopath: /pim/kdav
diff --git a/projects-invent/pim/kdav2/metadata.yaml b/projects-invent/pim/kdav2/metadata.yaml
index 75fbd488..33d7a2d9 100644
--- a/projects-invent/pim/kdav2/metadata.yaml
+++ b/projects-invent/pim/kdav2/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'A DAV protocol implementation with KJobs'
+description: A DAV protocol implementation with KJobs
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Knauß
-  username: knauss
+identifier: kdav2
 name: KDav2
 projectpath: playground/pim/kdav2
 repoactive: true
-repopath: kdav2
-type: project
+repopath: /pim/kdav2
diff --git a/projects-invent/pim/kdepim-addons/metadata.yaml b/projects-invent/pim/kdepim-addons/metadata.yaml
index 3d4fa754..748aade2 100644
--- a/projects-invent/pim/kdepim-addons/metadata.yaml
+++ b/projects-invent/pim/kdepim-addons/metadata.yaml
@@ -1,12 +1,8 @@
 description: addons for kdepim apps (as kmail addons/ kmail theme/ kaddressbook addons
   etc.)
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kdepim-addons
 name: KDE PIM Addons
 projectpath: kde/pim/kdepim-addons
 repoactive: true
-repopath: kdepim-addons
-type: project
+repopath: /pim/kdepim-addons
diff --git a/projects-invent/pim/kdepim-apps-libs/metadata.yaml b/projects-invent/pim/kdepim-apps-libs/metadata.yaml
index 78f05f72..34d29d83 100644
--- a/projects-invent/pim/kdepim-apps-libs/metadata.yaml
+++ b/projects-invent/pim/kdepim-apps-libs/metadata.yaml
@@ -1,11 +1,7 @@
 description: This module contains mail-related libraries
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kdepim-apps-libs
 name: Mail-related libraries
 projectpath: kde/pim/kdepim-apps-libs
 repoactive: true
-repopath: kdepim-apps-libs
-type: project
+repopath: /pim/kdepim-apps-libs
diff --git a/projects-invent/pim/kdepim-runtime/metadata.yaml b/projects-invent/pim/kdepim-runtime/metadata.yaml
index fe0479f5..a77043b2 100644
--- a/projects-invent/pim/kdepim-runtime/metadata.yaml
+++ b/projects-invent/pim/kdepim-runtime/metadata.yaml
@@ -20,18 +20,8 @@ description: 'h1. Extends the functionality of kdepim
 
   * Apidox - https://api.kde.org/4.x-api/kdepim-runtime-apidocs'
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Stephen Kelly
-  username: skelly
-- displayname: Torgny Nyblom
-  username: tnyblom
-- displayname: Allen Winter
-  username: winterz
+identifier: kdepim-runtime
 name: KDE Pim Runtime
 projectpath: kde/pim/kdepim-runtime
 repoactive: true
-repopath: kdepim-runtime
-type: project
+repopath: /pim/kdepim-runtime
diff --git a/projects-invent/pim/kidentitymanagement/metadata.yaml b/projects-invent/pim/kidentitymanagement/metadata.yaml
index 50db6cf4..0954e43a 100644
--- a/projects-invent/pim/kidentitymanagement/metadata.yaml
+++ b/projects-invent/pim/kidentitymanagement/metadata.yaml
@@ -1,11 +1,7 @@
 description: 'KIdentityManagement: Library to assist in handling user identities'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kidentitymanagement
 name: kidentitymanagement
 projectpath: kde/pim/kidentitymanagement
 repoactive: true
-repopath: kidentitymanagement
-type: project
+repopath: /pim/kidentitymanagement
diff --git a/projects-invent/pim/kimap/metadata.yaml b/projects-invent/pim/kimap/metadata.yaml
index ae234a82..fd3ed3f6 100644
--- a/projects-invent/pim/kimap/metadata.yaml
+++ b/projects-invent/pim/kimap/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Library to assist working with IMAP servers'
+description: Library to assist working with IMAP servers
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kimap
 name: kimap
 projectpath: kde/pim/kimap
 repoactive: true
-repopath: kimap
-type: project
+repopath: /pim/kimap
diff --git a/projects-invent/pim/kimap2/metadata.yaml b/projects-invent/pim/kimap2/metadata.yaml
index b7aa8d37..1613cd47 100644
--- a/projects-invent/pim/kimap2/metadata.yaml
+++ b/projects-invent/pim/kimap2/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Next Generation IMAP Library'
+description: Next Generation IMAP Library
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Mollekopf
-  username: cmollekopf
+identifier: kimap2
 name: kimap2
 projectpath: playground/pim/kimap2
 repoactive: true
-repopath: kimap2
-type: project
+repopath: /pim/kimap2
diff --git a/projects-invent/pim/kitinerary-workbench/metadata.yaml b/projects-invent/pim/kitinerary-workbench/metadata.yaml
index b46d2403..43096af9 100644
--- a/projects-invent/pim/kitinerary-workbench/metadata.yaml
+++ b/projects-invent/pim/kitinerary-workbench/metadata.yaml
@@ -1,11 +1,7 @@
 description: KItinerary Test and Development Tool
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: kitinerary-workbench
 name: KItinerary Workbench
 projectpath: playground/pim/kitinerary-workbench
 repoactive: true
-repopath: kitinerary-workbench
-type: project
+repopath: /pim/kitinerary-workbench
diff --git a/projects-invent/pim/kitinerary/metadata.yaml b/projects-invent/pim/kitinerary/metadata.yaml
index ce631714..ca7da636 100644
--- a/projects-invent/pim/kitinerary/metadata.yaml
+++ b/projects-invent/pim/kitinerary/metadata.yaml
@@ -1,11 +1,7 @@
 description: Data Model and Extraction System for Travel Reservation information
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: kitinerary
 name: KItinerary
 projectpath: kde/pim/kitinerary
 repoactive: true
-repopath: kitinerary
-type: project
+repopath: /pim/kitinerary
diff --git a/projects-invent/pim/kjots/metadata.yaml b/projects-invent/pim/kjots/metadata.yaml
index ff4b74c3..7b7fe498 100644
--- a/projects-invent/pim/kjots/metadata.yaml
+++ b/projects-invent/pim/kjots/metadata.yaml
@@ -1,11 +1,7 @@
 description: KJots is a note taking application by KDE using Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: kjots
 name: KJots
 projectpath: playground/pim/kjots
 repoactive: true
-repopath: kjots
-type: project
+repopath: /pim/kjots
diff --git a/projects-invent/pim/kldap/metadata.yaml b/projects-invent/pim/kldap/metadata.yaml
index d06a55bf..563c8f3f 100644
--- a/projects-invent/pim/kldap/metadata.yaml
+++ b/projects-invent/pim/kldap/metadata.yaml
@@ -1,11 +1,7 @@
 description: 'KLDAP: Library to assist working with LDAP Directories'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kldap
 name: kldap
 projectpath: kde/pim/kldap
 repoactive: true
-repopath: kldap
-type: project
+repopath: /pim/kldap
diff --git a/projects-invent/pim/kleopatra/metadata.yaml b/projects-invent/pim/kleopatra/metadata.yaml
index af3ab5cb..1f933d0f 100644
--- a/projects-invent/pim/kleopatra/metadata.yaml
+++ b/projects-invent/pim/kleopatra/metadata.yaml
@@ -1,11 +1,7 @@
 description: Certificate manager and GUI for OpenPGP and CMS cryptography.
 hasrepo: true
-icon: null
-members:
-- displayname: Andre Heinecke
-  username: aheinecke
+identifier: kleopatra
 name: Kleopatra - GUI for GnuPG cryptography
 projectpath: kde/pim/kleopatra
 repoactive: true
-repopath: kleopatra
-type: project
+repopath: /pim/kleopatra
diff --git a/projects-invent/pim/kmail-account-wizard/metadata.yaml b/projects-invent/pim/kmail-account-wizard/metadata.yaml
index b55c5e1a..d1891722 100644
--- a/projects-invent/pim/kmail-account-wizard/metadata.yaml
+++ b/projects-invent/pim/kmail-account-wizard/metadata.yaml
@@ -1,11 +1,8 @@
-description: An application which assists you with the configuration of accounts in KMail.
+description: An application which assists you with the configuration of accounts in
+  KMail.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kmail-account-wizard
 name: KMail Account Wizard
 projectpath: kde/pim/kmail-account-wizard
 repoactive: true
-repopath: kmail-account-wizard
-type: project
+repopath: /pim/kmail-account-wizard
diff --git a/projects-invent/pim/kmail/metadata.yaml b/projects-invent/pim/kmail/metadata.yaml
index 365299c6..dedf0e18 100644
--- a/projects-invent/pim/kmail/metadata.yaml
+++ b/projects-invent/pim/kmail/metadata.yaml
@@ -1,11 +1,7 @@
 description: Email client, supporting POP3 and IMAP mailboxes.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kmail
 name: KMail
 projectpath: kde/pim/kmail
 repoactive: true
-repopath: kmail
-type: project
+repopath: /pim/kmail
diff --git a/projects-invent/pim/kmailtransport/metadata.yaml b/projects-invent/pim/kmailtransport/metadata.yaml
index 51669b7f..d7bda22c 100644
--- a/projects-invent/pim/kmailtransport/metadata.yaml
+++ b/projects-invent/pim/kmailtransport/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Utilities to assist integration with KMail'
+description: Utilities to assist integration with KMail
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kmailtransport
 name: kmailtransport
 projectpath: kde/pim/kmailtransport
 repoactive: true
-repopath: kmailtransport
-type: project
+repopath: /pim/kmailtransport
diff --git a/projects-invent/pim/kmbox/metadata.yaml b/projects-invent/pim/kmbox/metadata.yaml
index fd471540..ecfd16fc 100644
--- a/projects-invent/pim/kmbox/metadata.yaml
+++ b/projects-invent/pim/kmbox/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Library for working with MBox format files'
+description: Library for working with MBox format files
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kmbox
 name: kmbox
 projectpath: kde/pim/kmbox
 repoactive: true
-repopath: kmbox
-type: project
+repopath: /pim/kmbox
diff --git a/projects-invent/pim/kmime/metadata.yaml b/projects-invent/pim/kmime/metadata.yaml
index 3d00700b..2b6594d1 100644
--- a/projects-invent/pim/kmime/metadata.yaml
+++ b/projects-invent/pim/kmime/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Library to assist handling MIME data'
+description: Library to assist handling MIME data
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kmime
 name: kmime
 projectpath: kde/pim/kmime
 repoactive: true
-repopath: kmime
-type: project
+repopath: /pim/kmime
diff --git a/projects-invent/pim/knotes/metadata.yaml b/projects-invent/pim/knotes/metadata.yaml
index 04109872..9d62b2fe 100644
--- a/projects-invent/pim/knotes/metadata.yaml
+++ b/projects-invent/pim/knotes/metadata.yaml
@@ -1,11 +1,7 @@
 description: Note taking
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: knotes
 name: KNotes
 projectpath: kde/pim/knotes
 repoactive: true
-repopath: knotes
-type: project
+repopath: /pim/knotes
diff --git a/projects-invent/pim/kontact/metadata.yaml b/projects-invent/pim/kontact/metadata.yaml
index b74bea79..d7df73f1 100644
--- a/projects-invent/pim/kontact/metadata.yaml
+++ b/projects-invent/pim/kontact/metadata.yaml
@@ -1,11 +1,8 @@
-description: Container application to unify several major PIM applications within one application.
+description: Container application to unify several major PIM applications within
+  one application.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kontact
 name: Kontact
 projectpath: kde/pim/kontact
 repoactive: true
-repopath: kontact
-type: project
+repopath: /pim/kontact
diff --git a/projects-invent/pim/kontactinterface/metadata.yaml b/projects-invent/pim/kontactinterface/metadata.yaml
index 6e71a623..1d97f4cb 100644
--- a/projects-invent/pim/kontactinterface/metadata.yaml
+++ b/projects-invent/pim/kontactinterface/metadata.yaml
@@ -1,11 +1,8 @@
-description: 'KContact Interface: Support libraries to assist integration with Kontact - The KDE PIM Suite'
+description: 'KContact Interface: Support libraries to assist integration with Kontact
+  - The KDE PIM Suite'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kontactinterface
 name: kontactinterface
 projectpath: kde/pim/kontactinterface
 repoactive: true
-repopath: kontactinterface
-type: project
+repopath: /pim/kontactinterface
diff --git a/projects-invent/pim/korganizer/metadata.yaml b/projects-invent/pim/korganizer/metadata.yaml
index 63dc090b..f5588be6 100644
--- a/projects-invent/pim/korganizer/metadata.yaml
+++ b/projects-invent/pim/korganizer/metadata.yaml
@@ -1,11 +1,8 @@
-description: Organizational assistant, providing calendars and other similar functionality to help you organize your life.
+description: Organizational assistant, providing calendars and other similar functionality
+  to help you organize your life.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: korganizer
 name: KOrganizer
 projectpath: kde/pim/korganizer
 repoactive: true
-repopath: korganizer
-type: project
+repopath: /pim/korganizer
diff --git a/projects-invent/pim/kpeoplesink/metadata.yaml b/projects-invent/pim/kpeoplesink/metadata.yaml
index 704fc472..90b57774 100644
--- a/projects-invent/pim/kpeoplesink/metadata.yaml
+++ b/projects-invent/pim/kpeoplesink/metadata.yaml
@@ -1,11 +1,7 @@
 description: Makes it possible to expose data in SInk to KPeople.
 hasrepo: true
-icon: null
-members:
-- displayname: Rituka Patwal
-  username: rpatwal
+identifier: kpeoplesink
 name: KPeople Sink backend
 projectpath: playground/pim/kpeoplesink
 repoactive: true
-repopath: kpeoplesink
-type: project
+repopath: /pim/kpeoplesink
diff --git a/projects-invent/pim/kpeoplevcard/metadata.yaml b/projects-invent/pim/kpeoplevcard/metadata.yaml
index 7a2bc8c6..6a7f2dc6 100644
--- a/projects-invent/pim/kpeoplevcard/metadata.yaml
+++ b/projects-invent/pim/kpeoplevcard/metadata.yaml
@@ -1,11 +1,7 @@
 description: Makes it possible to expose vcards to KPeople.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kpeoplevcard
 name: KPeople VCard backend
 projectpath: playground/pim/kpeoplevcard
 repoactive: true
-repopath: kpeoplevcard
-type: project
+repopath: /pim/kpeoplevcard
diff --git a/projects-invent/pim/kpimtextedit/metadata.yaml b/projects-invent/pim/kpimtextedit/metadata.yaml
index 39d16afb..a38e756d 100644
--- a/projects-invent/pim/kpimtextedit/metadata.yaml
+++ b/projects-invent/pim/kpimtextedit/metadata.yaml
@@ -1,11 +1,7 @@
 description: 'PIM Text Editor: Extended text editor for PIM applications'
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kpimtextedit
 name: kpimtextedit
 projectpath: kde/pim/kpimtextedit
 repoactive: true
-repopath: kpimtextedit
-type: project
+repopath: /pim/kpimtextedit
diff --git a/projects-invent/pim/kpkpass/metadata.yaml b/projects-invent/pim/kpkpass/metadata.yaml
index 5a23ca26..fcd23742 100644
--- a/projects-invent/pim/kpkpass/metadata.yaml
+++ b/projects-invent/pim/kpkpass/metadata.yaml
@@ -1,11 +1,7 @@
 description: Apple Wallet Pass reader
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: kpkpass
 name: Apple Wallet Pass reader
 projectpath: kde/pim/kpkpass
 repoactive: true
-repopath: kpkpass
-type: project
+repopath: /pim/kpkpass
diff --git a/projects-invent/pim/ksmtp/metadata.yaml b/projects-invent/pim/ksmtp/metadata.yaml
index 2ff8ae84..4449572f 100644
--- a/projects-invent/pim/ksmtp/metadata.yaml
+++ b/projects-invent/pim/ksmtp/metadata.yaml
@@ -1,11 +1,7 @@
 description: Job-based library to send email through an SMTP server.
 hasrepo: true
-icon: null
-members:
-- displayname: Gregory Schlomoff
-  username: schlomoff
+identifier: ksmtp
 name: KSmtp
 projectpath: kde/pim/ksmtp
 repoactive: true
-repopath: ksmtp
-type: project
+repopath: /pim/ksmtp
diff --git a/projects-invent/pim/ktimetracker/metadata.yaml b/projects-invent/pim/ktimetracker/metadata.yaml
index a2a622fa..2be02f89 100644
--- a/projects-invent/pim/ktimetracker/metadata.yaml
+++ b/projects-invent/pim/ktimetracker/metadata.yaml
@@ -1,11 +1,7 @@
 description: Todo management and time tracker
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Potashev
-  username: aspotashev
+identifier: ktimetracker
 name: KTimeTracker
 projectpath: extragear/pim/ktimetracker
 repoactive: true
-repopath: ktimetracker
-type: project
+repopath: /pim/ktimetracker
diff --git a/projects-invent/pim/ktnef/metadata.yaml b/projects-invent/pim/ktnef/metadata.yaml
index c8ea198d..e2537cc3 100644
--- a/projects-invent/pim/ktnef/metadata.yaml
+++ b/projects-invent/pim/ktnef/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Libraries to work with TNEF Email Attachments'
+description: Libraries to work with TNEF Email Attachments
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: ktnef
 name: ktnef
 projectpath: kde/pim/ktnef
 repoactive: true
-repopath: ktnef
-type: project
+repopath: /pim/ktnef
diff --git a/projects-invent/pim/kube/metadata.yaml b/projects-invent/pim/kube/metadata.yaml
index bb589c49..373b117b 100644
--- a/projects-invent/pim/kube/metadata.yaml
+++ b/projects-invent/pim/kube/metadata.yaml
@@ -1,13 +1,7 @@
 description: A modern groupware client based on QtQuick and Sink.
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Mollekopf
-  username: cmollekopf
-- displayname: Michael Bohlender
-  username: mbohlender
+identifier: kube
 name: Kube
 projectpath: playground/pim/kube
 repoactive: true
-repopath: kube
-type: project
+repopath: /pim/kube
diff --git a/projects-invent/pim/libgravatar/metadata.yaml b/projects-invent/pim/libgravatar/metadata.yaml
index 50efbe04..6331c250 100644
--- a/projects-invent/pim/libgravatar/metadata.yaml
+++ b/projects-invent/pim/libgravatar/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides gravatar support
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: libgravatar
 name: Lib provides gravatar support
 projectpath: kde/pim/libgravatar
 repoactive: true
-repopath: libgravatar
-type: project
+repopath: /pim/libgravatar
diff --git a/projects-invent/pim/libkdepim/metadata.yaml b/projects-invent/pim/libkdepim/metadata.yaml
index f6e4817f..b7e1b5e5 100644
--- a/projects-invent/pim/libkdepim/metadata.yaml
+++ b/projects-invent/pim/libkdepim/metadata.yaml
@@ -1,11 +1,7 @@
 description: lib for common kdepim apps
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: libkdepim
 name: kdepim libs
 projectpath: kde/pim/libkdepim
 repoactive: true
-repopath: libkdepim
-type: project
+repopath: /pim/libkdepim
diff --git a/projects-invent/pim/libkgapi/metadata.yaml b/projects-invent/pim/libkgapi/metadata.yaml
index 0c9b592b..2935430f 100644
--- a/projects-invent/pim/libkgapi/metadata.yaml
+++ b/projects-invent/pim/libkgapi/metadata.yaml
@@ -1,12 +1,8 @@
 description: LibKGAPI is a KDE-based library for accessing various Google services
   via their public API.
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: libkgapi
 name: LibKGAPI
 projectpath: kde/pim/libkgapi
 repoactive: true
-repopath: libkgapi
-type: project
+repopath: /pim/libkgapi
diff --git a/projects-invent/pim/libkleo/metadata.yaml b/projects-invent/pim/libkleo/metadata.yaml
index 88497f5b..66ae45ab 100644
--- a/projects-invent/pim/libkleo/metadata.yaml
+++ b/projects-invent/pim/libkleo/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides crypto for mails
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: libkleo
 name: crypto lib support
 projectpath: kde/pim/libkleo
 repoactive: true
-repopath: libkleo
-type: project
+repopath: /pim/libkleo
diff --git a/projects-invent/pim/libksieve/metadata.yaml b/projects-invent/pim/libksieve/metadata.yaml
index 9002ecf1..c76590c0 100644
--- a/projects-invent/pim/libksieve/metadata.yaml
+++ b/projects-invent/pim/libksieve/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib manages sieve support
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: libksieve
 name: library which manages sieve support
 projectpath: kde/pim/libksieve
 repoactive: true
-repopath: libksieve
-type: project
+repopath: /pim/libksieve
diff --git a/projects-invent/pim/mailcommon/metadata.yaml b/projects-invent/pim/mailcommon/metadata.yaml
index 2775e4d7..5d337e8e 100644
--- a/projects-invent/pim/mailcommon/metadata.yaml
+++ b/projects-invent/pim/mailcommon/metadata.yaml
@@ -1,11 +1,7 @@
 description: lib which provides support for mail apps
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: mailcommon
 name: lib for common mail apps
 projectpath: kde/pim/mailcommon
 repoactive: true
-repopath: mailcommon
-type: project
+repopath: /pim/mailcommon
diff --git a/projects-invent/pim/mailimporter/metadata.yaml b/projects-invent/pim/mailimporter/metadata.yaml
index dbfeb561..731dc643 100644
--- a/projects-invent/pim/mailimporter/metadata.yaml
+++ b/projects-invent/pim/mailimporter/metadata.yaml
@@ -1,11 +1,7 @@
 description: Mail importer library
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: mailimporter
 name: Mail importer library
 projectpath: kde/pim/mailimporter
 repoactive: true
-repopath: mailimporter
-type: project
+repopath: /pim/mailimporter
diff --git a/projects-invent/pim/mbox-importer/metadata.yaml b/projects-invent/pim/mbox-importer/metadata.yaml
index 1d48aa2c..e32b8aca 100644
--- a/projects-invent/pim/mbox-importer/metadata.yaml
+++ b/projects-invent/pim/mbox-importer/metadata.yaml
@@ -1,11 +1,7 @@
 description: Wizard to assist with importing MBox email archives into Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: mbox-importer
 name: MBox Import Assistant
 projectpath: kde/pim/mbox-importer
 repoactive: true
-repopath: mbox-importer
-type: project
+repopath: /pim/mbox-importer
diff --git a/projects-invent/pim/messagelib/metadata.yaml b/projects-invent/pim/messagelib/metadata.yaml
index 2fb677f4..4a94cb50 100644
--- a/projects-invent/pim/messagelib/metadata.yaml
+++ b/projects-invent/pim/messagelib/metadata.yaml
@@ -1,11 +1,7 @@
 description: This repository contains all lib for messages
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: messagelib
 name: Library for messages
 projectpath: kde/pim/messagelib
 repoactive: true
-repopath: messagelib
-type: project
+repopath: /pim/messagelib
diff --git a/projects-invent/pim/metadata.yaml b/projects-invent/pim/metadata.yaml
index b13a13f3..4fc139fa 100644
--- a/projects-invent/pim/metadata.yaml
+++ b/projects-invent/pim/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: null
 name: PIM
 projectpath: kde/pim
 repoactive: false
-repopath: null
-type: module
+repopath: /pim
diff --git a/projects-invent/pim/pim-data-exporter/metadata.yaml b/projects-invent/pim/pim-data-exporter/metadata.yaml
index 4d06040d..91683add 100644
--- a/projects-invent/pim/pim-data-exporter/metadata.yaml
+++ b/projects-invent/pim/pim-data-exporter/metadata.yaml
@@ -1,11 +1,8 @@
-description: Application to assist you with backing up and archiving PIM data, including the necessary configuration, for archival or transfer to another computer.
+description: Application to assist you with backing up and archiving PIM data, including
+  the necessary configuration, for archival or transfer to another computer.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: pim-data-exporter
 name: PIM Data Export Assistant
 projectpath: kde/pim/pim-data-exporter
 repoactive: true
-repopath: pim-data-exporter
-type: project
+repopath: /pim/pim-data-exporter
diff --git a/projects-invent/pim/pim-sieve-editor/metadata.yaml b/projects-invent/pim/pim-sieve-editor/metadata.yaml
index 03b5ddef..b917733b 100644
--- a/projects-invent/pim/pim-sieve-editor/metadata.yaml
+++ b/projects-invent/pim/pim-sieve-editor/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application to assist with editing IMAP Sieve filters.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: pim-sieve-editor
 name: IMAP Sieve Filter Editor
 projectpath: kde/pim/pim-sieve-editor
 repoactive: true
-repopath: pim-sieve-editor
-type: project
+repopath: /pim/pim-sieve-editor
diff --git a/projects-invent/pim/pimcommon/metadata.yaml b/projects-invent/pim/pimcommon/metadata.yaml
index 09d90de7..be371d2b 100644
--- a/projects-invent/pim/pimcommon/metadata.yaml
+++ b/projects-invent/pim/pimcommon/metadata.yaml
@@ -1,11 +1,7 @@
 description: common lib for kdepim
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: pimcommon
 name: kdepim common lib
 projectpath: kde/pim/pimcommon
 repoactive: true
-repopath: pimcommon
-type: project
+repopath: /pim/pimcommon
diff --git a/projects-invent/pim/sink/metadata.yaml b/projects-invent/pim/sink/metadata.yaml
index 661e59a1..07c3adaa 100644
--- a/projects-invent/pim/sink/metadata.yaml
+++ b/projects-invent/pim/sink/metadata.yaml
@@ -1,13 +1,7 @@
 description: An offline-caching, synchronization and indexing system for PIM data.
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Bohlender
-  username: mbohlender
-- displayname: Christian Mollekopf
-  username: cmollekopf
+identifier: sink
 name: Sink
 projectpath: playground/pim/sink
 repoactive: true
-repopath: sink
-type: project
+repopath: /pim/sink
diff --git a/projects-invent/pim/trojita/metadata.yaml b/projects-invent/pim/trojita/metadata.yaml
index 121b57b8..eeee2ab0 100644
--- a/projects-invent/pim/trojita/metadata.yaml
+++ b/projects-invent/pim/trojita/metadata.yaml
@@ -1,18 +1,8 @@
 description: A fast and lightweight IMAP e-mail client designed with standard-compliance
   in mind
 hasrepo: true
-icon: null
-members:
-- displayname: Stephan Platz
-  username: Platz
-- displayname: Caspar Schutijser
-  username: cschutijser
-- displayname: "Thomas L\xFCbking"
-  username: luebking
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: trojita
 name: "Trojit\xE1 IMAP e-mail client"
 projectpath: extragear/pim/trojita
 repoactive: true
-repopath: trojita
-type: project
+repopath: /pim/trojita
diff --git a/projects-invent/pim/zanshin/metadata.yaml b/projects-invent/pim/zanshin/metadata.yaml
index e78eed4e..b695287a 100644
--- a/projects-invent/pim/zanshin/metadata.yaml
+++ b/projects-invent/pim/zanshin/metadata.yaml
@@ -1,14 +1,8 @@
 description: A Getting Things Done application which aims at getting your mind like
   water.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
-- displayname: Christian Mollekopf
-  username: cmollekopf
+identifier: zanshin
 name: Zanshin
 projectpath: extragear/pim/zanshin
 repoactive: true
-repopath: zanshin
-type: project
+repopath: /pim/zanshin
diff --git a/projects-invent/plasma-mobile/alligator/metadata.yaml b/projects-invent/plasma-mobile/alligator/metadata.yaml
index 34c655e4..24d56bd8 100644
--- a/projects-invent/plasma-mobile/alligator/metadata.yaml
+++ b/projects-invent/plasma-mobile/alligator/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kirigami RSS Reader
 hasrepo: true
-icon: null
-members:
-- displayname: "Tobias Fella"
-  username: tfella
-name: "Alligator"
+identifier: alligator
+name: Alligator
 projectpath: playground/network/alligator
 repoactive: true
-repopath: alligator
-type: project
+repopath: /plasma-mobile/alligator
diff --git a/projects-invent/plasma-mobile/calindori/metadata.yaml b/projects-invent/plasma-mobile/calindori/metadata.yaml
index fc88d67c..12322339 100644
--- a/projects-invent/plasma-mobile/calindori/metadata.yaml
+++ b/projects-invent/plasma-mobile/calindori/metadata.yaml
@@ -1,11 +1,7 @@
 description: Calendar application for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Dimitris Kardarakos
-  username: dkardarakos
+identifier: calindori
 name: Calindori
 projectpath: kdereview/calindori
 repoactive: true
-repopath: calindori
-type: project
+repopath: /plasma-mobile/calindori
diff --git a/projects-invent/plasma-mobile/kaccounts-mobile/metadata.yaml b/projects-invent/plasma-mobile/kaccounts-mobile/metadata.yaml
index 25d3c251..d13a5296 100644
--- a/projects-invent/plasma-mobile/kaccounts-mobile/metadata.yaml
+++ b/projects-invent/plasma-mobile/kaccounts-mobile/metadata.yaml
@@ -1,11 +1,7 @@
 description: Collection of things for KAccounts targeted for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: kaccounts-mobile
 name: KAccounts Mobile
 projectpath: playground/mobile/kaccounts-mobile
 repoactive: true
-repopath: kaccounts-mobile
-type: project
+repopath: /plasma-mobile/kaccounts-mobile
diff --git a/projects-invent/plasma-mobile/kclock/metadata.yaml b/projects-invent/plasma-mobile/kclock/metadata.yaml
index bb6db745..c418e9cc 100644
--- a/projects-invent/plasma-mobile/kclock/metadata.yaml
+++ b/projects-invent/plasma-mobile/kclock/metadata.yaml
@@ -1,11 +1,7 @@
 description: Clock application written using Kirigami
 hasrepo: true
-icon: null
-members:
-- displayname: Devin Lin
-  username: devinlin
+identifier: kclock
 name: KClock
 projectpath: playground/mobile/kclock
 repoactive: true
-repopath: kclock
-type: project
+repopath: /plasma-mobile/kclock
diff --git a/projects-invent/plasma-mobile/koko/metadata.yaml b/projects-invent/plasma-mobile/koko/metadata.yaml
index b4df0b8c..e5487176 100644
--- a/projects-invent/plasma-mobile/koko/metadata.yaml
+++ b/projects-invent/plasma-mobile/koko/metadata.yaml
@@ -1,11 +1,7 @@
 description: An Image Gallery application
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: koko
 name: Koko
 projectpath: playground/graphics/koko
 repoactive: true
-repopath: koko
-type: project
+repopath: /plasma-mobile/koko
diff --git a/projects-invent/plasma-mobile/mtp-server/metadata.yaml b/projects-invent/plasma-mobile/mtp-server/metadata.yaml
index 3da3e197..60a74a4a 100644
--- a/projects-invent/plasma-mobile/mtp-server/metadata.yaml
+++ b/projects-invent/plasma-mobile/mtp-server/metadata.yaml
@@ -1,13 +1,7 @@
 description: MTP Server allowing file access to Plasma Mobile devices
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: mtp-server
 name: MTP Server
 projectpath: playground/mobile/mtp-server
 repoactive: true
-repopath: mtp-server
-type: project
+repopath: /plasma-mobile/mtp-server
diff --git a/projects-invent/plasma-mobile/plasma-angelfish/metadata.yaml b/projects-invent/plasma-mobile/plasma-angelfish/metadata.yaml
index fe848bab..36cd711c 100644
--- a/projects-invent/plasma-mobile/plasma-angelfish/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-angelfish/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma Demo Webbrowser for Mobile Devices
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-angelfish
 name: Angelfish
 projectpath: extragear/base/plasma-angelfish
 repoactive: true
-repopath: plasma-angelfish
-type: project
+repopath: /plasma-mobile/plasma-angelfish
diff --git a/projects-invent/plasma-mobile/plasma-camera/metadata.yaml b/projects-invent/plasma-mobile/plasma-camera/metadata.yaml
index 340a5e12..db878202 100644
--- a/projects-invent/plasma-mobile/plasma-camera/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-camera/metadata.yaml
@@ -1,11 +1,7 @@
 description: Simple camera application for mobile devices
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: plasma-camera
 name: Plasma Camera App
 projectpath: extragear/base/plasma-camera
 repoactive: true
-repopath: plasma-camera
-type: project
+repopath: /plasma-mobile/plasma-camera
diff --git a/projects-invent/plasma-mobile/plasma-dialer/metadata.yaml b/projects-invent/plasma-mobile/plasma-dialer/metadata.yaml
index 05d3940c..18182433 100644
--- a/projects-invent/plasma-mobile/plasma-dialer/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-dialer/metadata.yaml
@@ -1,11 +1,7 @@
 description: Dialer for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Bhushan Shah
-  username: bshah
+identifier: plasma-dialer
 name: Plasma Mobile dialer
 projectpath: playground/base/plasma-dialer
 repoactive: true
-repopath: plasma-dialer
-type: project
+repopath: /plasma-mobile/plasma-dialer
diff --git a/projects-invent/plasma-mobile/plasma-maliit-framework/metadata.yaml b/projects-invent/plasma-mobile/plasma-maliit-framework/metadata.yaml
index 992632b0..15d6d921 100644
--- a/projects-invent/plasma-mobile/plasma-maliit-framework/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-maliit-framework/metadata.yaml
@@ -1,13 +1,7 @@
 description: Framework for Maliit integration with Plasma
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-maliit-framework
 name: Plasma Maliit Framework
 projectpath: playground/mobile/plasma-maliit-framework
 repoactive: false
-repopath: plasma-maliit-framework
-type: project
+repopath: /plasma-mobile/plasma-maliit-framework
diff --git a/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml b/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml
index e5aa5157..2bfa47d3 100644
--- a/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-maliit-inputcontext-gtk/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'Maliit Gtk Input Context (for Plasma)'
+description: Maliit Gtk Input Context (for Plasma)
 hasrepo: false
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Bhushan Shah
-  username: bshah
+identifier: null
 name: Maliit Gtk+ Input Context
 projectpath: playground/mobile/plasma-maliit-inputcontext-gtk
 repoactive: false
-repopath: null
-type: project
+repopath: /plasma-mobile/plasma-maliit-inputcontext-gtk
diff --git a/projects-invent/plasma-mobile/plasma-maliit-plugins/metadata.yaml b/projects-invent/plasma-mobile/plasma-maliit-plugins/metadata.yaml
index a32f3a7d..79c589c7 100644
--- a/projects-invent/plasma-mobile/plasma-maliit-plugins/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-maliit-plugins/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma Integration for Maliit virtual keyboard
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-maliit-plugins
 name: Plasma Maliit Plugins
 projectpath: playground/mobile/plasma-maliit-plugins
 repoactive: true
-repopath: plasma-maliit-plugins
-type: project
+repopath: /plasma-mobile/plasma-maliit-plugins
diff --git a/projects-invent/plasma-mobile/plasma-mycroft-mobile/metadata.yaml b/projects-invent/plasma-mobile/plasma-mycroft-mobile/metadata.yaml
index 71d1efc2..76c8f281 100644
--- a/projects-invent/plasma-mobile/plasma-mycroft-mobile/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-mycroft-mobile/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma Mobile integration of different Mycroft AI services.
 hasrepo: true
-icon: null
-members:
-- displayname: "Aditya Mehra"
-  username: adityam
+identifier: plasma-mycroft-mobile
 name: Mycroft Plasma Mobile integration
 projectpath: playground/utils/plasma-mycroft-mobile
 repoactive: true
-repopath: plasma-mycroft-mobile
-type: project
+repopath: /plasma-mobile/plasma-mycroft-mobile
diff --git a/projects-invent/plasma-mobile/plasma-phone-settings/metadata.yaml b/projects-invent/plasma-mobile/plasma-phone-settings/metadata.yaml
index 550c2706..2b779b30 100644
--- a/projects-invent/plasma-mobile/plasma-phone-settings/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-phone-settings/metadata.yaml
@@ -1,13 +1,7 @@
 description: Default settings for Plasma Phone
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-phone-settings
 name: Plasma Phone Settings
 projectpath: playground/mobile/plasma-phone-settings
 repoactive: true
-repopath: plasma-phone-settings
-type: project
+repopath: /plasma-mobile/plasma-phone-settings
diff --git a/projects-invent/plasma-mobile/plasma-phonebook/metadata.yaml b/projects-invent/plasma-mobile/plasma-phonebook/metadata.yaml
index b3d02bf6..a02200e0 100644
--- a/projects-invent/plasma-mobile/plasma-phonebook/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-phonebook/metadata.yaml
@@ -1,11 +1,7 @@
 description: Phone Book for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Nicolas Fella
-  username: nicolasfella
+identifier: plasma-phonebook
 name: Plasma Mobile Phonebook
 projectpath: playground/base/plasma-phonebook
 repoactive: true
-repopath: plasma-phonebook
-type: project
+repopath: /plasma-mobile/plasma-phonebook
diff --git a/projects-invent/plasma-mobile/plasma-samegame/metadata.yaml b/projects-invent/plasma-mobile/plasma-samegame/metadata.yaml
index 6968bc7f..6fe5aa06 100644
--- a/projects-invent/plasma-mobile/plasma-samegame/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-samegame/metadata.yaml
@@ -1,11 +1,7 @@
 description: Samegame clone suitable for mobile devices
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-samegame
 name: Plasma Samegame
 projectpath: extragear/base/plasma-samegame
 repoactive: false
-repopath: plasma-samegame
-type: project
+repopath: /plasma-mobile/plasma-samegame
diff --git a/projects-invent/plasma-mobile/plasma-settings/metadata.yaml b/projects-invent/plasma-mobile/plasma-settings/metadata.yaml
index 411b938f..ef44a2e3 100644
--- a/projects-invent/plasma-mobile/plasma-settings/metadata.yaml
+++ b/projects-invent/plasma-mobile/plasma-settings/metadata.yaml
@@ -1,13 +1,7 @@
 description: Settings application for Mobile Devices
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-settings
 name: Plasma Mobile Settings
 projectpath: extragear/base/plasma-settings
 repoactive: true
-repopath: plasma-settings
-type: project
+repopath: /plasma-mobile/plasma-settings
diff --git a/projects-invent/plasma-mobile/qrca/metadata.yaml b/projects-invent/plasma-mobile/qrca/metadata.yaml
index ac5708e0..bb86f3c0 100644
--- a/projects-invent/plasma-mobile/qrca/metadata.yaml
+++ b/projects-invent/plasma-mobile/qrca/metadata.yaml
@@ -1,11 +1,7 @@
 description: QR-Code scanner for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Jonah Brüchert
-  username: jbbgameich
+identifier: qrca
 name: qrca
 projectpath: playground/mobile/qrca
 repoactive: true
-repopath: qrca
-type: project
+repopath: /plasma-mobile/qrca
diff --git a/projects-invent/plasma-mobile/spacebar/metadata.yaml b/projects-invent/plasma-mobile/spacebar/metadata.yaml
index 90b6eaa9..7c7ac8bd 100644
--- a/projects-invent/plasma-mobile/spacebar/metadata.yaml
+++ b/projects-invent/plasma-mobile/spacebar/metadata.yaml
@@ -1,11 +1,7 @@
 description: Collection of stuff for running IM on Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: spacebar
 name: SpaceBar
 projectpath: playground/mobile/spacebar
 repoactive: true
-repopath: spacebar
-type: project
+repopath: /plasma-mobile/spacebar
diff --git a/projects-invent/plasma-mobile/trainer/metadata.yaml b/projects-invent/plasma-mobile/trainer/metadata.yaml
index 494efdc7..67280dce 100644
--- a/projects-invent/plasma-mobile/trainer/metadata.yaml
+++ b/projects-invent/plasma-mobile/trainer/metadata.yaml
@@ -1,11 +1,8 @@
-description: Application to help you practice sport exercises that have a description and duration.
+description: Application to help you practice sport exercises that have a description
+  and duration.
 hasrepo: true
-icon: null
-members:
-- displayname: Matthieu Gallien
-  username: mgallien
+identifier: trainer
 name: Trainer
 projectpath: playground/mobile/trainer
 repoactive: true
-repopath: trainer
-type: project
+repopath: /plasma-mobile/trainer
diff --git a/projects-invent/plasma/bluedevil/metadata.yaml b/projects-invent/plasma/bluedevil/metadata.yaml
index 35d42a9e..fd8d3864 100644
--- a/projects-invent/plasma/bluedevil/metadata.yaml
+++ b/projects-invent/plasma/bluedevil/metadata.yaml
@@ -14,18 +14,8 @@ description: 'Bluedevil is a project which intends to integrate the Bluetooth te
 
   * KIO integration (ability to browse Devices and their files)'
 hasrepo: true
-icon: null
-members:
-- displayname: David Rosca
-  username: drosca
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Rafael Fern\xE1ndez L\xF3pez"
-  username: ereslibre
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: bluedevil
 name: Bluedevil
 projectpath: kde/workspace/bluedevil
 repoactive: true
-repopath: bluedevil
-type: project
+repopath: /plasma/bluedevil
diff --git a/projects-invent/plasma/breeze-grub/metadata.yaml b/projects-invent/plasma/breeze-grub/metadata.yaml
index 285d7811..89ad66a6 100644
--- a/projects-invent/plasma/breeze-grub/metadata.yaml
+++ b/projects-invent/plasma/breeze-grub/metadata.yaml
@@ -1,17 +1,7 @@
 description: Grub theme for the Breeze visual style for the Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Andreas Kainz
-  username: andreask
-- displayname: Andrew Lake
-  username: alake
-- displayname: Marco Martin
-  username: mart
+identifier: breeze-grub
 name: Breeze Grub visual style
 projectpath: kde/workspace/breeze-grub
 repoactive: true
-repopath: breeze-grub
-type: project
+repopath: /plasma/breeze-grub
diff --git a/projects-invent/plasma/breeze-gtk/metadata.yaml b/projects-invent/plasma/breeze-gtk/metadata.yaml
index 07ccc486..a42c6afa 100644
--- a/projects-invent/plasma/breeze-gtk/metadata.yaml
+++ b/projects-invent/plasma/breeze-gtk/metadata.yaml
@@ -1,13 +1,7 @@
 description: Widget theme for GTK 2 and 3
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: breeze-gtk
 name: Breeze for Gtk
 projectpath: kde/workspace/breeze-gtk
 repoactive: true
-repopath: breeze-gtk
-type: project
+repopath: /plasma/breeze-gtk
diff --git a/projects-invent/plasma/breeze-plymouth/metadata.yaml b/projects-invent/plasma/breeze-plymouth/metadata.yaml
index f647112e..0649e34b 100644
--- a/projects-invent/plasma/breeze-plymouth/metadata.yaml
+++ b/projects-invent/plasma/breeze-plymouth/metadata.yaml
@@ -1,17 +1,7 @@
 description: Plymouth theme for the Breeze visual style for the Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Andreas Kainz
-  username: andreask
-- displayname: Andrew Lake
-  username: alake
-- displayname: Marco Martin
-  username: mart
+identifier: breeze-plymouth
 name: Breeze Plymouth visual style
 projectpath: kde/workspace/breeze-plymouth
 repoactive: true
-repopath: breeze-plymouth
-type: project
+repopath: /plasma/breeze-plymouth
diff --git a/projects-invent/plasma/breeze/metadata.yaml b/projects-invent/plasma/breeze/metadata.yaml
index 0d4094cd..ec884859 100644
--- a/projects-invent/plasma/breeze/metadata.yaml
+++ b/projects-invent/plasma/breeze/metadata.yaml
@@ -1,16 +1,8 @@
 description: Artwork, styles and assets for the Breeze visual style for the Plasma
   Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Andrew Lake
-  username: alake
-- displayname: Marco Martin
-  username: mart
+identifier: breeze
 name: Plasma Breeze visual style
 projectpath: kde/workspace/breeze
 repoactive: true
-repopath: breeze
-type: project
+repopath: /plasma/breeze
diff --git a/projects-invent/plasma/discover/metadata.yaml b/projects-invent/plasma/discover/metadata.yaml
index 20e331e9..a5684e60 100644
--- a/projects-invent/plasma/discover/metadata.yaml
+++ b/projects-invent/plasma/discover/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE and Plasma resources management GUI
 hasrepo: true
-icon: muondiscover
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: discover
 name: Discover
 projectpath: kde/workspace/discover
 repoactive: true
-repopath: discover
-type: project
+repopath: /plasma/discover
diff --git a/projects-invent/plasma/drkonqi/metadata.yaml b/projects-invent/plasma/drkonqi/metadata.yaml
index 7c47b126..6f4ae003 100644
--- a/projects-invent/plasma/drkonqi/metadata.yaml
+++ b/projects-invent/plasma/drkonqi/metadata.yaml
@@ -1,19 +1,7 @@
 description: 'DrKonqi: The KDE Crash Handler'
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: Marco Martin
-  username: mart
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: drkonqi
 name: DrKonqi
 projectpath: kde/workspace/drkonqi
 repoactive: true
-repopath: drkonqi
-type: project
+repopath: /plasma/drkonqi
diff --git a/projects-invent/plasma/kactivitymanagerd/metadata.yaml b/projects-invent/plasma/kactivitymanagerd/metadata.yaml
index 83088ce6..cd80bae6 100644
--- a/projects-invent/plasma/kactivitymanagerd/metadata.yaml
+++ b/projects-invent/plasma/kactivitymanagerd/metadata.yaml
@@ -1,14 +1,8 @@
 description: System service to manage user's activities, track the usage patterns
   etc.
 hasrepo: true
-icon: preferences-activities
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: kactivitymanagerd
 name: Activity manager service
 projectpath: kde/workspace/kactivitymanagerd
 repoactive: true
-repopath: kactivitymanagerd
-type: project
+repopath: /plasma/kactivitymanagerd
diff --git a/projects-invent/plasma/kde-cli-tools/metadata.yaml b/projects-invent/plasma/kde-cli-tools/metadata.yaml
index 6ab1e1b0..20a36767 100644
--- a/projects-invent/plasma/kde-cli-tools/metadata.yaml
+++ b/projects-invent/plasma/kde-cli-tools/metadata.yaml
@@ -1,13 +1,7 @@
 description: Tools based on KDE Frameworks 5 to better interact with the system.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kde-cli-tools
 name: KDE CLI tools
 projectpath: kde/workspace/kde-cli-tools
 repoactive: true
-repopath: kde-cli-tools
-type: project
+repopath: /plasma/kde-cli-tools
diff --git a/projects-invent/plasma/kde-gtk-config/metadata.yaml b/projects-invent/plasma/kde-gtk-config/metadata.yaml
index dab073b7..38cda8d4 100644
--- a/projects-invent/plasma/kde-gtk-config/metadata.yaml
+++ b/projects-invent/plasma/kde-gtk-config/metadata.yaml
@@ -5,18 +5,8 @@ description: "GTK2 and GTK3 Configurator for Plasma.\n\nConfiguration dialog to
   \ GTK applications.\n - Select GTK applications default fonts.\n - Easily browse\
   \ and install new GTK2 and GTK3 themes."
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Jos\xE9 Antonio S\xE1nchez Reynaga"
-  username: sanchezreynaga
-- displayname: Manuel Tortosa
-  username: manutortosa
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kde-gtk-config
 name: KDE GTK Configurator
 projectpath: kde/workspace/kde-gtk-config
 repoactive: true
-repopath: kde-gtk-config
-type: project
+repopath: /plasma/kde-gtk-config
diff --git a/projects-invent/plasma/kde-vdg-extras/metadata.yaml b/projects-invent/plasma/kde-vdg-extras/metadata.yaml
index 01a96b87..1d202e22 100644
--- a/projects-invent/plasma/kde-vdg-extras/metadata.yaml
+++ b/projects-invent/plasma/kde-vdg-extras/metadata.yaml
@@ -1,11 +1,8 @@
-description: Colour schemes, avatars and other additional visual assets for KDE Software created by the KDE VDG
+description: Colour schemes, avatars and other additional visual assets for KDE Software
+  created by the KDE VDG
 hasrepo: true
-icon: null
-members:
-- displayname: Filip Fila
-  username: filipf
+identifier: kde-vdg-extras
 name: VDG Extras for KDE Software
 projectpath: playground/artwork/kde-xdg-extras
 repoactive: true
-repopath: kde-vdg-extras
-type: project
+repopath: /plasma/kde-vdg-extras
diff --git a/projects-invent/plasma/kdecoration/metadata.yaml b/projects-invent/plasma/kdecoration/metadata.yaml
index 6fe8deb6..0ca02215 100644
--- a/projects-invent/plasma/kdecoration/metadata.yaml
+++ b/projects-invent/plasma/kdecoration/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plugin based library to create window decorations
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: kdecoration
 name: Window Decoration Library
 projectpath: kde/workspace/kdecoration
 repoactive: true
-repopath: kdecoration
-type: project
+repopath: /plasma/kdecoration
diff --git a/projects-invent/plasma/kdeplasma-addons/metadata.yaml b/projects-invent/plasma/kdeplasma-addons/metadata.yaml
index 0c7b4ddf..073f3686 100644
--- a/projects-invent/plasma/kdeplasma-addons/metadata.yaml
+++ b/projects-invent/plasma/kdeplasma-addons/metadata.yaml
@@ -1,25 +1,7 @@
 description: All kind of addons to improve your Plasma experience
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Artur Duque de Souza
-  username: asouza
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Marco Martin
-  username: mart
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Eike Hein
-  username: hein
+identifier: kdeplasma-addons
 name: Plasma Addons
 projectpath: kde/workspace/kdeplasma-addons
 repoactive: true
-repopath: kdeplasma-addons
-type: project
+repopath: /plasma/kdeplasma-addons
diff --git a/projects-invent/plasma/kgamma5/metadata.yaml b/projects-invent/plasma/kgamma5/metadata.yaml
index b1ad8ab5..f0ccce61 100644
--- a/projects-invent/plasma/kgamma5/metadata.yaml
+++ b/projects-invent/plasma/kgamma5/metadata.yaml
@@ -1,15 +1,7 @@
 description: Adjust your monitor's gamma settings
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Marcel Wiesweg
-  username: mwiesweg
+identifier: kgamma5
 name: KGamma
 projectpath: kde/workspace/kgamma5
 repoactive: true
-repopath: kgamma5
-type: project
+repopath: /plasma/kgamma5
diff --git a/projects-invent/plasma/khotkeys/metadata.yaml b/projects-invent/plasma/khotkeys/metadata.yaml
index d597edf5..d5a80978 100644
--- a/projects-invent/plasma/khotkeys/metadata.yaml
+++ b/projects-invent/plasma/khotkeys/metadata.yaml
@@ -1,13 +1,7 @@
 description: 'KHotkeys: Trigger actions when certain keys are pressed'
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: khotkeys
 name: khotkeys
 projectpath: kde/workspace/khotkeys
 repoactive: true
-repopath: khotkeys
-type: project
+repopath: /plasma/khotkeys
diff --git a/projects-invent/plasma/kinfocenter/metadata.yaml b/projects-invent/plasma/kinfocenter/metadata.yaml
index 35fc606d..32ea19ab 100644
--- a/projects-invent/plasma/kinfocenter/metadata.yaml
+++ b/projects-invent/plasma/kinfocenter/metadata.yaml
@@ -1,17 +1,7 @@
-description: "View information about your computer's hardware"
+description: View information about your computer's hardware
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kinfocenter
 name: kinfocenter
 projectpath: kde/workspace/kinfocenter
 repoactive: true
-repopath: kinfocenter
-type: project
+repopath: /plasma/kinfocenter
diff --git a/projects-invent/plasma/kmenuedit/metadata.yaml b/projects-invent/plasma/kmenuedit/metadata.yaml
index 707dd69c..3ed64d3a 100644
--- a/projects-invent/plasma/kmenuedit/metadata.yaml
+++ b/projects-invent/plasma/kmenuedit/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'Menu Editor for Plasma Workspaces'
+description: Menu Editor for Plasma Workspaces
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kmenuedit
 name: kmenuedit
 projectpath: kde/workspace/kmenuedit
 repoactive: true
-repopath: kmenuedit
-type: project
+repopath: /plasma/kmenuedit
diff --git a/projects-invent/plasma/kscreen/metadata.yaml b/projects-invent/plasma/kscreen/metadata.yaml
index b18629cc..e44f7221 100644
--- a/projects-invent/plasma/kscreen/metadata.yaml
+++ b/projects-invent/plasma/kscreen/metadata.yaml
@@ -1,17 +1,7 @@
 description: KDE's screen management software
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: kscreen
 name: KScreen
 projectpath: kde/workspace/kscreen
 repoactive: true
-repopath: kscreen
-type: project
+repopath: /plasma/kscreen
diff --git a/projects-invent/plasma/kscreenlocker/metadata.yaml b/projects-invent/plasma/kscreenlocker/metadata.yaml
index 429a1ea9..e092178e 100644
--- a/projects-invent/plasma/kscreenlocker/metadata.yaml
+++ b/projects-invent/plasma/kscreenlocker/metadata.yaml
@@ -1,15 +1,7 @@
 description: Library and components for secure lock screen architecture.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Bhushan Shah
-  username: bshah
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: kscreenlocker
 name: KScreenLocker
 projectpath: kde/workspace/kscreenlocker
 repoactive: true
-repopath: kscreenlocker
-type: project
+repopath: /plasma/kscreenlocker
diff --git a/projects-invent/plasma/ksshaskpass/metadata.yaml b/projects-invent/plasma/ksshaskpass/metadata.yaml
index d37bcfa0..85efdaac 100644
--- a/projects-invent/plasma/ksshaskpass/metadata.yaml
+++ b/projects-invent/plasma/ksshaskpass/metadata.yaml
@@ -1,13 +1,7 @@
 description: ssh-add helper that uses kwallet and kpassworddialog
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: ksshaskpass
 name: KSSHAskPass
 projectpath: kde/workspace/ksshaskpass
 repoactive: true
-repopath: ksshaskpass
-type: project
+repopath: /plasma/ksshaskpass
diff --git a/projects-invent/plasma/ksysguard/metadata.yaml b/projects-invent/plasma/ksysguard/metadata.yaml
index 87a184b3..e6fcee8a 100644
--- a/projects-invent/plasma/ksysguard/metadata.yaml
+++ b/projects-invent/plasma/ksysguard/metadata.yaml
@@ -1,13 +1,7 @@
-description: "KSysGuard: Monitor your computer's resource usage"
+description: 'KSysGuard: Monitor your computer''s resource usage'
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: ksysguard
 name: ksysguard
 projectpath: kde/workspace/ksysguard
 repoactive: true
-repopath: ksysguard
-type: project
+repopath: /plasma/ksysguard
diff --git a/projects-invent/plasma/kwallet-pam/metadata.yaml b/projects-invent/plasma/kwallet-pam/metadata.yaml
index ee87dee3..265a7e07 100644
--- a/projects-invent/plasma/kwallet-pam/metadata.yaml
+++ b/projects-invent/plasma/kwallet-pam/metadata.yaml
@@ -1,15 +1,7 @@
-description: 'PAM Integration with KWallet - Unlock KWallet when you login'
+description: PAM Integration with KWallet - Unlock KWallet when you login
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: kwallet-pam
 name: KWallet PAM Integration
 projectpath: kde/workspace/kwallet-pam
 repoactive: true
-repopath: kwallet-pam
-type: project
+repopath: /plasma/kwallet-pam
diff --git a/projects-invent/plasma/kwayland-integration/metadata.yaml b/projects-invent/plasma/kwayland-integration/metadata.yaml
index 3ac70792..f3c3629d 100644
--- a/projects-invent/plasma/kwayland-integration/metadata.yaml
+++ b/projects-invent/plasma/kwayland-integration/metadata.yaml
@@ -1,14 +1,8 @@
 description: Provides integration plugins for various KDE frameworks for the wayland
   windowing system.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: kwayland-integration
 name: Frameworks integration plugin using KWayland
 projectpath: kde/workspace/kwayland-integration
 repoactive: true
-repopath: kwayland-integration
-type: project
+repopath: /plasma/kwayland-integration
diff --git a/projects-invent/plasma/kwayland-server/metadata.yaml b/projects-invent/plasma/kwayland-server/metadata.yaml
index d6c5cd81..4bff9cd3 100644
--- a/projects-invent/plasma/kwayland-server/metadata.yaml
+++ b/projects-invent/plasma/kwayland-server/metadata.yaml
@@ -1,11 +1,7 @@
 description: Wayland Server Components built on KDE Frameworks
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: kwayland-server
 name: KWayland Server
 projectpath: playground/libs/kwayland-server
 repoactive: true
-repopath: kwayland-server
-type: project
+repopath: /plasma/kwayland-server
diff --git a/projects-invent/plasma/kwin/metadata.yaml b/projects-invent/plasma/kwin/metadata.yaml
index a7e3d87b..fe55ef0e 100644
--- a/projects-invent/plasma/kwin/metadata.yaml
+++ b/projects-invent/plasma/kwin/metadata.yaml
@@ -6,16 +6,8 @@ description: KWin is an easy to use, but flexible, composited Window Manger for
   primary mission. KWin does not have a dedicated targeted user group, but follows
   the targeted user group of the Desktop Shell using KWin as it's Window Manager.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kwin
 name: kwin
 projectpath: kde/workspace/kwin
 repoactive: true
-repopath: kwin
-type: project
+repopath: /plasma/kwin
diff --git a/projects-invent/plasma/kwrited/metadata.yaml b/projects-invent/plasma/kwrited/metadata.yaml
index 0e5a69bf..b3bdf67c 100644
--- a/projects-invent/plasma/kwrited/metadata.yaml
+++ b/projects-invent/plasma/kwrited/metadata.yaml
@@ -1,13 +1,7 @@
 description: 'KWriteD: Listen to traditional system notifications'
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kwrited
 name: kwrited
 projectpath: kde/workspace/kwrited
 repoactive: true
-repopath: kwrited
-type: project
+repopath: /plasma/kwrited
diff --git a/projects-invent/plasma/lancelot/metadata.yaml b/projects-invent/plasma/lancelot/metadata.yaml
index 2a1e750b..8aa2f327 100644
--- a/projects-invent/plasma/lancelot/metadata.yaml
+++ b/projects-invent/plasma/lancelot/metadata.yaml
@@ -1,12 +1,8 @@
 description: Alternative Launcher for Plasma with a more complete set of features
   compared to the default.
 hasrepo: true
-icon: lancelot
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: lancelot
 name: Lancelot
 projectpath: playground/base/lancelot
 repoactive: true
-repopath: lancelot
-type: project
+repopath: /plasma/lancelot
diff --git a/projects-invent/plasma/latte-dock/metadata.yaml b/projects-invent/plasma/latte-dock/metadata.yaml
index 290e0c85..0e87f6dc 100644
--- a/projects-invent/plasma/latte-dock/metadata.yaml
+++ b/projects-invent/plasma/latte-dock/metadata.yaml
@@ -1,13 +1,8 @@
-description: Replacement dock for Plasma desktops, providing an elegant and intuitive experience for your tasks and plasmoids
+description: Replacement dock for Plasma desktops, providing an elegant and intuitive
+  experience for your tasks and plasmoids
 hasrepo: true
-icon: null
-members:
-- displayname: Michail Vourlakos
-  username: mvourlakos
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: latte-dock
 name: Latte Dock
 projectpath: extragear/base/latte-dock
 repoactive: true
-repopath: latte-dock
-type: project
+repopath: /plasma/latte-dock
diff --git a/projects-invent/plasma/libkscreen/metadata.yaml b/projects-invent/plasma/libkscreen/metadata.yaml
index 3247744b..5dc6cf6a 100644
--- a/projects-invent/plasma/libkscreen/metadata.yaml
+++ b/projects-invent/plasma/libkscreen/metadata.yaml
@@ -1,17 +1,7 @@
 description: KDE's screen management software
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
+identifier: libkscreen
 name: libkscreen
 projectpath: kde/workspace/libkscreen
 repoactive: true
-repopath: libkscreen
-type: project
+repopath: /plasma/libkscreen
diff --git a/projects-invent/plasma/libksysguard/metadata.yaml b/projects-invent/plasma/libksysguard/metadata.yaml
index 002d2084..4b13e061 100644
--- a/projects-invent/plasma/libksysguard/metadata.yaml
+++ b/projects-invent/plasma/libksysguard/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'Library to retrieve information on the current status of computer hardware'
+description: Library to retrieve information on the current status of computer hardware
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: libksysguard
 name: libksysguard
 projectpath: kde/workspace/libksysguard
 repoactive: true
-repopath: libksysguard
-type: project
+repopath: /plasma/libksysguard
diff --git a/projects-invent/plasma/metadata.yaml b/projects-invent/plasma/metadata.yaml
index 0f586626..b9665664 100644
--- a/projects-invent/plasma/metadata.yaml
+++ b/projects-invent/plasma/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Workspace
 projectpath: kde/workspace
 repoactive: false
-repopath: null
-type: module
+repopath: /plasma
diff --git a/projects-invent/plasma/milou/metadata.yaml b/projects-invent/plasma/milou/metadata.yaml
index 1b4a0808..7fb74d33 100644
--- a/projects-invent/plasma/milou/metadata.yaml
+++ b/projects-invent/plasma/milou/metadata.yaml
@@ -1,13 +1,7 @@
 description: A dedicated search application built on top of Baloo
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: milou
 name: Milou
 projectpath: kde/workspace/milou
 repoactive: true
-repopath: milou
-type: project
+repopath: /plasma/milou
diff --git a/projects-invent/plasma/oxygen-gtk/metadata.yaml b/projects-invent/plasma/oxygen-gtk/metadata.yaml
index 458ee76d..b206756d 100644
--- a/projects-invent/plasma/oxygen-gtk/metadata.yaml
+++ b/projects-invent/plasma/oxygen-gtk/metadata.yaml
@@ -7,16 +7,8 @@ description: "Oxygen-Gtk is a port of the default KDE widget theme (Oxygen), to
   \ appearance via hard coded pixmaps, which otherwise breaks everytime some setting\
   \ is changed in kde."
 hasrepo: true
-icon: null
-members:
-- displayname: Hugo Pereira Da Costa
-  username: hpereiradacosta
-- displayname: Ruslan Kabatsayev
-  username: kabatsayev
-- displayname: Cedric Bellegarde
-  username: cedric
+identifier: oxygen-gtk
 name: Oxygen Gtk
 projectpath: playground/artwork/oxygen-gtk
 repoactive: true
-repopath: oxygen-gtk
-type: project
+repopath: /plasma/oxygen-gtk
diff --git a/projects-invent/plasma/oxygen/metadata.yaml b/projects-invent/plasma/oxygen/metadata.yaml
index 9e44be0b..ce3fdeb8 100644
--- a/projects-invent/plasma/oxygen/metadata.yaml
+++ b/projects-invent/plasma/oxygen/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'The Oxygen Style for Qt/KDE Applications'
+description: The Oxygen Style for Qt/KDE Applications
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: oxygen
 name: oxygen
 projectpath: kde/workspace/oxygen
 repoactive: true
-repopath: oxygen
-type: project
+repopath: /plasma/oxygen
diff --git a/projects-invent/plasma/plasma-active-window-control/metadata.yaml b/projects-invent/plasma/plasma-active-window-control/metadata.yaml
index 731a0d36..ee1d2b5f 100644
--- a/projects-invent/plasma/plasma-active-window-control/metadata.yaml
+++ b/projects-invent/plasma/plasma-active-window-control/metadata.yaml
@@ -1,13 +1,7 @@
 description: Active Window Control applet for the Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Kostolný
-  username: martinkostolny
-- displayname: Chris Holland
-  username: cholland
+identifier: plasma-active-window-control
 name: Plasma Active Window Control Applet
 projectpath: extragear/base/plasma-active-window-control
 repoactive: true
-repopath: plasma-active-window-control
-type: project
+repopath: /plasma/plasma-active-window-control
diff --git a/projects-invent/plasma/plasma-bigscreen/metadata.yaml b/projects-invent/plasma/plasma-bigscreen/metadata.yaml
index dfba2c39..7c4bf753 100644
--- a/projects-invent/plasma/plasma-bigscreen/metadata.yaml
+++ b/projects-invent/plasma/plasma-bigscreen/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma shell for TVs
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Aditya Mehra
-  username: adityam
+identifier: plasma-bigscreen
 name: plasma-bigscreen
 projectpath: playground/base/plasma-bigscreen
 repoactive: true
-repopath: plasma-bigscreen
-type: project
+repopath: /plasma/plasma-bigscreen
diff --git a/projects-invent/plasma/plasma-browser-integration/metadata.yaml b/projects-invent/plasma/plasma-browser-integration/metadata.yaml
index 3dae7bad..041a2b1e 100644
--- a/projects-invent/plasma/plasma-browser-integration/metadata.yaml
+++ b/projects-invent/plasma/plasma-browser-integration/metadata.yaml
@@ -1,11 +1,7 @@
 description: Components necessary to integrate browsers into the Plasma Desktop.
 hasrepo: true
-icon: null
-members:
-- displayname: "David Edmundson"
-  username: davidedmundson
+identifier: plasma-browser-integration
 name: Plasma Browser Integration
 projectpath: kde/workspace/plasma-browser-integration
 repoactive: true
-repopath: plasma-browser-integration
-type: project
+repopath: /plasma/plasma-browser-integration
diff --git a/projects-invent/plasma/plasma-desktop/metadata.yaml b/projects-invent/plasma/plasma-desktop/metadata.yaml
index 86343a48..062f3294 100644
--- a/projects-invent/plasma/plasma-desktop/metadata.yaml
+++ b/projects-invent/plasma/plasma-desktop/metadata.yaml
@@ -1,21 +1,7 @@
-description: 'Plasma for the Desktop'
+description: Plasma for the Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Marco Martin
-  username: mart
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Eike Hein
-  username: hein
+identifier: plasma-desktop
 name: plasma-desktop
 projectpath: kde/workspace/plasma-desktop
 repoactive: true
-repopath: plasma-desktop
-type: project
+repopath: /plasma/plasma-desktop
diff --git a/projects-invent/plasma/plasma-integration/metadata.yaml b/projects-invent/plasma/plasma-integration/metadata.yaml
index 1dbd3a69..0841801c 100644
--- a/projects-invent/plasma/plasma-integration/metadata.yaml
+++ b/projects-invent/plasma/plasma-integration/metadata.yaml
@@ -1,17 +1,7 @@
 description: Qt Platform Theme integration plugins for the Plasma workspaces.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: plasma-integration
 name: Integration for Qt applications in Plasma
 projectpath: kde/workspace/plasma-integration
 repoactive: true
-repopath: plasma-integration
-type: project
+repopath: /plasma/plasma-integration
diff --git a/projects-invent/plasma/plasma-nano/metadata.yaml b/projects-invent/plasma/plasma-nano/metadata.yaml
index a1622530..1944ea3c 100644
--- a/projects-invent/plasma/plasma-nano/metadata.yaml
+++ b/projects-invent/plasma/plasma-nano/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'A minimal plasma shell package'
+description: A minimal plasma shell package
 hasrepo: true
-icon: null
-members:
-- displayname: "Marco Martin"
-  username: mart
-- displayname: Bhushan Shah
-  username: bshah
+identifier: plasma-nano
 name: A minimal plasma shell package
 projectpath: kde/workspace/plasma-nano
 repoactive: true
-repopath: plasma-nano
-type: project
+repopath: /plasma/plasma-nano
diff --git a/projects-invent/plasma/plasma-nm/metadata.yaml b/projects-invent/plasma/plasma-nm/metadata.yaml
index fd228231..93d4c97f 100644
--- a/projects-invent/plasma/plasma-nm/metadata.yaml
+++ b/projects-invent/plasma/plasma-nm/metadata.yaml
@@ -1,19 +1,7 @@
 description: Plasma applet written in QML for managing network connections
 hasrepo: true
-icon: null
-members:
-- displayname: Jan Grulich
-  username: grulich
-- displayname: "Luk\xE1\u0161 Tinkl"
-  username: lukas
-- displayname: Daniel Nicoletti
-  username: dantti
-- displayname: Lamarque Souza
-  username: lvsouza
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: plasma-nm
 name: Plasma applet for NetworkManager
 projectpath: kde/workspace/plasma-nm
 repoactive: true
-repopath: plasma-nm
-type: project
+repopath: /plasma/plasma-nm
diff --git a/projects-invent/plasma/plasma-pa/metadata.yaml b/projects-invent/plasma/plasma-pa/metadata.yaml
index e935c430..b96a9aa5 100644
--- a/projects-invent/plasma/plasma-pa/metadata.yaml
+++ b/projects-invent/plasma/plasma-pa/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma applet for audio volume management using PulseAudio
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Harald Sitter
-  username: sitter
+identifier: plasma-pa
 name: Plasma Applet for Audio Volume
 projectpath: kde/workspace/plasma-pa
 repoactive: true
-repopath: plasma-pa
-type: project
+repopath: /plasma/plasma-pa
diff --git a/projects-invent/plasma/plasma-pass/metadata.yaml b/projects-invent/plasma/plasma-pass/metadata.yaml
index 6bfc2228..f311a0ac 100644
--- a/projects-invent/plasma/plasma-pass/metadata.yaml
+++ b/projects-invent/plasma/plasma-pass/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma applet for the Pass password manager
 hasrepo: true
-icon: null
-members:
-- displayname: "Daniel Vrátil"
-  username: dvratil
+identifier: plasma-pass
 name: Plasma Pass
 projectpath: extragear/base/plasma-pass
 repoactive: true
-repopath: plasma-pass
-type: project
+repopath: /plasma/plasma-pass
diff --git a/projects-invent/plasma/plasma-phone-components/metadata.yaml b/projects-invent/plasma/plasma-phone-components/metadata.yaml
index 1d971f60..78a2be0d 100644
--- a/projects-invent/plasma/plasma-phone-components/metadata.yaml
+++ b/projects-invent/plasma/plasma-phone-components/metadata.yaml
@@ -1,13 +1,7 @@
 description: Modules providing phone functionality for Plasma
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Bhushan Shah
-  username: bshah
+identifier: plasma-phone-components
 name: Plasma Phone Components
 projectpath: kde/workspace/plasma-phone-components
 repoactive: true
-repopath: plasma-phone-components
-type: project
+repopath: /plasma/plasma-phone-components
diff --git a/projects-invent/plasma/plasma-redshift-control/metadata.yaml b/projects-invent/plasma/plasma-redshift-control/metadata.yaml
index 42194a17..1ee1860d 100644
--- a/projects-invent/plasma/plasma-redshift-control/metadata.yaml
+++ b/projects-invent/plasma/plasma-redshift-control/metadata.yaml
@@ -1,13 +1,7 @@
 description: Redshift Control applet for the Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Kostolný
-  username: martinkostolny
-- displayname: John Salatas
-  username: jsalatas
+identifier: plasma-redshift-control
 name: Plasma Redshift Control Applet
 projectpath: extragear/base/plasma-redshift-control
 repoactive: true
-repopath: plasma-redshift-control
-type: project
+repopath: /plasma/plasma-redshift-control
diff --git a/projects-invent/plasma/plasma-sdk/metadata.yaml b/projects-invent/plasma/plasma-sdk/metadata.yaml
index cccb6710..fc6868ef 100644
--- a/projects-invent/plasma/plasma-sdk/metadata.yaml
+++ b/projects-invent/plasma/plasma-sdk/metadata.yaml
@@ -1,21 +1,7 @@
 description: Applications useful for Plasma Development.
 hasrepo: true
-icon: plasmagik
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Diego Casella
-  username: casella
-- displayname: Antonis Tsiapaliokas
-  username: tsiapaliokas
-- displayname: Giorgos Tsiapaliokas
-  username: tsiapaliwkas
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Marco Martin
-  username: mart
+identifier: plasma-sdk
 name: Plasma SDK
 projectpath: kde/workspace/plasma-sdk
 repoactive: true
-repopath: plasma-sdk
-type: project
+repopath: /plasma/plasma-sdk
diff --git a/projects-invent/plasma/plasma-simplemenu/metadata.yaml b/projects-invent/plasma/plasma-simplemenu/metadata.yaml
index 624393fd..c92299bd 100644
--- a/projects-invent/plasma/plasma-simplemenu/metadata.yaml
+++ b/projects-invent/plasma/plasma-simplemenu/metadata.yaml
@@ -1,11 +1,7 @@
 description: Simplified Menu for your Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: plasma-simplemenu
 name: Plasma Simple Menu Applet
 projectpath: extragear/base/plasma-simplemenu
 repoactive: true
-repopath: plasma-simplemenu
-type: project
+repopath: /plasma/plasma-simplemenu
diff --git a/projects-invent/plasma/plasma-tests/metadata.yaml b/projects-invent/plasma/plasma-tests/metadata.yaml
index 4efa8052..5e780e3d 100644
--- a/projects-invent/plasma/plasma-tests/metadata.yaml
+++ b/projects-invent/plasma/plasma-tests/metadata.yaml
@@ -1,11 +1,7 @@
 description: Tests for the Plasma Workspace
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Gräßlin
-  username: graesslin
+identifier: plasma-tests
 name: Plasma Tests
 projectpath: kde/workspace/plasma-tests
 repoactive: true
-repopath: plasma-tests
-type: project
+repopath: /plasma/plasma-tests
diff --git a/projects-invent/plasma/plasma-thunderbolt/metadata.yaml b/projects-invent/plasma/plasma-thunderbolt/metadata.yaml
index 8484705e..80ce8d0a 100644
--- a/projects-invent/plasma/plasma-thunderbolt/metadata.yaml
+++ b/projects-invent/plasma/plasma-thunderbolt/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma integration for controlling Thunderbolt devices
 hasrepo: true
-icon: null
-members:
-- displayname: "Daniel Vrátil"
-  username: dvratil
+identifier: plasma-thunderbolt
 name: Plasma Thunderbolt Integration
 projectpath: kde/workspace/plasma-thunderbolt
 repoactive: true
-repopath: plasma-thunderbolt
-type: project
+repopath: /plasma/plasma-thunderbolt
diff --git a/projects-invent/plasma/plasma-vault/metadata.yaml b/projects-invent/plasma/plasma-vault/metadata.yaml
index 89c4018b..b3e28790 100644
--- a/projects-invent/plasma/plasma-vault/metadata.yaml
+++ b/projects-invent/plasma/plasma-vault/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma applet and services for creating encrypted vaults
 hasrepo: true
-icon: null
-members:
-- displayname: "Ivan Čukić"
-  username: ivan
+identifier: plasma-vault
 name: Plasma Vault
 projectpath: kde/workspace/plasma-vault
 repoactive: true
-repopath: plasma-vault
-type: project
+repopath: /plasma/plasma-vault
diff --git a/projects-invent/plasma/plasma-workspace-wallpapers/metadata.yaml b/projects-invent/plasma/plasma-workspace-wallpapers/metadata.yaml
index 999b67fa..1e180ad3 100644
--- a/projects-invent/plasma/plasma-workspace-wallpapers/metadata.yaml
+++ b/projects-invent/plasma/plasma-workspace-wallpapers/metadata.yaml
@@ -1,13 +1,7 @@
 description: Wallpapers for the Plasma Workspace
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Harald Sitter
-  username: sitter
+identifier: plasma-workspace-wallpapers
 name: Plasma Workspace Wallpapers
 projectpath: kde/workspace/plasma-workspace-wallpapers
 repoactive: true
-repopath: plasma-workspace-wallpapers
-type: project
+repopath: /plasma/plasma-workspace-wallpapers
diff --git a/projects-invent/plasma/plasma-workspace/metadata.yaml b/projects-invent/plasma/plasma-workspace/metadata.yaml
index 44dbc9a6..c0e89764 100644
--- a/projects-invent/plasma/plasma-workspace/metadata.yaml
+++ b/projects-invent/plasma/plasma-workspace/metadata.yaml
@@ -1,19 +1,7 @@
 description: 'Plasma Workspace: Various Components needed to run a Plasma based environment'
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
-- displayname: Marco Martin
-  username: mart
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: plasma-workspace
 name: plasma-workspace
 projectpath: kde/workspace/plasma-workspace
 repoactive: true
-repopath: plasma-workspace
-type: project
+repopath: /plasma/plasma-workspace
diff --git a/projects-invent/plasma/plymouth-kcm/metadata.yaml b/projects-invent/plasma/plymouth-kcm/metadata.yaml
index 10642f21..ed91b89b 100644
--- a/projects-invent/plasma/plymouth-kcm/metadata.yaml
+++ b/projects-invent/plasma/plymouth-kcm/metadata.yaml
@@ -1,11 +1,7 @@
 description: KCM to manage the Plymouth (Boot) theme
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: plymouth-kcm
 name: plymouth-kcm
 projectpath: kde/workspace/plymouth-kcm
 repoactive: true
-repopath: plymouth-kcm
-type: project
+repopath: /plasma/plymouth-kcm
diff --git a/projects-invent/plasma/polkit-kde-agent-1/metadata.yaml b/projects-invent/plasma/polkit-kde-agent-1/metadata.yaml
index 2f40cd06..eddb1354 100644
--- a/projects-invent/plasma/polkit-kde-agent-1/metadata.yaml
+++ b/projects-invent/plasma/polkit-kde-agent-1/metadata.yaml
@@ -4,18 +4,8 @@ description: 'Daemon providing a polkit authentication UI for Plasma.
   Please be sure to read and follow "the polkit-KDE contribution and development guidelines":https://techbase.kde.org/Polkit-KDE_development_guidelines
   to contribute code.'
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "Jaroslav \u0158ezn\xEDk"
-  username: jreznik
-- displayname: Dario Freddi
-  username: dafre
-- displayname: "Martin B\u0159\xEDza"
-  username: mbriza
+identifier: polkit-kde-agent-1
 name: Polkit KDE Agent
 projectpath: kde/workspace/polkit-kde-agent-1
 repoactive: true
-repopath: polkit-kde-agent-1
-type: project
+repopath: /plasma/polkit-kde-agent-1
diff --git a/projects-invent/plasma/powerdevil/metadata.yaml b/projects-invent/plasma/powerdevil/metadata.yaml
index 48504530..0a33d2e7 100644
--- a/projects-invent/plasma/powerdevil/metadata.yaml
+++ b/projects-invent/plasma/powerdevil/metadata.yaml
@@ -1,13 +1,7 @@
 description: Manages the power consumption settings of a Plasma Shell
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: powerdevil
 name: PowerDevil
 projectpath: kde/workspace/powerdevil
 repoactive: true
-repopath: powerdevil
-type: project
+repopath: /plasma/powerdevil
diff --git a/projects-invent/plasma/sddm-kcm/metadata.yaml b/projects-invent/plasma/sddm-kcm/metadata.yaml
index d411540d..07b1c1c5 100644
--- a/projects-invent/plasma/sddm-kcm/metadata.yaml
+++ b/projects-invent/plasma/sddm-kcm/metadata.yaml
@@ -1,13 +1,7 @@
 description: Config module for SDDM
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: sddm-kcm
 name: SDDM KCM
 projectpath: kde/workspace/sddm-kcm
 repoactive: true
-repopath: sddm-kcm
-type: project
+repopath: /plasma/sddm-kcm
diff --git a/projects-invent/plasma/smaragd/metadata.yaml b/projects-invent/plasma/smaragd/metadata.yaml
index 330a11aa..ba3be516 100644
--- a/projects-invent/plasma/smaragd/metadata.yaml
+++ b/projects-invent/plasma/smaragd/metadata.yaml
@@ -1,11 +1,7 @@
 description: KWin plugin to support Emerald themes in KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Christoph Feck
-  username: cfeck
+identifier: smaragd
 name: Smaragd
 projectpath: playground/artwork/smaragd
 repoactive: true
-repopath: smaragd
-type: project
+repopath: /plasma/smaragd
diff --git a/projects-invent/plasma/systemsettings/metadata.yaml b/projects-invent/plasma/systemsettings/metadata.yaml
index 8052817d..f72991da 100644
--- a/projects-invent/plasma/systemsettings/metadata.yaml
+++ b/projects-invent/plasma/systemsettings/metadata.yaml
@@ -1,13 +1,7 @@
 description: 'System Settings: Control Center to configure your Plasma Desktop'
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: systemsettings
 name: systemsettings
 projectpath: kde/workspace/systemsettings
 repoactive: true
-repopath: systemsettings
-type: project
+repopath: /plasma/systemsettings
diff --git a/projects-invent/plasma/user-manager/metadata.yaml b/projects-invent/plasma/user-manager/metadata.yaml
index 05f61cd2..4b3be7e4 100644
--- a/projects-invent/plasma/user-manager/metadata.yaml
+++ b/projects-invent/plasma/user-manager/metadata.yaml
@@ -1,13 +1,7 @@
 description: A simple system settings module to manage the users of your system
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: user-manager
 name: user-manager
 projectpath: kde/workspace/user-manager
 repoactive: true
-repopath: user-manager
-type: project
+repopath: /plasma/user-manager
diff --git a/projects-invent/plasma/xdg-desktop-portal-kde/metadata.yaml b/projects-invent/plasma/xdg-desktop-portal-kde/metadata.yaml
index abf16868..dec3e29d 100644
--- a/projects-invent/plasma/xdg-desktop-portal-kde/metadata.yaml
+++ b/projects-invent/plasma/xdg-desktop-portal-kde/metadata.yaml
@@ -1,11 +1,7 @@
-description: "A backend implementation for xdg-desktop-portal that is using Qt/KDE"
+description: A backend implementation for xdg-desktop-portal that is using Qt/KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Jan Grulich
-  username: grulich
-name: "Flatpak Support: KDE Portal for XDG Desktop"
+identifier: xdg-desktop-portal-kde
+name: 'Flatpak Support: KDE Portal for XDG Desktop'
 projectpath: kde/workspace/xdg-desktop-portal-kde
 repoactive: true
-repopath: xdg-desktop-portal-kde
-type: project
+repopath: /plasma/xdg-desktop-portal-kde
diff --git a/projects-invent/rolisteam/rcharactersheet/metadata.yaml b/projects-invent/rolisteam/rcharactersheet/metadata.yaml
index 65335ae8..6be9565d 100644
--- a/projects-invent/rolisteam/rcharactersheet/metadata.yaml
+++ b/projects-invent/rolisteam/rcharactersheet/metadata.yaml
@@ -1,11 +1,7 @@
 description: Rolisteam Character Set Shared Components
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rcharactersheet
 name: Rolisteam Character Set Components
 projectpath: playground/games/rcharactersheet
 repoactive: true
-repopath: rcharactersheet
-type: project
+repopath: /rolisteam/rcharactersheet
diff --git a/projects-invent/rolisteam/rcse/metadata.yaml b/projects-invent/rolisteam/rcse/metadata.yaml
index a882e2b2..1c414be8 100644
--- a/projects-invent/rolisteam/rcse/metadata.yaml
+++ b/projects-invent/rolisteam/rcse/metadata.yaml
@@ -1,11 +1,7 @@
 description: Character Set IDE for Rolisteam applications.
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rcse
 name: Rolisteam Character Set Editor (RCSE)
 projectpath: playground/games/rcse
 repoactive: true
-repopath: rcse
-type: project
+repopath: /rolisteam/rcse
diff --git a/projects-invent/rolisteam/rolisteam-common/metadata.yaml b/projects-invent/rolisteam/rolisteam-common/metadata.yaml
index e61475c8..74d7cc62 100644
--- a/projects-invent/rolisteam/rolisteam-common/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam-common/metadata.yaml
@@ -1,11 +1,7 @@
 description: Shared Components for Rolisteam
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam-common
 name: Rolisteam Shared Components
 projectpath: playground/games/rolisteam-common
 repoactive: true
-repopath: rolisteam-common
-type: project
+repopath: /rolisteam/rolisteam-common
diff --git a/projects-invent/rolisteam/rolisteam-community-data/metadata.yaml b/projects-invent/rolisteam/rolisteam-community-data/metadata.yaml
index 7022c29c..a5377144 100644
--- a/projects-invent/rolisteam/rolisteam-community-data/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam-community-data/metadata.yaml
@@ -1,11 +1,8 @@
-description: Contributed Resources for Rolisteam Applications (Character Sheets, Themes, etc)
+description: Contributed Resources for Rolisteam Applications (Character Sheets, Themes,
+  etc)
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam-community-data
 name: Rolisteam Community Resources
 projectpath: playground/games/rolisteam-community-data
 repoactive: true
-repopath: rolisteam-community-data
-type: project
+repopath: /rolisteam/rolisteam-community-data
diff --git a/projects-invent/rolisteam/rolisteam-diceparser/metadata.yaml b/projects-invent/rolisteam/rolisteam-diceparser/metadata.yaml
index 6c993449..57afc576 100644
--- a/projects-invent/rolisteam/rolisteam-diceparser/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam-diceparser/metadata.yaml
@@ -1,11 +1,7 @@
 description: Rolisteam Dice Handling Components
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam-diceparser
 name: Rolisteam Dice Handling Components
 projectpath: playground/games/rolisteam-diceparser
 repoactive: true
-repopath: rolisteam-diceparser
-type: project
+repopath: /rolisteam/rolisteam-diceparser
diff --git a/projects-invent/rolisteam/rolisteam-packaging/metadata.yaml b/projects-invent/rolisteam/rolisteam-packaging/metadata.yaml
index ee154ff5..c9a674ce 100644
--- a/projects-invent/rolisteam/rolisteam-packaging/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam-packaging/metadata.yaml
@@ -1,11 +1,8 @@
-description: Packaging resources for Rolisteam (Windows, Mac, Docker image, Snap and Debian packages)
+description: Packaging resources for Rolisteam (Windows, Mac, Docker image, Snap and
+  Debian packages)
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam-packaging
 name: Rolisteam Packaging
 projectpath: playground/games/rolisteam-packaging
 repoactive: true
-repopath: rolisteam-packaging
-type: project
+repopath: /rolisteam/rolisteam-packaging
diff --git a/projects-invent/rolisteam/rolisteam-plugins/metadata.yaml b/projects-invent/rolisteam/rolisteam-plugins/metadata.yaml
index 78eb589f..b5aabd5f 100644
--- a/projects-invent/rolisteam/rolisteam-plugins/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam-plugins/metadata.yaml
@@ -1,11 +1,7 @@
 description: Various Shared Plugins for Rolisteam
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam-plugins
 name: Rolisteam Plugins
 projectpath: playground/games/rolisteam-plugins
 repoactive: true
-repopath: rolisteam-plugins
-type: project
+repopath: /rolisteam/rolisteam-plugins
diff --git a/projects-invent/rolisteam/rolisteam/metadata.yaml b/projects-invent/rolisteam/rolisteam/metadata.yaml
index 7c958ace..ec16f1d5 100644
--- a/projects-invent/rolisteam/rolisteam/metadata.yaml
+++ b/projects-invent/rolisteam/rolisteam/metadata.yaml
@@ -1,11 +1,7 @@
 description: Virtual Tabletop Backend for Games
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: rolisteam
 name: Rolisteam
 projectpath: playground/games/rolisteam
 repoactive: true
-repopath: rolisteam
-type: project
+repopath: /rolisteam/rolisteam
diff --git a/projects-invent/sdk/cervisia/metadata.yaml b/projects-invent/sdk/cervisia/metadata.yaml
index ada05d92..1b3f38ee 100644
--- a/projects-invent/sdk/cervisia/metadata.yaml
+++ b/projects-invent/sdk/cervisia/metadata.yaml
@@ -1,13 +1,7 @@
 description: GUI for CVS
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Loose
-  username: cloose
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: cervisia
 name: Cervisia
 projectpath: kde/kdesdk/cervisia
 repoactive: true
-repopath: cervisia
-type: project
+repopath: /sdk/cervisia
diff --git a/projects-invent/sdk/clazy/metadata.yaml b/projects-invent/sdk/clazy/metadata.yaml
index 48820a54..e886960f 100644
--- a/projects-invent/sdk/clazy/metadata.yaml
+++ b/projects-invent/sdk/clazy/metadata.yaml
@@ -1,11 +1,7 @@
 description: Qt oriented code checker based on clang framework. Krazy's little brother.
 hasrepo: true
-icon: null
-members:
-- displayname: Sergio Luis Martins
-  username: smartins
+identifier: clazy
 name: Clazy Static Analyzer
 projectpath: extragear/sdk/clazy
 repoactive: true
-repopath: clazy
-type: project
+repopath: /sdk/clazy
diff --git a/projects-invent/sdk/cutehmi/metadata.yaml b/projects-invent/sdk/cutehmi/metadata.yaml
index e3ec1709..459c29b6 100644
--- a/projects-invent/sdk/cutehmi/metadata.yaml
+++ b/projects-invent/sdk/cutehmi/metadata.yaml
@@ -1,11 +1,8 @@
-description: CuteHMI is an open-source HMI (Human Machine Interface) software written in C++ and QML, using Qt libraries as a framework.
+description: CuteHMI is an open-source HMI (Human Machine Interface) software written
+  in C++ and QML, using Qt libraries as a framework.
 hasrepo: true
-icon: null
-members:
-- displayname: Michal Policht
-  username: mpolicht
+identifier: cutehmi
 name: CuteHMI
 projectpath: playground/base/cutehmi
 repoactive: true
-repopath: cutehmi
-type: project
+repopath: /sdk/cutehmi
diff --git a/projects-invent/sdk/dferry/metadata.yaml b/projects-invent/sdk/dferry/metadata.yaml
index f60fb51c..e57c0ab5 100644
--- a/projects-invent/sdk/dferry/metadata.yaml
+++ b/projects-invent/sdk/dferry/metadata.yaml
@@ -1,11 +1,7 @@
 description: Dferry, a D-Bus library and some tools
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Hartmetz
-  username: ahartmetz
+identifier: dferry
 name: D-Bus tools
 projectpath: playground/sdk/dferry
 repoactive: true
-repopath: dferry
-type: project
+repopath: /sdk/dferry
diff --git a/projects-invent/sdk/dolphin-plugins/metadata.yaml b/projects-invent/sdk/dolphin-plugins/metadata.yaml
index 9b8bf42b..1428f51d 100644
--- a/projects-invent/sdk/dolphin-plugins/metadata.yaml
+++ b/projects-invent/sdk/dolphin-plugins/metadata.yaml
@@ -1,15 +1,7 @@
 description: Plugins for Dolphin
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Pyne
-  username: mpyne
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Sebastian Doerner
-  username: doerner
+identifier: dolphin-plugins
 name: Plugins for Dolphin
 projectpath: kde/kdesdk/dolphin-plugins
 repoactive: true
-repopath: dolphin-plugins
-type: project
+repopath: /sdk/dolphin-plugins
diff --git a/projects-invent/sdk/elf-dissector/metadata.yaml b/projects-invent/sdk/elf-dissector/metadata.yaml
index 8e9f563c..8545ca02 100644
--- a/projects-invent/sdk/elf-dissector/metadata.yaml
+++ b/projects-invent/sdk/elf-dissector/metadata.yaml
@@ -1,11 +1,7 @@
 description: Tools for inspecting, analyzing and optimizing ELF files.
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
+identifier: elf-dissector
 name: ELF Dissector
 projectpath: extragear/sdk/elf-dissector
 repoactive: true
-repopath: elf-dissector
-type: project
+repopath: /sdk/elf-dissector
diff --git a/projects-invent/sdk/heaptrack/metadata.yaml b/projects-invent/sdk/heaptrack/metadata.yaml
index c9254c96..865a851d 100644
--- a/projects-invent/sdk/heaptrack/metadata.yaml
+++ b/projects-invent/sdk/heaptrack/metadata.yaml
@@ -1,11 +1,7 @@
 description: A heap memory profiler for Linux
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
+identifier: heaptrack
 name: Heaptrack
 projectpath: extragear/sdk/heaptrack
 repoactive: true
-repopath: heaptrack
-type: project
+repopath: /sdk/heaptrack
diff --git a/projects-invent/sdk/ikona/metadata.yaml b/projects-invent/sdk/ikona/metadata.yaml
index c0d45604..41e7adc0 100644
--- a/projects-invent/sdk/ikona/metadata.yaml
+++ b/projects-invent/sdk/ikona/metadata.yaml
@@ -1,11 +1,7 @@
 description: Icon editing companion
 hasrepo: true
-icon: null
-members:
-- displayname: Carson Black
-  username: cblack
+identifier: ikona
 name: Ikona
 projectpath: extragear/sdk/ikona
 repoactive: true
-repopath: ikona
-type: project
+repopath: /sdk/ikona
diff --git a/projects-invent/sdk/inqlude-client/metadata.yaml b/projects-invent/sdk/inqlude-client/metadata.yaml
index 0a4cd7c5..5b8e0c4f 100644
--- a/projects-invent/sdk/inqlude-client/metadata.yaml
+++ b/projects-invent/sdk/inqlude-client/metadata.yaml
@@ -1,11 +1,7 @@
 description: Command-line client for inqlude.org
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
+identifier: inqlude-client
 name: Inqlude Client
 projectpath: playground/sdk/inqlude-client
 repoactive: true
-repopath: inqlude-client
-type: project
+repopath: /sdk/inqlude-client
diff --git a/projects-invent/sdk/kapptemplate/metadata.yaml b/projects-invent/sdk/kapptemplate/metadata.yaml
index c052255c..9e413ba0 100644
--- a/projects-invent/sdk/kapptemplate/metadata.yaml
+++ b/projects-invent/sdk/kapptemplate/metadata.yaml
@@ -1,11 +1,7 @@
 description: Factory for the easy creation of KDE/Qt components and programs
 hasrepo: true
-icon: null
-members:
-- displayname: "Simon W\xE4chter"
-  username: swaechter
+identifier: kapptemplate
 name: KAppTemplate
 projectpath: kde/kdesdk/kapptemplate
 repoactive: true
-repopath: kapptemplate
-type: project
+repopath: /sdk/kapptemplate
diff --git a/projects-invent/sdk/kcachegrind/metadata.yaml b/projects-invent/sdk/kcachegrind/metadata.yaml
index 4c25900b..5ef05c96 100644
--- a/projects-invent/sdk/kcachegrind/metadata.yaml
+++ b/projects-invent/sdk/kcachegrind/metadata.yaml
@@ -1,13 +1,7 @@
 description: GUI to profilers such as Valgrind
 hasrepo: true
-icon: null
-members:
-- displayname: Josef Weidendorfer
-  username: weidendo
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kcachegrind
 name: KCacheGrind
 projectpath: kde/kdesdk/kcachegrind
 repoactive: true
-repopath: kcachegrind
-type: project
+repopath: /sdk/kcachegrind
diff --git a/projects-invent/sdk/kde-dev-scripts/metadata.yaml b/projects-invent/sdk/kde-dev-scripts/metadata.yaml
index 8f97cd81..03ad9c11 100644
--- a/projects-invent/sdk/kde-dev-scripts/metadata.yaml
+++ b/projects-invent/sdk/kde-dev-scripts/metadata.yaml
@@ -1,13 +1,7 @@
 description: Scripts and setting files useful during development of KDE software
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Michael Pyne
-  username: mpyne
+identifier: kde-dev-scripts
 name: Development Scripts
 projectpath: kde/kdesdk/kde-dev-scripts
 repoactive: true
-repopath: kde-dev-scripts
-type: project
+repopath: /sdk/kde-dev-scripts
diff --git a/projects-invent/sdk/kde-dev-utils/metadata.yaml b/projects-invent/sdk/kde-dev-utils/metadata.yaml
index 601ee1f7..40a160ed 100644
--- a/projects-invent/sdk/kde-dev-utils/metadata.yaml
+++ b/projects-invent/sdk/kde-dev-utils/metadata.yaml
@@ -1,11 +1,7 @@
 description: Small utilities for developers using KDE/Qt libs/frameworks
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kde-dev-utils
 name: Development Utilities
 projectpath: kde/kdesdk/kde-dev-utils
 repoactive: true
-repopath: kde-dev-utils
-type: project
+repopath: /sdk/kde-dev-utils
diff --git a/projects-invent/sdk/kde-ruleset/metadata.yaml b/projects-invent/sdk/kde-ruleset/metadata.yaml
index 3de62e16..50f5e91b 100644
--- a/projects-invent/sdk/kde-ruleset/metadata.yaml
+++ b/projects-invent/sdk/kde-ruleset/metadata.yaml
@@ -1,17 +1,7 @@
 description: svn2git rules files and support scripts for KDE's SVN-to-Git migration.
 hasrepo: true
-icon: null
-members:
-- displayname: Eike Hein
-  username: hein
-- displayname: Thomas Zander
-  username: zander
-- displayname: Torgny Nyblom
-  username: tnyblom
-- displayname: "Nicol\xE1s Alvarez"
-  username: nalvarez
+identifier: kde-ruleset
 name: KDE Ruleset
 projectpath: playground/sdk/kde-ruleset
 repoactive: true
-repopath: kde-ruleset
-type: project
+repopath: /sdk/kde-ruleset
diff --git a/projects-invent/sdk/kdecoration-viewer/metadata.yaml b/projects-invent/sdk/kdecoration-viewer/metadata.yaml
index 1d81b937..1d73c7b2 100644
--- a/projects-invent/sdk/kdecoration-viewer/metadata.yaml
+++ b/projects-invent/sdk/kdecoration-viewer/metadata.yaml
@@ -1,11 +1,7 @@
 description: Allows to preview a KDecoration plugin
 hasrepo: true
-icon: null
-members:
-- displayname: "Martin Gr\xE4\xDFlin"
-  username: graesslin
+identifier: kdecoration-viewer
 name: Viewer application for KDecoration
 projectpath: playground/base/kdecoration-viewer
 repoactive: true
-repopath: kdecoration-viewer
-type: project
+repopath: /sdk/kdecoration-viewer
diff --git a/projects-invent/sdk/kdesdk-kioslaves/metadata.yaml b/projects-invent/sdk/kdesdk-kioslaves/metadata.yaml
index 0029cdff..1e529164 100644
--- a/projects-invent/sdk/kdesdk-kioslaves/metadata.yaml
+++ b/projects-invent/sdk/kdesdk-kioslaves/metadata.yaml
@@ -1,13 +1,7 @@
 description: KIO-Slaves
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Michael Pyne
-  username: mpyne
+identifier: kdesdk-kioslaves
 name: KIO-Slaves
 projectpath: kde/kdesdk/kdesdk-kioslaves
 repoactive: true
-repopath: kdesdk-kioslaves
-type: project
+repopath: /sdk/kdesdk-kioslaves
diff --git a/projects-invent/sdk/kdesdk-thumbnailers/metadata.yaml b/projects-invent/sdk/kdesdk-thumbnailers/metadata.yaml
index 4293539f..ab9f8ee7 100644
--- a/projects-invent/sdk/kdesdk-thumbnailers/metadata.yaml
+++ b/projects-invent/sdk/kdesdk-thumbnailers/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plugins for the thumbnailing system
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kdesdk-thumbnailers
 name: Thumbnailer plugins
 projectpath: kde/kdesdk/kdesdk-thumbnailers
 repoactive: true
-repopath: kdesdk-thumbnailers
-type: project
+repopath: /sdk/kdesdk-thumbnailers
diff --git a/projects-invent/sdk/kdesrc-build/metadata.yaml b/projects-invent/sdk/kdesrc-build/metadata.yaml
index b5682092..e0fc3f5f 100644
--- a/projects-invent/sdk/kdesrc-build/metadata.yaml
+++ b/projects-invent/sdk/kdesrc-build/metadata.yaml
@@ -1,11 +1,7 @@
 description: A script to build KDE software from KDE's source repositories.
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Pyne
-  username: mpyne
+identifier: kdesrc-build
 name: kdesrc-build
 projectpath: extragear/utils/kdesrc-build
 repoactive: true
-repopath: kdesrc-build
-type: project
+repopath: /sdk/kdesrc-build
diff --git a/projects-invent/sdk/kdesvn/metadata.yaml b/projects-invent/sdk/kdesvn/metadata.yaml
index e6475a19..106fda13 100644
--- a/projects-invent/sdk/kdesvn/metadata.yaml
+++ b/projects-invent/sdk/kdesvn/metadata.yaml
@@ -1,17 +1,7 @@
 description: Subversion client by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Ehrlicher
-  username: chehrlic
-- displayname: Rajko Albrecht
-  username: rajkoalbrecht
-- displayname: David Faure
-  username: dfaure
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: kdesvn
 name: KDESvn
 projectpath: extragear/sdk/kdesvn
 repoactive: true
-repopath: kdesvn
-type: project
+repopath: /sdk/kdesvn
diff --git a/projects-invent/sdk/kdiff3/metadata.yaml b/projects-invent/sdk/kdiff3/metadata.yaml
index 7bb56ba4..5b406930 100644
--- a/projects-invent/sdk/kdiff3/metadata.yaml
+++ b/projects-invent/sdk/kdiff3/metadata.yaml
@@ -1,11 +1,7 @@
 description: Utility for comparing and merging files and directories
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Reeves
-  username: mreeves
+identifier: kdiff3
 name: KDiff3
 projectpath: extragear/utils/kdiff3
 repoactive: true
-repopath: kdiff3
-type: project
+repopath: /sdk/kdiff3
diff --git a/projects-invent/sdk/kirigami-gallery/metadata.yaml b/projects-invent/sdk/kirigami-gallery/metadata.yaml
index ced25a9c..3bf9e040 100644
--- a/projects-invent/sdk/kirigami-gallery/metadata.yaml
+++ b/projects-invent/sdk/kirigami-gallery/metadata.yaml
@@ -1,11 +1,7 @@
 description: Gallery application built using Kirigami
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: kirigami-gallery
 name: Kirigami Gallery
 projectpath: kde/kdesdk/kirigami-gallery
 repoactive: true
-repopath: kirigami-gallery
-type: project
+repopath: /sdk/kirigami-gallery
diff --git a/projects-invent/sdk/kobjecttracking/metadata.yaml b/projects-invent/sdk/kobjecttracking/metadata.yaml
index 2bb5c288..749df1d7 100644
--- a/projects-invent/sdk/kobjecttracking/metadata.yaml
+++ b/projects-invent/sdk/kobjecttracking/metadata.yaml
@@ -1,11 +1,7 @@
 description: Library for tracking changes in QObject based objects
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
+identifier: kobjecttracking
 name: KObject Tracking
 projectpath: playground/sdk/kobjecttracking
 repoactive: true
-repopath: kobjecttracking
-type: project
+repopath: /sdk/kobjecttracking
diff --git a/projects-invent/sdk/kompare/metadata.yaml b/projects-invent/sdk/kompare/metadata.yaml
index 4a9c4987..4b0d2624 100644
--- a/projects-invent/sdk/kompare/metadata.yaml
+++ b/projects-invent/sdk/kompare/metadata.yaml
@@ -1,13 +1,7 @@
 description: Graphical File Differences Tool
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Kofler
-  username: kkofler
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kompare
 name: Kompare
 projectpath: kde/kdesdk/kompare
 repoactive: true
-repopath: kompare
-type: project
+repopath: /sdk/kompare
diff --git a/projects-invent/sdk/ktechlab/metadata.yaml b/projects-invent/sdk/ktechlab/metadata.yaml
index abf2814f..3e1825fa 100644
--- a/projects-invent/sdk/ktechlab/metadata.yaml
+++ b/projects-invent/sdk/ktechlab/metadata.yaml
@@ -1,11 +1,7 @@
 description: IDE for microcontrollers and electronics.
 hasrepo: true
-icon: null
-members:
-- displayname: Zoltan Padrah
-  username: padrah
+identifier: ktechlab
 name: KTechlab
 projectpath: playground/devtools/ktechlab
 repoactive: true
-repopath: ktechlab
-type: project
+repopath: /sdk/ktechlab
diff --git a/projects-invent/sdk/libkomparediff2/metadata.yaml b/projects-invent/sdk/libkomparediff2/metadata.yaml
index fa43bee4..fffd2ee2 100644
--- a/projects-invent/sdk/libkomparediff2/metadata.yaml
+++ b/projects-invent/sdk/libkomparediff2/metadata.yaml
@@ -1,13 +1,7 @@
 description: Library to compare files and strings, used in Kompare and KDevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Kofler
-  username: kkofler
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: libkomparediff2
 name: Differencing Library
 projectpath: kde/kdesdk/libkomparediff2
 repoactive: true
-repopath: libkomparediff2
-type: project
+repopath: /sdk/libkomparediff2
diff --git a/projects-invent/sdk/lokalize/metadata.yaml b/projects-invent/sdk/lokalize/metadata.yaml
index a6a66cc7..f187a916 100644
--- a/projects-invent/sdk/lokalize/metadata.yaml
+++ b/projects-invent/sdk/lokalize/metadata.yaml
@@ -1,13 +1,7 @@
 description: Computer-aided translation
 hasrepo: true
-icon: null
-members:
-- displayname: Nick Shaforostoff
-  username: shaforo
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: lokalize
 name: Lokalize
 projectpath: kde/kdesdk/lokalize
 repoactive: true
-repopath: lokalize
-type: project
+repopath: /sdk/lokalize
diff --git a/projects-invent/sdk/massif-visualizer/metadata.yaml b/projects-invent/sdk/massif-visualizer/metadata.yaml
index a7c400d2..5c5200a7 100644
--- a/projects-invent/sdk/massif-visualizer/metadata.yaml
+++ b/projects-invent/sdk/massif-visualizer/metadata.yaml
@@ -27,12 +27,8 @@ description: "Visualizer for Valgrind Massif data files.\n\n!http://milianw.de/f
   \ .\n\nIf you want to discuss this project, please don't hesitate to use the mailing\
   \ list massif-visualizer at kde.org . Se also:\nhttps://mail.kde.org/mailman/listinfo/massif-visualizer"
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
+identifier: massif-visualizer
 name: Massif Visualizer
 projectpath: extragear/sdk/massif-visualizer
 repoactive: true
-repopath: massif-visualizer
-type: project
+repopath: /sdk/massif-visualizer
diff --git a/projects-invent/sdk/metadata.yaml b/projects-invent/sdk/metadata.yaml
index 1964f14a..ffba1d76 100644
--- a/projects-invent/sdk/metadata.yaml
+++ b/projects-invent/sdk/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDESDK
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDESDK
 projectpath: kde/kdesdk
 repoactive: false
-repopath: null
-type: module
+repopath: /sdk
diff --git a/projects-invent/sdk/pology/metadata.yaml b/projects-invent/sdk/pology/metadata.yaml
index 3f137001..a133f793 100644
--- a/projects-invent/sdk/pology/metadata.yaml
+++ b/projects-invent/sdk/pology/metadata.yaml
@@ -1,11 +1,7 @@
 description: Pology Internationalization Tooling
 hasrepo: true
-icon: null
-members:
-- displayname: Chusslove Illich
-  username: ilic
+identifier: pology
 name: Pology
 projectpath: playground/sdk/pology
 repoactive: true
-repopath: pology
-type: project
+repopath: /sdk/pology
diff --git a/projects-invent/sdk/poxml/metadata.yaml b/projects-invent/sdk/poxml/metadata.yaml
index 3524a401..07a1e608 100644
--- a/projects-invent/sdk/poxml/metadata.yaml
+++ b/projects-invent/sdk/poxml/metadata.yaml
@@ -1,13 +1,7 @@
 description: Translates DocBook XML files using gettext po files
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: poxml
 name: poxml
 projectpath: kde/kdesdk/poxml
 repoactive: true
-repopath: poxml
-type: project
+repopath: /sdk/poxml
diff --git a/projects-invent/sdk/releaseme/metadata.yaml b/projects-invent/sdk/releaseme/metadata.yaml
index 4e12be40..d211a17d 100644
--- a/projects-invent/sdk/releaseme/metadata.yaml
+++ b/projects-invent/sdk/releaseme/metadata.yaml
@@ -1,11 +1,7 @@
 description: Release script framework
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: releaseme
 name: Releaseme
 projectpath: playground/sdk/releaseme
 repoactive: true
-repopath: releaseme
-type: project
+repopath: /sdk/releaseme
diff --git a/projects-invent/sdk/rust-qt-binding-generator/metadata.yaml b/projects-invent/sdk/rust-qt-binding-generator/metadata.yaml
index 8c426fec..4841b9b2 100644
--- a/projects-invent/sdk/rust-qt-binding-generator/metadata.yaml
+++ b/projects-invent/sdk/rust-qt-binding-generator/metadata.yaml
@@ -1,11 +1,7 @@
-name: Rust Qt Binding Generator 
 description: Generate bindings to use Rust code in Qt and QML
-icon: rust-qt-binding-generator
 hasrepo: true
-members:
-- displayname: Jos van den Oever
-  username: vandenoever
+identifier: rust-qt-binding-generator
+name: Rust Qt Binding Generator
 projectpath: extragear/sdk/rust-qt-binding-generator
 repoactive: true
-repopath: rust-qt-binding-generator
-type: project
+repopath: /sdk/rust-qt-binding-generator
diff --git a/projects-invent/sdk/umbrello/metadata.yaml b/projects-invent/sdk/umbrello/metadata.yaml
index 57032a34..084da486 100644
--- a/projects-invent/sdk/umbrello/metadata.yaml
+++ b/projects-invent/sdk/umbrello/metadata.yaml
@@ -1,17 +1,7 @@
 description: GUI for diagramming Unified Modelling Language (UML)
 hasrepo: true
-icon: null
-members:
-- displayname: Andi Fischer
-  username: fischer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Emmanuel Lepage Vallee
-  username: lepagevalleeemmanuel
+identifier: umbrello
 name: Umbrello
 projectpath: kde/kdesdk/umbrello
 repoactive: true
-repopath: umbrello
-type: project
+repopath: /sdk/umbrello
diff --git a/projects-invent/sysadmin/appimage-tooling/metadata.yaml b/projects-invent/sysadmin/appimage-tooling/metadata.yaml
index 03487ecc..dca32781 100644
--- a/projects-invent/sysadmin/appimage-tooling/metadata.yaml
+++ b/projects-invent/sysadmin/appimage-tooling/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Scarlett Clark
-  username: scarlettclark
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-appimage-tooling
 name: Appimage Tooling for KDE Applications
 projectpath: sysadmin/appimage-tooling
 repoactive: false
-repopath: sysadmin/appimage-tooling
-type: module
+repopath: /sysadmin/appimage-tooling
diff --git a/projects-invent/sysadmin/appstream-metainfo-release-update/metadata.yaml b/projects-invent/sysadmin/appstream-metainfo-release-update/metadata.yaml
index 221f4a93..7e12aac8 100644
--- a/projects-invent/sysadmin/appstream-metainfo-release-update/metadata.yaml
+++ b/projects-invent/sysadmin/appstream-metainfo-release-update/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Updates AppStream Metainfo files for new releases of your software'
+description: Updates AppStream Metainfo files for new releases of your software
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-appstream-metainfo-release-update
 name: Appstream Metainfo Updater for Releases
 projectpath: sysadmin/appstream-metainfo-release-update
 repoactive: false
-repopath: sysadmin/appstream-metainfo-release-update
-type: module
+repopath: /sysadmin/appstream-metainfo-release-update
diff --git a/projects-invent/sysadmin/binary-factory-tooling/metadata.yaml b/projects-invent/sysadmin/binary-factory-tooling/metadata.yaml
index 38cef8c2..aba52c9c 100644
--- a/projects-invent/sysadmin/binary-factory-tooling/metadata.yaml
+++ b/projects-invent/sysadmin/binary-factory-tooling/metadata.yaml
@@ -1,17 +1,8 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Scarlett Clark
-  username: scarlettclark
-- displayname: Ben Cooksley
-  username: bcooksley
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Kevin Funk
-  username: kfunk
-name: All tooling and other materials necessary for the operation of the KDE Binary Factory
+identifier: sysadmin-binary-factory-tooling
+name: All tooling and other materials necessary for the operation of the KDE Binary
+  Factory
 projectpath: sysadmin/binary-factory-tooling
 repoactive: false
-repopath: sysadmin/binary-factory-tooling
-type: module
+repopath: /sysadmin/binary-factory-tooling
diff --git a/projects-invent/sysadmin/bugzilla-bot/metadata.yaml b/projects-invent/sysadmin/bugzilla-bot/metadata.yaml
index 4b77e9a9..bce00c46 100644
--- a/projects-invent/sysadmin/bugzilla-bot/metadata.yaml
+++ b/projects-invent/sysadmin/bugzilla-bot/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: sysadmin-bugzilla-bot
 name: Bugzilla Maintenance Bot
 projectpath: sysadmin/bugzilla-bot
 repoactive: false
-repopath: sysadmin/bugzilla-bot
-type: module
+repopath: /sysadmin/bugzilla-bot
diff --git a/projects-invent/sysadmin/ci-tooling/metadata.yaml b/projects-invent/sysadmin/ci-tooling/metadata.yaml
index b63c4ead..51b20eb3 100644
--- a/projects-invent/sysadmin/ci-tooling/metadata.yaml
+++ b/projects-invent/sysadmin/ci-tooling/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Scarlett Clark
-  username: scarlettclark
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-ci-tooling
 name: All tooling and other materials necessary for the operation of the KDE CI system.
 projectpath: sysadmin/ci-tooling
 repoactive: false
-repopath: sysadmin/ci-tooling
-type: module
+repopath: /sysadmin/ci-tooling
diff --git a/projects-invent/sysadmin/dns/metadata.yaml b/projects-invent/sysadmin/dns/metadata.yaml
index 865bce50..60f23abe 100644
--- a/projects-invent/sysadmin/dns/metadata.yaml
+++ b/projects-invent/sysadmin/dns/metadata.yaml
@@ -1,11 +1,7 @@
 description: DNS Zone files for Sysadmin managed domains
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-dns
 name: DNS
 projectpath: sysadmin/dns
 repoactive: false
-repopath: sysadmin/dns
-type: module
+repopath: /sysadmin/dns
diff --git a/projects-invent/sysadmin/geoip-service-backend/metadata.yaml b/projects-invent/sysadmin/geoip-service-backend/metadata.yaml
index cf0ab665..6f724cd8 100644
--- a/projects-invent/sysadmin/geoip-service-backend/metadata.yaml
+++ b/projects-invent/sysadmin/geoip-service-backend/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: sysadmin-geoip-service-backend
 name: GeoIP Resolution Service
 projectpath: sysadmin/geoip-service-backend
 repoactive: false
-repopath: sysadmin/geoip-service-backend
-type: module
+repopath: /sysadmin/geoip-service-backend
diff --git a/projects-invent/sysadmin/gerrit-all-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-all-projects/metadata.yaml
index 9b421de6..707fed70 100644
--- a/projects-invent/sysadmin/gerrit-all-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-all-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-all-projects
 name: All-Projects for Gerrit instance
 projectpath: sysadmin/gerrit-all-projects
 repoactive: false
-repopath: sysadmin/gerrit-all-projects
-type: module
+repopath: /sysadmin/gerrit-all-projects
diff --git a/projects-invent/sysadmin/gerrit-ci-matrix/metadata.yaml b/projects-invent/sysadmin/gerrit-ci-matrix/metadata.yaml
index 0100199b..303ec671 100644
--- a/projects-invent/sysadmin/gerrit-ci-matrix/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-ci-matrix/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-ci-matrix
 name: Gerrit Project Compilation and Test Status Matrix
 projectpath: sysadmin/gerrit-ci-matrix
 repoactive: false
-repopath: sysadmin/gerrit-ci-matrix
-type: module
+repopath: /sysadmin/gerrit-ci-matrix
diff --git a/projects-invent/sysadmin/gerrit-gear/metadata.yaml b/projects-invent/sysadmin/gerrit-gear/metadata.yaml
index a856ec51..b3c931c4 100644
--- a/projects-invent/sysadmin/gerrit-gear/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-gear/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-gear
 name: Gear - component of Zuul and Gerrit system
 projectpath: sysadmin/gerrit-gear
 repoactive: false
-repopath: sysadmin/gerrit-gear
-type: module
+repopath: /sysadmin/gerrit-gear
diff --git a/projects-invent/sysadmin/gerrit-imported-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-imported-projects/metadata.yaml
index 03aa63ba..39634df7 100644
--- a/projects-invent/sysadmin/gerrit-imported-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-imported-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: Read-only imports from KDE git to Gerrit
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-imported-projects
 name: Gerrit Read-Only Imported Projects
 projectpath: sysadmin/gerrit-imported-projects
 repoactive: false
-repopath: sysadmin/gerrit-imported-projects
-type: module
+repopath: /sysadmin/gerrit-imported-projects
diff --git a/projects-invent/sysadmin/gerrit-infra-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-infra-projects/metadata.yaml
index 5c8cde25..6b0b9e42 100644
--- a/projects-invent/sysadmin/gerrit-infra-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-infra-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-infra-projects
 name: Infrastructure projects managed by Gerrit
 projectpath: sysadmin/gerrit-infra-projects
 repoactive: false
-repopath: sysadmin/gerrit-infra-projects
-type: module
+repopath: /sysadmin/gerrit-infra-projects
diff --git a/projects-invent/sysadmin/gerrit-kde-ci-checked-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-kde-ci-checked-projects/metadata.yaml
index 58884554..f7353c17 100644
--- a/projects-invent/sysadmin/gerrit-kde-ci-checked-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-kde-ci-checked-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-kde-ci-checked-projects
 name: KDE CI checked projects for Gerrit instance
 projectpath: sysadmin/gerrit-kde-ci-checked-projects
 repoactive: false
-repopath: sysadmin/gerrit-kde-ci-checked-projects
-type: module
+repopath: /sysadmin/gerrit-kde-ci-checked-projects
diff --git a/projects-invent/sysadmin/gerrit-kde-ci-enforced-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-kde-ci-enforced-projects/metadata.yaml
index 9ad31476..fb96869b 100644
--- a/projects-invent/sysadmin/gerrit-kde-ci-enforced-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-kde-ci-enforced-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-kde-ci-enforced-projects
 name: KDE CI pass enforced projects for Gerrit instance
 projectpath: sysadmin/gerrit-kde-ci-enforced-projects
 repoactive: false
-repopath: sysadmin/gerrit-kde-ci-enforced-projects
-type: module
+repopath: /sysadmin/gerrit-kde-ci-enforced-projects
diff --git a/projects-invent/sysadmin/gerrit-kde-traditional-projects/metadata.yaml b/projects-invent/sysadmin/gerrit-kde-traditional-projects/metadata.yaml
index a95c2181..c5627ed2 100644
--- a/projects-invent/sysadmin/gerrit-kde-traditional-projects/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-kde-traditional-projects/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-kde-traditional-projects
 name: Traditional KDE Projects for Gerrit instance
 projectpath: sysadmin/gerrit-kde-traditional-projects
 repoactive: false
-repopath: sysadmin/gerrit-kde-traditional-projects
-type: module
+repopath: /sysadmin/gerrit-kde-traditional-projects
diff --git a/projects-invent/sysadmin/gerrit-project-config/metadata.yaml b/projects-invent/sysadmin/gerrit-project-config/metadata.yaml
index 694b651a..06c84bfb 100644
--- a/projects-invent/sysadmin/gerrit-project-config/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-project-config/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-project-config
 name: Configuration for various Gerrit/CI components
 projectpath: sysadmin/gerrit-project-config
 repoactive: false
-repopath: sysadmin/gerrit-project-config
-type: module
+repopath: /sysadmin/gerrit-project-config
diff --git a/projects-invent/sysadmin/gerrit-turbo-hipster/metadata.yaml b/projects-invent/sysadmin/gerrit-turbo-hipster/metadata.yaml
index 0f362406..5ba4a9fe 100644
--- a/projects-invent/sysadmin/gerrit-turbo-hipster/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-turbo-hipster/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-turbo-hipster
 name: Turbo Hipster setup for Gerrit
 projectpath: sysadmin/gerrit-turbo-hipster
 repoactive: false
-repopath: sysadmin/gerrit-turbo-hipster
-type: module
+repopath: /sysadmin/gerrit-turbo-hipster
diff --git a/projects-invent/sysadmin/gerrit-zuul/metadata.yaml b/projects-invent/sysadmin/gerrit-zuul/metadata.yaml
index 613c8a5b..12b0d58c 100644
--- a/projects-invent/sysadmin/gerrit-zuul/metadata.yaml
+++ b/projects-invent/sysadmin/gerrit-zuul/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Jan Kundr\xE1t"
-  username: jkt
+identifier: sysadmin-gerrit-zuul
 name: Code and configuration for Zuul instance which integrates with Gerrit
 projectpath: sysadmin/gerrit-zuul
 repoactive: false
-repopath: sysadmin/gerrit-zuul
-type: module
+repopath: /sysadmin/gerrit-zuul
diff --git a/projects-invent/sysadmin/gitlab-ldapsync/metadata.yaml b/projects-invent/sysadmin/gitlab-ldapsync/metadata.yaml
index 519f6d8b..7fe90a7e 100644
--- a/projects-invent/sysadmin/gitlab-ldapsync/metadata.yaml
+++ b/projects-invent/sysadmin/gitlab-ldapsync/metadata.yaml
@@ -1,11 +1,8 @@
-description: Agent to monitor a given LDAP directory for changes and propagate them to Gitlab
+description: Agent to monitor a given LDAP directory for changes and propagate them
+  to Gitlab
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-gitlab-ldapsync
 name: Gitlab LDAP Sync
 projectpath: sysadmin/gitlab-ldapsync
 repoactive: true
-repopath: sysadmin/gitlab-ldapsync
-type: module
+repopath: /sysadmin/gitlab-ldapsync
diff --git a/projects-invent/sysadmin/irc-notifications/metadata.yaml b/projects-invent/sysadmin/irc-notifications/metadata.yaml
index 09332709..cf3f81a6 100644
--- a/projects-invent/sysadmin/irc-notifications/metadata.yaml
+++ b/projects-invent/sysadmin/irc-notifications/metadata.yaml
@@ -1,14 +1,8 @@
 description: Essential materials for the KDE IRC commit notifications system, based
   on Irker and CIA style XML delivered via SMTP.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-irc-notifications
 name: IRC Commit Notifications
 projectpath: sysadmin/irc-notifications
 repoactive: true
-repopath: sysadmin/irc-notifications
-type: module
+repopath: /sysadmin/irc-notifications
diff --git a/projects-invent/sysadmin/kde-ansible/metadata.yaml b/projects-invent/sysadmin/kde-ansible/metadata.yaml
index 9880c4c7..ca66a911 100644
--- a/projects-invent/sysadmin/kde-ansible/metadata.yaml
+++ b/projects-invent/sysadmin/kde-ansible/metadata.yaml
@@ -1,11 +1,7 @@
 description: Ansible playbooks for KDE infrastructure
 hasrepo: true
-icon: null
-members:
-- displayname: Nicolás Alvarez
-  username: nalvarez
+identifier: sysadmin-kde-ansible
 name: kde-ansible
 projectpath: sysadmin/kde-ansible
 repoactive: false
-repopath: sysadmin/kde-ansible
-type: module
+repopath: /sysadmin/kde-ansible
diff --git a/projects-invent/sysadmin/kde-build-metadata/metadata.yaml b/projects-invent/sysadmin/kde-build-metadata/metadata.yaml
index 03c673b7..2751b202 100644
--- a/projects-invent/sysadmin/kde-build-metadata/metadata.yaml
+++ b/projects-invent/sysadmin/kde-build-metadata/metadata.yaml
@@ -1,13 +1,7 @@
 description: Metadata for the use of KDE build scripts
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Jansen
-  username: mjansen
-- displayname: Michael Pyne
-  username: mpyne
+identifier: kde-build-metadata
 name: KDE Build Metadata
 projectpath: kde-build-metadata
 repoactive: true
-repopath: kde-build-metadata
-type: component
+repopath: /sysadmin/kde-build-metadata
diff --git a/projects-invent/sysadmin/kikibot/metadata.yaml b/projects-invent/sysadmin/kikibot/metadata.yaml
index c0cf8b0e..c79d545f 100644
--- a/projects-invent/sysadmin/kikibot/metadata.yaml
+++ b/projects-invent/sysadmin/kikibot/metadata.yaml
@@ -1,11 +1,7 @@
 description: Custom IRC Response bot for Krita
 hasrepo: true
-icon: null
-members:
-- displayname: Scott Petrovic
-  username: scottpetrovic
+identifier: sysadmin-kikibot
 name: Kikibot
 projectpath: sysadmin/kikibot
 repoactive: true
-repopath: sysadmin/kikibot
-type: module
+repopath: /sysadmin/kikibot
diff --git a/projects-invent/sysadmin/metadata.yaml b/projects-invent/sysadmin/metadata.yaml
index 0860af49..397c88e6 100644
--- a/projects-invent/sysadmin/metadata.yaml
+++ b/projects-invent/sysadmin/metadata.yaml
@@ -1,9 +1,7 @@
 description: Repositories used by KDE System Administrators to manage KDE Infrastructure
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Sysadmin
 projectpath: sysadmin
 repoactive: false
-repopath: null
-type: component
+repopath: /sysadmin
diff --git a/projects-invent/sysadmin/neon-appstream-extra-metainfo/metadata.yaml b/projects-invent/sysadmin/neon-appstream-extra-metainfo/metadata.yaml
index f38d1950..e6b6b1e5 100644
--- a/projects-invent/sysadmin/neon-appstream-extra-metainfo/metadata.yaml
+++ b/projects-invent/sysadmin/neon-appstream-extra-metainfo/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'extra-metainfo information for appstream-generator'
+description: extra-metainfo information for appstream-generator
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-appstream-extra-metainfo
 name: Neon Additional Appstream Metainfo
 projectpath: sysadmin/neon-appstream-extra-metainfo
 repoactive: false
-repopath: sysadmin/neon-appstream-extra-metainfo
-type: module
+repopath: /sysadmin/neon-appstream-extra-metainfo
diff --git a/projects-invent/sysadmin/neon-image-syncd/metadata.yaml b/projects-invent/sysadmin/neon-image-syncd/metadata.yaml
index 22d55425..97a4d757 100644
--- a/projects-invent/sysadmin/neon-image-syncd/metadata.yaml
+++ b/projects-invent/sysadmin/neon-image-syncd/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-image-syncd
 name: A daemon to poll rsync and sync neon images.
 projectpath: sysadmin/neon-image-syncd
 repoactive: false
-repopath: sysadmin/neon-image-syncd
-type: module
+repopath: /sysadmin/neon-image-syncd
diff --git a/projects-invent/sysadmin/neon-logind-cleanup/metadata.yaml b/projects-invent/sysadmin/neon-logind-cleanup/metadata.yaml
index a9cf85a7..fc1c5e71 100644
--- a/projects-invent/sysadmin/neon-logind-cleanup/metadata.yaml
+++ b/projects-invent/sysadmin/neon-logind-cleanup/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-logind-cleanup
 name: Neon logind session cleaner
 projectpath: sysadmin/neon-logind-cleanup
 repoactive: false
-repopath: sysadmin/neon-logind-cleanup
-type: module
+repopath: /sysadmin/neon-logind-cleanup
diff --git a/projects-invent/sysadmin/neon-openqa/metadata.yaml b/projects-invent/sysadmin/neon-openqa/metadata.yaml
index 0f2ae8bb..f23506cf 100644
--- a/projects-invent/sysadmin/neon-openqa/metadata.yaml
+++ b/projects-invent/sysadmin/neon-openqa/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-openqa
 name: Neon Components for OpenQA
 projectpath: sysadmin/neon-openqa
 repoactive: false
-repopath: sysadmin/neon-openqa
-type: module
+repopath: /sysadmin/neon-openqa
diff --git a/projects-invent/sysadmin/neon-server-deploy/metadata.yaml b/projects-invent/sysadmin/neon-server-deploy/metadata.yaml
index 84e22e86..3de9ee69 100644
--- a/projects-invent/sysadmin/neon-server-deploy/metadata.yaml
+++ b/projects-invent/sysadmin/neon-server-deploy/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-server-deploy
 name: Neon Server Deployment Tooling
 projectpath: sysadmin/neon-server-deploy
 repoactive: false
-repopath: sysadmin/neon-server-deploy
-type: module
+repopath: /sysadmin/neon-server-deploy
diff --git a/projects-invent/sysadmin/neon-sftp-bridge/metadata.yaml b/projects-invent/sysadmin/neon-sftp-bridge/metadata.yaml
index 69a2d57a..dbaefc2e 100644
--- a/projects-invent/sysadmin/neon-sftp-bridge/metadata.yaml
+++ b/projects-invent/sysadmin/neon-sftp-bridge/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: sysadmin-neon-sftp-bridge
 name: Neon SFTP-to-HTTP bridging daemon
 projectpath: sysadmin/neon-sftp-bridge
 repoactive: false
-repopath: sysadmin/neon-sftp-bridge
-type: module
+repopath: /sysadmin/neon-sftp-bridge
diff --git a/projects-invent/sysadmin/projects-api/metadata.yaml b/projects-invent/sysadmin/projects-api/metadata.yaml
index 1689578a..fad341ba 100644
--- a/projects-invent/sysadmin/projects-api/metadata.yaml
+++ b/projects-invent/sysadmin/projects-api/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: sysadmin-projects-api
 name: Projects API
 projectpath: sysadmin/projects-api
 repoactive: false
-repopath: sysadmin/projects-api
-type: module
+repopath: /sysadmin/projects-api
diff --git a/projects-invent/sysadmin/propagator/metadata.yaml b/projects-invent/sysadmin/propagator/metadata.yaml
index bde71023..2412a848 100644
--- a/projects-invent/sysadmin/propagator/metadata.yaml
+++ b/projects-invent/sysadmin/propagator/metadata.yaml
@@ -1,11 +1,7 @@
 description: A git mirror fleet manager
 hasrepo: true
-icon: null
-members:
-- displayname: Boudhayan Gupta
-  username: bgupta
+identifier: propagator
 name: Propagator
 projectpath: playground/propagator
 repoactive: false
-repopath: propagator
-type: module
+repopath: /sysadmin/propagator
diff --git a/projects-invent/sysadmin/rbot-plugin-kde-bugzilla/metadata.yaml b/projects-invent/sysadmin/rbot-plugin-kde-bugzilla/metadata.yaml
index f90a6747..b60137ef 100644
--- a/projects-invent/sysadmin/rbot-plugin-kde-bugzilla/metadata.yaml
+++ b/projects-invent/sysadmin/rbot-plugin-kde-bugzilla/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: sysadmin-rbot-plugin-kde-bugzilla
 name: RBot plugin resolving Bugzilla items
 projectpath: sysadmin/rbot-plugin-kde-bugzilla
 repoactive: false
-repopath: sysadmin/rbot-plugin-kde-bugzilla
-type: module
+repopath: /sysadmin/rbot-plugin-kde-bugzilla
diff --git a/projects-invent/sysadmin/rbot-plugin-kde-phabricator/metadata.yaml b/projects-invent/sysadmin/rbot-plugin-kde-phabricator/metadata.yaml
index 418894ec..174d34b5 100644
--- a/projects-invent/sysadmin/rbot-plugin-kde-phabricator/metadata.yaml
+++ b/projects-invent/sysadmin/rbot-plugin-kde-phabricator/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: sysadmin-rbot-plugin-kde-phabricator
 name: RBot plugin resolving Phabricator items
 projectpath: sysadmin/rbot-plugin-kde-phabricator
 repoactive: false
-repopath: sysadmin/rbot-plugin-kde-phabricator
-type: module
+repopath: /sysadmin/rbot-plugin-kde-phabricator
diff --git a/projects-invent/sysadmin/release-tools/metadata.yaml b/projects-invent/sysadmin/release-tools/metadata.yaml
index 148967b8..46aad449 100644
--- a/projects-invent/sysadmin/release-tools/metadata.yaml
+++ b/projects-invent/sysadmin/release-tools/metadata.yaml
@@ -1,15 +1,7 @@
 description: Scripts and tools used when releasing KDE SC
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Torgny Nyblom
-  username: tnyblom
-- displayname: Allen Winter
-  username: winterz
+identifier: sysadmin-release-tools
 name: KDE release tools
 projectpath: sysadmin/release-tools
 repoactive: true
-repopath: sysadmin/release-tools
-type: module
+repopath: /sysadmin/release-tools
diff --git a/projects-invent/sysadmin/replicant/metadata.yaml b/projects-invent/sysadmin/replicant/metadata.yaml
index fa73db26..d20e47bf 100644
--- a/projects-invent/sysadmin/replicant/metadata.yaml
+++ b/projects-invent/sysadmin/replicant/metadata.yaml
@@ -1,11 +1,8 @@
-description: Agent to mirror all repositories, and changes in them, from a Gitlab instance
+description: Agent to mirror all repositories, and changes in them, from a Gitlab
+  instance
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-replicant
 name: Replicant
 projectpath: sysadmin/replicant
 repoactive: true
-repopath: sysadmin/replicant
-type: module
+repopath: /sysadmin/replicant
diff --git a/projects-invent/sysadmin/repo-management/metadata.yaml b/projects-invent/sysadmin/repo-management/metadata.yaml
index 272a624c..406fe4f3 100644
--- a/projects-invent/sysadmin/repo-management/metadata.yaml
+++ b/projects-invent/sysadmin/repo-management/metadata.yaml
@@ -1,9 +1,7 @@
 description: This project contains the hooks and scripts that power the KDE git infrastructure.
 hasrepo: true
-icon: null
-members: []
+identifier: repo-management
 name: Repository Management
 projectpath: repo-management
 repoactive: true
-repopath: repo-management
-type: component
+repopath: /sysadmin/repo-management
diff --git a/projects-invent/sysadmin/repo-metadata/metadata.yaml b/projects-invent/sysadmin/repo-metadata/metadata.yaml
index 5bab09bd..74f9a8ab 100644
--- a/projects-invent/sysadmin/repo-metadata/metadata.yaml
+++ b/projects-invent/sysadmin/repo-metadata/metadata.yaml
@@ -1,17 +1,7 @@
 description: Metadata concerning repositories on git.kde.org
 hasrepo: true
-icon: null
+identifier: sysadmin-repo-metadata
 name: Git Repository Metadata
 projectpath: sysadmin/repo-metadata
 repoactive: false
-repopath: sysadmin/repo-metadata
-type: module
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
-- displayname: Boudhayan Gupta
-  username: bgupta
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Luigi Toscano
-  username: ltoscano
+repopath: /sysadmin/repo-metadata
diff --git a/projects-invent/sysadmin/webstats/metadata.yaml b/projects-invent/sysadmin/webstats/metadata.yaml
index 7d333647..47bdbf63 100644
--- a/projects-invent/sysadmin/webstats/metadata.yaml
+++ b/projects-invent/sysadmin/webstats/metadata.yaml
@@ -1,11 +1,7 @@
 description: Scripts and templates used to manage web statistics on KDE servers
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: sysadmin-webstats
 name: Webstats
 projectpath: sysadmin/webstats
 repoactive: false
-repopath: sysadmin/webstats
-type: module
+repopath: /sysadmin/webstats
diff --git a/projects-invent/system/apper/metadata.yaml b/projects-invent/system/apper/metadata.yaml
index 0f7a54a3..edea3d71 100644
--- a/projects-invent/system/apper/metadata.yaml
+++ b/projects-invent/system/apper/metadata.yaml
@@ -1,11 +1,7 @@
 description: An application and package manager using PackageKit
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: apper
 name: Apper
 projectpath: extragear/sysadmin/apper
 repoactive: true
-repopath: apper
-type: project
+repopath: /system/apper
diff --git a/projects-invent/system/distro-release-notifier/metadata.yaml b/projects-invent/system/distro-release-notifier/metadata.yaml
index 6906393e..9f53e134 100644
--- a/projects-invent/system/distro-release-notifier/metadata.yaml
+++ b/projects-invent/system/distro-release-notifier/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: distro-release-notifier
 name: Distribution Release Notifier
 projectpath: playground/base/distro-release-notifier
 repoactive: true
-repopath: distro-release-notifier
-type: project
+repopath: /system/distro-release-notifier
diff --git a/projects-invent/system/dolphin/metadata.yaml b/projects-invent/system/dolphin/metadata.yaml
index f4af5eb7..dd4855a2 100644
--- a/projects-invent/system/dolphin/metadata.yaml
+++ b/projects-invent/system/dolphin/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDE File Manager
 hasrepo: true
-icon: null
-members:
-- displayname: Frank Reininghaus
-  username: freininghaus
-- displayname: Emmanuel Pescosta
-  username: emmanuelp
-- displayname: Elvis Angelaccio
-  username: elvisangelaccio
+identifier: dolphin
 name: Dolphin
 projectpath: kde/applications/dolphin
 repoactive: true
-repopath: dolphin
-type: project
+repopath: /system/dolphin
diff --git a/projects-invent/system/kalternatives/metadata.yaml b/projects-invent/system/kalternatives/metadata.yaml
index 87e948cd..3f299c52 100644
--- a/projects-invent/system/kalternatives/metadata.yaml
+++ b/projects-invent/system/kalternatives/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE distribution alternatives configuration
 hasrepo: true
-icon: null
-members:
-- displayname: Pino Toscano
-  username: pino
+identifier: kalternatives
 name: KAlternatives
 projectpath: playground/sysadmin/kalternatives
 repoactive: true
-repopath: kalternatives
-type: project
+repopath: /system/kalternatives
diff --git a/projects-invent/system/kcm-grub2/metadata.yaml b/projects-invent/system/kcm-grub2/metadata.yaml
index c4e17d61..5ccecc63 100644
--- a/projects-invent/system/kcm-grub2/metadata.yaml
+++ b/projects-invent/system/kcm-grub2/metadata.yaml
@@ -38,12 +38,8 @@ description: 'A KDE Control Module for configuring the GRUB2 bootloader.
 
   KDE Extragear Page: https://projects.kde.org/projects/extragear/sysadmin/kcm-grub2'
 hasrepo: true
-icon: system-reboot
-members:
-- displayname: Konstantinos Smanis
-  username: ksmanis
+identifier: kcm-grub2
 name: GRUB2 Editor
 projectpath: extragear/sysadmin/kcm-grub2
 repoactive: true
-repopath: kcm-grub2
-type: project
+repopath: /system/kcm-grub2
diff --git a/projects-invent/system/kcron/metadata.yaml b/projects-invent/system/kcron/metadata.yaml
index 40fa4167..65fa4553 100644
--- a/projects-invent/system/kcron/metadata.yaml
+++ b/projects-invent/system/kcron/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Task Scheduler
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kcron
 name: KCron
 projectpath: kde/kdeadmin/kcron
 repoactive: true
-repopath: kcron
-type: project
+repopath: /system/kcron
diff --git a/projects-invent/system/kdisksutilities/metadata.yaml b/projects-invent/system/kdisksutilities/metadata.yaml
index ae2866ec..346efe8e 100644
--- a/projects-invent/system/kdisksutilities/metadata.yaml
+++ b/projects-invent/system/kdisksutilities/metadata.yaml
@@ -1,11 +1,7 @@
 description: Disks management utilities.
 hasrepo: true
-icon: null
-members:
-- displayname: Davide Bettio
-  username: bettio
+identifier: kdisksutilities
 name: KDisksUtilities
 projectpath: playground/sysadmin/kdisksutilities
 repoactive: true
-repopath: kdisksutilities
-type: project
+repopath: /system/kdisksutilities
diff --git a/projects-invent/system/khelpcenter/metadata.yaml b/projects-invent/system/khelpcenter/metadata.yaml
index a970e341..6814aac4 100644
--- a/projects-invent/system/khelpcenter/metadata.yaml
+++ b/projects-invent/system/khelpcenter/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application to show programs documentation
 hasrepo: true
-icon: null
-members:
-- displayname: Luigi Toscano
-  username: ltoscano
+identifier: khelpcenter
 name: KHelpCenter
 projectpath: kde/applications/khelpcenter
 repoactive: true
-repopath: khelpcenter
-type: project
+repopath: /system/khelpcenter
diff --git a/projects-invent/system/kio-fuse/metadata.yaml b/projects-invent/system/kio-fuse/metadata.yaml
index eec9c298..fe457947 100644
--- a/projects-invent/system/kio-fuse/metadata.yaml
+++ b/projects-invent/system/kio-fuse/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'FUSE Interface for KIO'
+description: FUSE Interface for KIO
 hasrepo: true
-icon: null
-members:
-- displayname: Fabian Vogt
-  username: fvogt
-- displayname: Alexander Saoutkin
-  username: feverfew
+identifier: kio-fuse
 name: KIOFuse
 projectpath: extragear/base/kio-fuse
 repoactive: true
-repopath: kio-fuse
-type: project
+repopath: /system/kio-fuse
diff --git a/projects-invent/system/kpmcore/metadata.yaml b/projects-invent/system/kpmcore/metadata.yaml
index baecf85a..9b2bcf99 100644
--- a/projects-invent/system/kpmcore/metadata.yaml
+++ b/projects-invent/system/kpmcore/metadata.yaml
@@ -1,14 +1,8 @@
 description: Library for managing partitions. Common code for KDE Partition Manager
   and other projects.
 hasrepo: true
-icon: null
-members:
-- displayname: Teo Mrnjavac
-  username: mrnjavac
-- displayname: "Andrius \u0160tikonas"
-  username: stikonas
+identifier: kpmcore
 name: KDE Partition Manager core library
 projectpath: extragear/sysadmin/kpmcore
 repoactive: true
-repopath: kpmcore
-type: project
+repopath: /system/kpmcore
diff --git a/projects-invent/system/ksystemlog/metadata.yaml b/projects-invent/system/ksystemlog/metadata.yaml
index fdbee7e9..bc3847bf 100644
--- a/projects-invent/system/ksystemlog/metadata.yaml
+++ b/projects-invent/system/ksystemlog/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE SystemLog Application
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: ksystemlog
 name: KSystemLog
 projectpath: kde/kdeadmin/ksystemlog
 repoactive: true
-repopath: ksystemlog
-type: project
+repopath: /system/ksystemlog
diff --git a/projects-invent/system/kubuntu-debug-installer/metadata.yaml b/projects-invent/system/kubuntu-debug-installer/metadata.yaml
index 752bbdec..d4624abb 100644
--- a/projects-invent/system/kubuntu-debug-installer/metadata.yaml
+++ b/projects-invent/system/kubuntu-debug-installer/metadata.yaml
@@ -1,13 +1,7 @@
 description: Program to install debug packages on Kubuntu for DrKonqi
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: kubuntu-debug-installer
 name: Kubuntu Debug Installer
 projectpath: playground/base/kubuntu-debug-installer
 repoactive: true
-repopath: kubuntu-debug-installer
-type: project
+repopath: /system/kubuntu-debug-installer
diff --git a/projects-invent/system/kubuntu-driver-kcm/metadata.yaml b/projects-invent/system/kubuntu-driver-kcm/metadata.yaml
index 8f35f82a..48b8b943 100644
--- a/projects-invent/system/kubuntu-driver-kcm/metadata.yaml
+++ b/projects-invent/system/kubuntu-driver-kcm/metadata.yaml
@@ -1,14 +1,8 @@
 description: KDE Config module to use Ubuntu driver manager system to install proprietary
   drivers
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: kubuntu-driver-kcm
 name: KDE Config Driver Manager
 projectpath: playground/base/kubuntu-driver-kcm
 repoactive: true
-repopath: kubuntu-driver-kcm
-type: project
+repopath: /system/kubuntu-driver-kcm
diff --git a/projects-invent/system/kubuntu-notification-helper/metadata.yaml b/projects-invent/system/kubuntu-notification-helper/metadata.yaml
index f883f9c0..9df4bd36 100644
--- a/projects-invent/system/kubuntu-notification-helper/metadata.yaml
+++ b/projects-invent/system/kubuntu-notification-helper/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kubuntu Notifications Helper
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: kubuntu-notification-helper
 name: Kubuntu Notifications Helper
 projectpath: playground/base/kubuntu-notification-helper
 repoactive: true
-repopath: kubuntu-notification-helper
-type: project
+repopath: /system/kubuntu-notification-helper
diff --git a/projects-invent/system/kup/metadata.yaml b/projects-invent/system/kup/metadata.yaml
index 479ffe3c..2329bbba 100644
--- a/projects-invent/system/kup/metadata.yaml
+++ b/projects-invent/system/kup/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Backup scheduler for the Plasma desktop'
+description: Backup scheduler for the Plasma desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Simon Persson
-  username: persson
+identifier: kup
 name: Kup
 projectpath: kdereview/kup
 repoactive: true
-repopath: kup
-type: project
+repopath: /system/kup
diff --git a/projects-invent/system/libdebconf-kde/metadata.yaml b/projects-invent/system/libdebconf-kde/metadata.yaml
index 54af93ab..472f2d70 100644
--- a/projects-invent/system/libdebconf-kde/metadata.yaml
+++ b/projects-invent/system/libdebconf-kde/metadata.yaml
@@ -1,13 +1,7 @@
 description: A library that talks debconf protocol used to present questions
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: libdebconf-kde
 name: libdebconf-kde
 projectpath: extragear/sysadmin/libdebconf-kde
 repoactive: true
-repopath: libdebconf-kde
-type: project
+repopath: /system/libdebconf-kde
diff --git a/projects-invent/system/libqapt/metadata.yaml b/projects-invent/system/libqapt/metadata.yaml
index 58c68805..10e13fe8 100644
--- a/projects-invent/system/libqapt/metadata.yaml
+++ b/projects-invent/system/libqapt/metadata.yaml
@@ -1,17 +1,7 @@
 description: A Qt wrapper library/APT implementation around the libapt-pkg library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Michael Stemle
-  username: mstemle
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Jonathan Michael Thomas
-  username: jmthomas
+identifier: libqapt
 name: LibQApt
 projectpath: extragear/sysadmin/libqapt
 repoactive: true
-repopath: libqapt
-type: project
+repopath: /system/libqapt
diff --git a/projects-invent/system/liquidshell/metadata.yaml b/projects-invent/system/liquidshell/metadata.yaml
index 81001a7a..7561a16b 100644
--- a/projects-invent/system/liquidshell/metadata.yaml
+++ b/projects-invent/system/liquidshell/metadata.yaml
@@ -1,11 +1,7 @@
-description: "Basic desktop shell using QtWidgets"
+description: Basic desktop shell using QtWidgets
 hasrepo: true
-icon: null
-members:
-- displayname: "Martin Koller"
-  username: mkoller
+identifier: liquidshell
 name: Liquidshell
 projectpath: extragear/base/liquidshell
 repoactive: true
-repopath: liquidshell
-type: project
+repopath: /system/liquidshell
diff --git a/projects-invent/system/metadata.yaml b/projects-invent/system/metadata.yaml
index 36bc8f28..c1fdc4c9 100644
--- a/projects-invent/system/metadata.yaml
+++ b/projects-invent/system/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Admin
 projectpath: kde/kdeadmin
 repoactive: false
-repopath: null
-type: module
+repopath: /system
diff --git a/projects-invent/system/muon/metadata.yaml b/projects-invent/system/muon/metadata.yaml
index 09f89c19..cc30a60a 100644
--- a/projects-invent/system/muon/metadata.yaml
+++ b/projects-invent/system/muon/metadata.yaml
@@ -1,19 +1,7 @@
 description: A collection of package management tools for Debian-based systems
 hasrepo: true
-icon: muondiscover
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Jonathan Michael Thomas
-  username: jmthomas
-- displayname: Lukas Appelhans
-  username: lappelhans
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Harald Sitter
-  username: sitter
+identifier: muon
 name: Muon
 projectpath: extragear/sysadmin/muon
 repoactive: true
-repopath: muon
-type: project
+repopath: /system/muon
diff --git a/projects-invent/system/partitionmanager/metadata.yaml b/projects-invent/system/partitionmanager/metadata.yaml
index 6a7a5dcd..d4ba2d65 100644
--- a/projects-invent/system/partitionmanager/metadata.yaml
+++ b/projects-invent/system/partitionmanager/metadata.yaml
@@ -1,11 +1,7 @@
 description: Manage your disks, partitions and file systems.
 hasrepo: true
-icon: null
-members:
-- displayname: "Andrius \u0160tikonas"
-  username: stikonas
+identifier: partitionmanager
 name: KDE Partition Manager
 projectpath: extragear/sysadmin/partitionmanager
 repoactive: true
-repopath: partitionmanager
-type: project
+repopath: /system/partitionmanager
diff --git a/projects-invent/system/plasma-packagekit/metadata.yaml b/projects-invent/system/plasma-packagekit/metadata.yaml
index a9466a68..1d55d411 100644
--- a/projects-invent/system/plasma-packagekit/metadata.yaml
+++ b/projects-invent/system/plasma-packagekit/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma applet to monitor Packagekit
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: plasma-packagekit
 name: Packagekit Monitoring Applet
 projectpath: playground/base/plasma-packagekit
 repoactive: true
-repopath: plasma-packagekit
-type: project
+repopath: /system/plasma-packagekit
diff --git a/projects-invent/system/plasma-pk-updates/metadata.yaml b/projects-invent/system/plasma-pk-updates/metadata.yaml
index 76abf62e..de8c0790 100644
--- a/projects-invent/system/plasma-pk-updates/metadata.yaml
+++ b/projects-invent/system/plasma-pk-updates/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma applet for software updates using PackageKit
 hasrepo: true
-icon: null
-members:
-- displayname: Jan Grulich
-  username: grulich
-- displayname: "Luk\xE1\u0161 Tinkl"
-  username: lukas
+identifier: plasma-pk-updates
 name: Plasma PackageKit updates
 projectpath: playground/base/plasma-pk-updates
 repoactive: true
-repopath: plasma-pk-updates
-type: project
+repopath: /system/plasma-pk-updates
diff --git a/projects-invent/system/qtcurve/metadata.yaml b/projects-invent/system/qtcurve/metadata.yaml
index 4fbf570f..777cb0a7 100644
--- a/projects-invent/system/qtcurve/metadata.yaml
+++ b/projects-invent/system/qtcurve/metadata.yaml
@@ -1,13 +1,7 @@
 description: The QtCurve style engine for Qt and other toolkits.
 hasrepo: true
-icon: null
-members:
-- displayname: Yichao Yu
-  username: yuyichao
-- displayname: Eike Hein
-  username: hein
+identifier: qtcurve
 name: QtCurve
 projectpath: extragear/base/qtcurve
 repoactive: true
-repopath: qtcurve
-type: project
+repopath: /system/qtcurve
diff --git a/projects-invent/system/samba-mounter/metadata.yaml b/projects-invent/system/samba-mounter/metadata.yaml
index e74088af..a2d6a85a 100644
--- a/projects-invent/system/samba-mounter/metadata.yaml
+++ b/projects-invent/system/samba-mounter/metadata.yaml
@@ -1,11 +1,7 @@
 description: Samba Share Mounter
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: samba-mounter
 name: Samba Mounter
 projectpath: playground/base/samba-mounter
 repoactive: true
-repopath: samba-mounter
-type: project
+repopath: /system/samba-mounter
diff --git a/projects-invent/system/systemdgenie/metadata.yaml b/projects-invent/system/systemdgenie/metadata.yaml
index b3181469..7fb98fda 100644
--- a/projects-invent/system/systemdgenie/metadata.yaml
+++ b/projects-invent/system/systemdgenie/metadata.yaml
@@ -1,11 +1,7 @@
 description: Systemd Managment Utility
 hasrepo: true
-icon: null
-members:
-- displayname: Ragnar Thomsen
-  username: rthomsen
+identifier: systemdgenie
 name: Systemd Management Utility
 projectpath: playground/sysadmin/systemdgenie
 repoactive: true
-repopath: systemdgenie
-type: project
+repopath: /system/systemdgenie
diff --git a/projects-invent/system/ubiquity-slideshow-neon/metadata.yaml b/projects-invent/system/ubiquity-slideshow-neon/metadata.yaml
index 1b15975f..0654e777 100644
--- a/projects-invent/system/ubiquity-slideshow-neon/metadata.yaml
+++ b/projects-invent/system/ubiquity-slideshow-neon/metadata.yaml
@@ -1,11 +1,7 @@
 description: Neon slideshow for Ubiquity
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: ubiquity-slideshow-neon
 name: Neon Ubiquity Slideshow
 projectpath: playground/base/ubiquity-slideshow-neon
 repoactive: true
-repopath: ubiquity-slideshow-neon
-type: project
+repopath: /system/ubiquity-slideshow-neon
diff --git a/projects-invent/system/wacomtablet/metadata.yaml b/projects-invent/system/wacomtablet/metadata.yaml
index 3a5c45ce..62b14ecd 100644
--- a/projects-invent/system/wacomtablet/metadata.yaml
+++ b/projects-invent/system/wacomtablet/metadata.yaml
@@ -32,14 +32,8 @@ description: 'This module implements a GUI for the Wacom Linux Drivers and exten
 
   * * Development Versions: https://software.opensuse.org/download.html?project=home:Temar:wacom-unstable&package=kcm_tablet'
 hasrepo: true
-icon: input-tablet
-members:
-- displayname: "J\xF6rg Ehrichs"
-  username: jehrichs
-- displayname: Alexander Maret-Huskinson
-  username: marethuskinson
+identifier: wacomtablet
 name: KCM Wacom Tablet
 projectpath: extragear/base/wacomtablet
 repoactive: true
-repopath: wacomtablet
-type: project
+repopath: /system/wacomtablet
diff --git a/projects-invent/system/whoopsie-kcm/metadata.yaml b/projects-invent/system/whoopsie-kcm/metadata.yaml
index 66dcb984..4c744d7e 100644
--- a/projects-invent/system/whoopsie-kcm/metadata.yaml
+++ b/projects-invent/system/whoopsie-kcm/metadata.yaml
@@ -1,13 +1,7 @@
 description: A KCM for talking to Ubuntu error tracker submission system Whoopsie
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: whoopsie-kcm
 name: KDE Config Module for Whoopsie
 projectpath: playground/base/whoopsie-kcm
 repoactive: true
-repopath: whoopsie-kcm
-type: project
+repopath: /system/whoopsie-kcm
diff --git a/projects-invent/unmaintained/about-distro/metadata.yaml b/projects-invent/unmaintained/about-distro/metadata.yaml
index c539886f..12abdc4b 100644
--- a/projects-invent/unmaintained/about-distro/metadata.yaml
+++ b/projects-invent/unmaintained/about-distro/metadata.yaml
@@ -1,13 +1,7 @@
 description: Moved to KInfoCenter source.
 hasrepo: true
-icon: null
-members:
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
-- displayname: Harald Sitter
-  username: sitter
+identifier: about-distro
 name: About Distribution KCM
 projectpath: unmaintained/about-distro
 repoactive: true
-repopath: about-distro
-type: project
+repopath: /unmaintained/about-distro
diff --git a/projects-invent/unmaintained/activities-support/metadata.yaml b/projects-invent/unmaintained/activities-support/metadata.yaml
index ce383678..aca7694a 100644
--- a/projects-invent/unmaintained/activities-support/metadata.yaml
+++ b/projects-invent/unmaintained/activities-support/metadata.yaml
@@ -1,12 +1,8 @@
 description: Plugins for 3rd party applications to be able to support activities and
   Share Like Connect.
 hasrepo: true
-icon: preferences-activities
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: activities-support
 name: Application plugins to support activities
 projectpath: unmaintained/activities-support
 repoactive: true
-repopath: activities-support
-type: project
+repopath: /unmaintained/activities-support
diff --git a/projects-invent/unmaintained/aki/metadata.yaml b/projects-invent/unmaintained/aki/metadata.yaml
index 0206f282..9c82c23a 100644
--- a/projects-invent/unmaintained/aki/metadata.yaml
+++ b/projects-invent/unmaintained/aki/metadata.yaml
@@ -1,11 +1,7 @@
 description: Extensive IRC client for KDE4.
 hasrepo: true
-icon: null
-members:
-- displayname: Keith Rusler
-  username: karusler
+identifier: aki
 name: Aki
 projectpath: unmaintained/aki
 repoactive: true
-repopath: aki
-type: project
+repopath: /unmaintained/aki
diff --git a/projects-invent/unmaintained/akonadi-facebook/metadata.yaml b/projects-invent/unmaintained/akonadi-facebook/metadata.yaml
index ec228657..0fd8a16d 100644
--- a/projects-invent/unmaintained/akonadi-facebook/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-facebook/metadata.yaml
@@ -1,18 +1,8 @@
 description: Makes events, contacts, notes and messages from Facebook available in
   KDE.
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas McGuire
-  username: tmcguire
-- displayname: Roeland Douma
-  username: douma
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: Pankaj Bhambhani
-  username: bhambhani
+identifier: akonadi-facebook
 name: Facebook Resource for Akonadi
 projectpath: unmaintained/akonadi-facebook
 repoactive: false
-repopath: akonadi-facebook
-type: project
+repopath: /unmaintained/akonadi-facebook
diff --git a/projects-invent/unmaintained/akonadi-git-resource/metadata.yaml b/projects-invent/unmaintained/akonadi-git-resource/metadata.yaml
index c36fb3c3..216a65a5 100644
--- a/projects-invent/unmaintained/akonadi-git-resource/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-git-resource/metadata.yaml
@@ -1,11 +1,7 @@
 description: Akonadi Git Resource allows you to see your commits in kmail.
 hasrepo: true
-icon: null
-members:
-- displayname: Sergio Luis Martins
-  username: smartins
+identifier: akonadi-git-resource
 name: Akonadi Git Resource
 projectpath: unmaintained/akonadi-git-resource
 repoactive: true
-repopath: akonadi-git-resource
-type: project
+repopath: /unmaintained/akonadi-git-resource
diff --git a/projects-invent/unmaintained/akonadi-google-applets/metadata.yaml b/projects-invent/unmaintained/akonadi-google-applets/metadata.yaml
index 7f247f2e..5a69860a 100644
--- a/projects-invent/unmaintained/akonadi-google-applets/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-google-applets/metadata.yaml
@@ -9,12 +9,8 @@ description: 'Plasma applets for Akonadi google resources
 
   "Calendar plasmoid on kde-look":http://kde-look.org/content/show.php/Calendar+plasmoid?content=150034'
 hasrepo: true
-icon: null
-members:
-- displayname: Jan Grulich
-  username: grulich
+identifier: akonadi-google-applets
 name: Akonadi google plasma applets
 projectpath: unmaintained/akonadi-google-applets
 repoactive: true
-repopath: akonadi-google-applets
-type: project
+repopath: /unmaintained/akonadi-google-applets
diff --git a/projects-invent/unmaintained/akonadi-googledata-resource/metadata.yaml b/projects-invent/unmaintained/akonadi-googledata-resource/metadata.yaml
index 70dabac6..2314fa7a 100644
--- a/projects-invent/unmaintained/akonadi-googledata-resource/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-googledata-resource/metadata.yaml
@@ -1,12 +1,8 @@
 description: It hosts 2 resources for akonadi that enables KDE-PIM apps to sync/edit/add/delete
   entries (either contacts or calendar events) from a google account.
 hasrepo: true
-icon: null
-members:
-- displayname: Adenilson Cavalcanti Da Silva
-  username: adasilva
+identifier: akonadi-googledata-resource
 name: Akonadi GCalendar & Contacts resources
 projectpath: unmaintained/akonadi-googledata-resource
 repoactive: true
-repopath: akonadi-googledata-resource
-type: project
+repopath: /unmaintained/akonadi-googledata-resource
diff --git a/projects-invent/unmaintained/akonadi-sugarcrm/metadata.yaml b/projects-invent/unmaintained/akonadi-sugarcrm/metadata.yaml
index 81d98511..618b20b5 100644
--- a/projects-invent/unmaintained/akonadi-sugarcrm/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-sugarcrm/metadata.yaml
@@ -1,17 +1,7 @@
 description: Accessing the addressbook of a SugarCRM web service
 hasrepo: true
-icon: null
-members:
-- displayname: Volker Krause
-  username: vkrause
-- displayname: David Faure
-  username: dfaure
-- displayname: Till Adam
-  username: tilladam
-- displayname: Kevin Krammer
-  username: krake
+identifier: akonadi-sugarcrm
 name: Akonadi Resource for SugarCRM Contacts
 projectpath: unmaintained/akonadi-sugarcrm
 repoactive: true
-repopath: akonadi-sugarcrm
-type: project
+repopath: /unmaintained/akonadi-sugarcrm
diff --git a/projects-invent/unmaintained/akonadi-vkontakte/metadata.yaml b/projects-invent/unmaintained/akonadi-vkontakte/metadata.yaml
index e29ac8c6..70514f4c 100644
--- a/projects-invent/unmaintained/akonadi-vkontakte/metadata.yaml
+++ b/projects-invent/unmaintained/akonadi-vkontakte/metadata.yaml
@@ -1,12 +1,8 @@
 description: Makes contacts, notes and messages from VKontakte.ru social network available
   in KDE.
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Potashev
-  username: aspotashev
+identifier: akonadi-vkontakte
 name: VKontakte Resource for Akonadi
 projectpath: unmaintained/akonadi-vkontakte
 repoactive: true
-repopath: akonadi-vkontakte
-type: project
+repopath: /unmaintained/akonadi-vkontakte
diff --git a/projects-invent/unmaintained/akunambol/metadata.yaml b/projects-invent/unmaintained/akunambol/metadata.yaml
index acbb7ab3..11b097ee 100644
--- a/projects-invent/unmaintained/akunambol/metadata.yaml
+++ b/projects-invent/unmaintained/akunambol/metadata.yaml
@@ -1,14 +1,8 @@
 description: Akunambol is a KDE SyncML client for your Akonadi Storage. a.k.a, it
   synchronizes your data with another device.
 hasrepo: true
-icon: null
-members:
-- displayname: Riccardo Iaconelli
-  username: ruphy
-- displayname: Marco Garatti
-  username: marcog
+identifier: akunambol
 name: Akunambol
 projectpath: unmaintained/akunambol
 repoactive: true
-repopath: akunambol
-type: project
+repopath: /unmaintained/akunambol
diff --git a/projects-invent/unmaintained/android-builder/metadata.yaml b/projects-invent/unmaintained/android-builder/metadata.yaml
index 9b068c37..101a56e7 100644
--- a/projects-invent/unmaintained/android-builder/metadata.yaml
+++ b/projects-invent/unmaintained/android-builder/metadata.yaml
@@ -1,11 +1,7 @@
 description: Build environment and SDK for cross-building KDE applications for Android.
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: android-builder
 name: KDE on Android SDK
 projectpath: unmaintained/android-builder
 repoactive: false
-repopath: android-builder
-type: project
+repopath: /unmaintained/android-builder
diff --git a/projects-invent/unmaintained/android-qt-creator/metadata.yaml b/projects-invent/unmaintained/android-qt-creator/metadata.yaml
index d9f2eec0..bc7f90f3 100644
--- a/projects-invent/unmaintained/android-qt-creator/metadata.yaml
+++ b/projects-invent/unmaintained/android-qt-creator/metadata.yaml
@@ -1,15 +1,7 @@
 description: Android port of Qt Creator IDE
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ray Donnelly
-  username: rdonnelly
-- displayname: Eskil Abrahamsen Blomfeldt
-  username: eskilabrahamsenblomfeldt
+identifier: android-qt-creator
 name: Android Qt Creator
 projectpath: unmaintained/necessitas/android-qt-creator
 repoactive: true
-repopath: android-qt-creator
-type: project
+repopath: /unmaintained/android-qt-creator
diff --git a/projects-invent/unmaintained/android-qt-mobility/metadata.yaml b/projects-invent/unmaintained/android-qt-mobility/metadata.yaml
index 1e9080fe..40dcbb2a 100644
--- a/projects-invent/unmaintained/android-qt-mobility/metadata.yaml
+++ b/projects-invent/unmaintained/android-qt-mobility/metadata.yaml
@@ -1,19 +1,7 @@
 description: Android port of Qt Mobility
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Damien Buhl
-  username: damien
-- displayname: Ray Donnelly
-  username: rdonnelly
-- displayname: Ricardo Kekki
-  username: kekki
-- displayname: Espen Riskedal
-  username: riskedal
+identifier: android-qt-mobility
 name: Android QtMobility
 projectpath: unmaintained/necessitas/android-qt-mobility
 repoactive: false
-repopath: android-qt-mobility
-type: project
+repopath: /unmaintained/android-qt-mobility
diff --git a/projects-invent/unmaintained/android-qt-ndk/metadata.yaml b/projects-invent/unmaintained/android-qt-ndk/metadata.yaml
index b73ff06f..94bf2ee0 100644
--- a/projects-invent/unmaintained/android-qt-ndk/metadata.yaml
+++ b/projects-invent/unmaintained/android-qt-ndk/metadata.yaml
@@ -1,13 +1,7 @@
 description: NDK repository for the Android port of Qt.
 hasrepo: true
-icon: null
-members:
-- displayname: Ray Donnelly
-  username: rdonnelly
-- displayname: BogDan Vatra
-  username: vatra
+identifier: android-qt-ndk
 name: Android Qt NDK
 projectpath: unmaintained/necessitas/android-qt-ndk
 repoactive: true
-repopath: android-qt-ndk
-type: project
+repopath: /unmaintained/android-qt-ndk
diff --git a/projects-invent/unmaintained/android-qt/metadata.yaml b/projects-invent/unmaintained/android-qt/metadata.yaml
index 8ccd40fe..98e0e2e0 100644
--- a/projects-invent/unmaintained/android-qt/metadata.yaml
+++ b/projects-invent/unmaintained/android-qt/metadata.yaml
@@ -1,23 +1,7 @@
 description: Android port of Qt Framework
 hasrepo: true
-icon: null
-members:
-- displayname: Damien Buhl
-  username: damien
-- displayname: Ray Donnelly
-  username: rdonnelly
-- displayname: Thomas Senyk
-  username: senyk
-- displayname: Ricardo Kekki
-  username: kekki
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Marius Bugge Monsen
-  username: mariusbu
-- displayname: Espen Riskedal
-  username: riskedal
+identifier: android-qt
 name: Android Qt Framework
 projectpath: unmaintained/necessitas/android-qt
 repoactive: true
-repopath: android-qt
-type: project
+repopath: /unmaintained/android-qt
diff --git a/projects-invent/unmaintained/android-qt5-qtbase/metadata.yaml b/projects-invent/unmaintained/android-qt5-qtbase/metadata.yaml
index 7b391f8c..330aea72 100644
--- a/projects-invent/unmaintained/android-qt5-qtbase/metadata.yaml
+++ b/projects-invent/unmaintained/android-qt5-qtbase/metadata.yaml
@@ -1,9 +1,7 @@
 description: Android Qt5 QtBase module
 hasrepo: true
-icon: null
-members: []
+identifier: android-qt5-qtbase
 name: Android Qt5 QtBase module
 projectpath: unmaintained/necessitas/android-qt5-qtbase
 repoactive: true
-repopath: android-qt5-qtbase
-type: project
+repopath: /unmaintained/android-qt5-qtbase
diff --git a/projects-invent/unmaintained/android-qtwebkit/metadata.yaml b/projects-invent/unmaintained/android-qtwebkit/metadata.yaml
index b6f31a34..c8f81a53 100644
--- a/projects-invent/unmaintained/android-qtwebkit/metadata.yaml
+++ b/projects-invent/unmaintained/android-qtwebkit/metadata.yaml
@@ -1,13 +1,7 @@
 description: QtWebkit port to Android
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ray Donnelly
-  username: rdonnelly
+identifier: android-qtwebkit
 name: Android QtWebkit
 projectpath: unmaintained/necessitas/android-qtwebkit
 repoactive: true
-repopath: android-qtwebkit
-type: project
+repopath: /unmaintained/android-qtwebkit
diff --git a/projects-invent/unmaintained/appmenu-runner/metadata.yaml b/projects-invent/unmaintained/appmenu-runner/metadata.yaml
index 35266d96..cdac29af 100644
--- a/projects-invent/unmaintained/appmenu-runner/metadata.yaml
+++ b/projects-invent/unmaintained/appmenu-runner/metadata.yaml
@@ -1,11 +1,7 @@
 description: AppMenu runner that allows to quickly find any action exported in AppMenu
 hasrepo: true
-icon: null
-members:
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: appmenu-runner
 name: AppMenu runner
 projectpath: unmaintained/appmenu-runner
 repoactive: true
-repopath: appmenu-runner
-type: project
+repopath: /unmaintained/appmenu-runner
diff --git a/projects-invent/unmaintained/appstream-runner/metadata.yaml b/projects-invent/unmaintained/appstream-runner/metadata.yaml
index ae0c6316..755ec9b8 100644
--- a/projects-invent/unmaintained/appstream-runner/metadata.yaml
+++ b/projects-invent/unmaintained/appstream-runner/metadata.yaml
@@ -1,11 +1,8 @@
-description: KRunner plugin for looking up the search into the software database to suggest software that wasn't found.
+description: KRunner plugin for looking up the search into the software database to
+  suggest software that wasn't found.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: appstream-runner
 name: Appstream KRunner Plugin
 projectpath: unmaintained/appstream-runner
 repoactive: true
-repopath: appstream-runner
-type: project
+repopath: /unmaintained/appstream-runner
diff --git a/projects-invent/unmaintained/assemblygen/metadata.yaml b/projects-invent/unmaintained/assemblygen/metadata.yaml
index 8284ebec..35341804 100644
--- a/projects-invent/unmaintained/assemblygen/metadata.yaml
+++ b/projects-invent/unmaintained/assemblygen/metadata.yaml
@@ -1,15 +1,7 @@
 description: A tool that generates .NET/mono assemblies from SMOKE libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Dimitar Dobrev
-  username: ddobrev
-- displayname: Richard Dale
-  username: rdale
+identifier: assemblygen
 name: Assemblygen
 projectpath: unmaintained/assemblygen
 repoactive: true
-repopath: assemblygen
-type: project
+repopath: /unmaintained/assemblygen
diff --git a/projects-invent/unmaintained/automoc/metadata.yaml b/projects-invent/unmaintained/automoc/metadata.yaml
index 20569ea5..b68093ca 100644
--- a/projects-invent/unmaintained/automoc/metadata.yaml
+++ b/projects-invent/unmaintained/automoc/metadata.yaml
@@ -1,13 +1,7 @@
 description: Automoc
 hasrepo: true
-icon: null
-members:
-- displayname: Matthias Kretz
-  username: mkretz
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: automoc
 name: Automoc
 projectpath: kdesupport/automoc
 repoactive: true
-repopath: automoc
-type: module
+repopath: /unmaintained/automoc
diff --git a/projects-invent/unmaintained/babe/metadata.yaml b/projects-invent/unmaintained/babe/metadata.yaml
index e68babd2..80243956 100644
--- a/projects-invent/unmaintained/babe/metadata.yaml
+++ b/projects-invent/unmaintained/babe/metadata.yaml
@@ -1,11 +1,7 @@
 description: Babe Media Player
 hasrepo: true
-icon: null
-members:
-- displayname: Camilo Higuita
-  username: camiloh
+identifier: babe
 name: Babe Media Player
 projectpath: unmaintained/babe
 repoactive: true
-repopath: babe
-type: project
+repopath: /unmaintained/babe
diff --git a/projects-invent/unmaintained/bangarang/metadata.yaml b/projects-invent/unmaintained/bangarang/metadata.yaml
index 59d641bd..416bf973 100644
--- a/projects-invent/unmaintained/bangarang/metadata.yaml
+++ b/projects-invent/unmaintained/bangarang/metadata.yaml
@@ -1,10 +1,10 @@
 description: "This is the Bangarang project development site. The Bangarang home page\
-  \ and blog can be found at https://bangarangkde.wordpress.com. \n\nLinks:\n* \"Mailing\
-  \ List\":https://mail.kde.org/mailman/listinfo/bangarang  \n* \"Bug tracker\":https://bugs.kde.org\
-  \ (look for product \"bangarang\")\n\n\nh2. Open Source\n\nBangarang is open source\
-  \ software licensed under GPLv3.\n\nh2. Release\n\nThe latest release is 2.1, released\
-  \ on Dec 6th, 2011.\n\nh2. Packaging\n\nPackagers interested in a simple source\
-  \ tarball for the latest release can find it \"here\":https://code.google.com/p/bangarangissuetracking/downloads/list.\
+  \ and blog can be found at https://bangarangkde.wordpress.com. \n\nLinks:\n* \"\
+  Mailing List\":https://mail.kde.org/mailman/listinfo/bangarang  \n* \"Bug tracker\"\
+  :https://bugs.kde.org (look for product \"bangarang\")\n\n\nh2. Open Source\n\n\
+  Bangarang is open source software licensed under GPLv3.\n\nh2. Release\n\nThe latest\
+  \ release is 2.1, released on Dec 6th, 2011.\n\nh2. Packaging\n\nPackagers interested\
+  \ in a simple source tarball for the latest release can find it \"here\":https://code.google.com/p/bangarangissuetracking/downloads/list.\
   \ An rss feed is provided there so you can stay up to date with the sources for\
   \ the latest release. Packagers interested in keeping up with development may choose\
   \ to use the main repository directly. Be sure to check git tag history (git tag\
@@ -50,18 +50,8 @@ description: "This is the Bangarang project development site. The Bangarang home
   \ to PUBLISH your review request.\n* Once you get a Ship It! you can commit your\
   \ changes to the master repo.\n</pre>"
 hasrepo: true
-icon: null
-members:
-- displayname: Eshton Robateau
-  username: erobateau
-- displayname: Andrew Lake
-  username: alake
-- displayname: Stefan Burnicki
-  username: burnicki
-- displayname: Elias Probst
-  username: eliasp
+identifier: bangarang
 name: Bangarang
 projectpath: playground/multimedia/bangarang
 repoactive: true
-repopath: bangarang
-type: project
+repopath: /unmaintained/bangarang
diff --git a/projects-invent/unmaintained/blogilo/metadata.yaml b/projects-invent/unmaintained/blogilo/metadata.yaml
index 4be2a252..a900e0b8 100644
--- a/projects-invent/unmaintained/blogilo/metadata.yaml
+++ b/projects-invent/unmaintained/blogilo/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application to create, edit and update your blog content.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: blogilo
 name: Blogilo
 projectpath: unmaintained/blogilo
 repoactive: true
-repopath: blogilo
-type: project
+repopath: /unmaintained/blogilo
diff --git a/projects-invent/unmaintained/bodega-client/metadata.yaml b/projects-invent/unmaintained/bodega-client/metadata.yaml
index ea4b68d1..72549f5d 100644
--- a/projects-invent/unmaintained/bodega-client/metadata.yaml
+++ b/projects-invent/unmaintained/bodega-client/metadata.yaml
@@ -1,15 +1,7 @@
 description: Library and client applications for the Make Play Live content store.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Marco Martin
-  username: mart
-- displayname: Zack Rusin
-  username: zack
+identifier: bodega-client
 name: Add ons installer
 projectpath: unmaintained/bodega-client
 repoactive: true
-repopath: bodega-client
-type: project
+repopath: /unmaintained/bodega-client
diff --git a/projects-invent/unmaintained/bodega-server/metadata.yaml b/projects-invent/unmaintained/bodega-server/metadata.yaml
index edc703e2..1f88a58c 100644
--- a/projects-invent/unmaintained/bodega-server/metadata.yaml
+++ b/projects-invent/unmaintained/bodega-server/metadata.yaml
@@ -1,15 +1,7 @@
 description: Server and content importers for the Bodega content system.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Zack Rusin
-  username: zack
-- displayname: Marco Martin
-  username: mart
+identifier: bodega-server
 name: Bodega Content Server
 projectpath: unmaintained/bodega-server
 repoactive: true
-repopath: bodega-server
-type: project
+repopath: /unmaintained/bodega-server
diff --git a/projects-invent/unmaintained/bodega-webapp-client/metadata.yaml b/projects-invent/unmaintained/bodega-webapp-client/metadata.yaml
index 64d5d094..c0fa97d9 100644
--- a/projects-invent/unmaintained/bodega-webapp-client/metadata.yaml
+++ b/projects-invent/unmaintained/bodega-webapp-client/metadata.yaml
@@ -1,15 +1,7 @@
 description: A web application client for the Bodega Content System
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Antonis Tsiapaliokas
-  username: tsiapaliokas
-- displayname: Giorgos Tsiapaliokas
-  username: tsiapaliwkas
+identifier: bodega-webapp-client
 name: Bodega Web Application Client
 projectpath: unmaintained/bodega-webapp-client
 repoactive: true
-repopath: bodega-webapp-client
-type: project
+repopath: /unmaintained/bodega-webapp-client
diff --git a/projects-invent/unmaintained/bodega-webapp-manager/metadata.yaml b/projects-invent/unmaintained/bodega-webapp-manager/metadata.yaml
index bcaadf91..0678698a 100644
--- a/projects-invent/unmaintained/bodega-webapp-manager/metadata.yaml
+++ b/projects-invent/unmaintained/bodega-webapp-manager/metadata.yaml
@@ -1,13 +1,7 @@
 description: Web application to manage an instance of Bodega Server
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Marco Martin
-  username: mart
+identifier: bodega-webapp-manager
 name: Manager interface for Bodega
 projectpath: unmaintained/bodega-webapp-manager
 repoactive: false
-repopath: bodega-webapp-manager
-type: project
+repopath: /unmaintained/bodega-webapp-manager
diff --git a/projects-invent/unmaintained/bookmanager/metadata.yaml b/projects-invent/unmaintained/bookmanager/metadata.yaml
index 6ec28669..6c639b1a 100644
--- a/projects-invent/unmaintained/bookmanager/metadata.yaml
+++ b/projects-invent/unmaintained/bookmanager/metadata.yaml
@@ -1,13 +1,7 @@
 description: A simple E-book manager and viewer.
 hasrepo: true
-icon: null
-members:
-- displayname: Brian Korbein
-  username: korbein
-- displayname: Riccardo Bellini
-  username: bellini
+identifier: bookmanager
 name: Book Manager
 projectpath: unmaintained/bookmanager
 repoactive: true
-repopath: bookmanager
-type: project
+repopath: /unmaintained/bookmanager
diff --git a/projects-invent/unmaintained/brooklyn/metadata.yaml b/projects-invent/unmaintained/brooklyn/metadata.yaml
index 28bee09c..02e80950 100644
--- a/projects-invent/unmaintained/brooklyn/metadata.yaml
+++ b/projects-invent/unmaintained/brooklyn/metadata.yaml
@@ -1,11 +1,8 @@
-description: Protocol independent software which forwards messages between various chat services.
+description: Protocol independent software which forwards messages between various
+  chat services.
 hasrepo: true
-icon: null
-members:
-- displayname: "Davide Riva"
-  username: davider
+identifier: brooklyn
 name: Brooklyn Chat Bridge
 projectpath: playground/utils/brookyln
 repoactive: true
-repopath: brooklyn
-type: project
+repopath: /unmaintained/brooklyn
diff --git a/projects-invent/unmaintained/brprint3d/metadata.yaml b/projects-invent/unmaintained/brprint3d/metadata.yaml
index 066e04c5..6cc389fd 100644
--- a/projects-invent/unmaintained/brprint3d/metadata.yaml
+++ b/projects-invent/unmaintained/brprint3d/metadata.yaml
@@ -9,14 +9,8 @@ description: 'h1. Printer Host Open Source to 3D Printing
 
   And today we are part of KDE as the first printer host within this community.'
 hasrepo: true
-icon: null
-members:
-- displayname: Ayrton  Cavalieri de Almeida
-  username: ayrtonc
-- displayname: Lays Rodrigues
-  username: laysrodrigues
+identifier: brprint3d
 name: Br-Print3D
 projectpath: unmaintained/brprint3d
 repoactive: false
-repopath: brprint3d
-type: project
+repopath: /unmaintained/brprint3d
diff --git a/projects-invent/unmaintained/cagibi/metadata.yaml b/projects-invent/unmaintained/cagibi/metadata.yaml
index 624a8a6a..93391407 100644
--- a/projects-invent/unmaintained/cagibi/metadata.yaml
+++ b/projects-invent/unmaintained/cagibi/metadata.yaml
@@ -1,12 +1,8 @@
 description: Experimental cache/proxy system for SSDP (Simple Service Discovery Protocol,
   used as service/device discovery system in UPnP).
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
+identifier: cagibi
 name: Cagibi
 projectpath: unmaintained/cagibi
 repoactive: true
-repopath: cagibi
-type: module
+repopath: /unmaintained/cagibi
diff --git a/projects-invent/unmaintained/cirkuit/metadata.yaml b/projects-invent/unmaintained/cirkuit/metadata.yaml
index 174b2b66..5ee2fef7 100644
--- a/projects-invent/unmaintained/cirkuit/metadata.yaml
+++ b/projects-invent/unmaintained/cirkuit/metadata.yaml
@@ -5,12 +5,8 @@ description: 'KDE interface for LaTeX graphic tools (such as TikZ, Gnuplot, Circ
   Please use "bugs.kde.org":https://bugs.kde.org/wizard.cgi?package=cirkuit&kbugreport=1
   to file bug reports and wishes.'
 hasrepo: true
-icon: app-cirkuit
-members:
-- displayname: Matteo Agostinelli
-  username: agostinelli
+identifier: cirkuit
 name: Cirkuit
 projectpath: unmaintained/cirkuit
 repoactive: true
-repopath: cirkuit
-type: project
+repopath: /unmaintained/cirkuit
diff --git a/projects-invent/unmaintained/cmetronome/metadata.yaml b/projects-invent/unmaintained/cmetronome/metadata.yaml
index 528d869a..e9bd8fcd 100644
--- a/projects-invent/unmaintained/cmetronome/metadata.yaml
+++ b/projects-invent/unmaintained/cmetronome/metadata.yaml
@@ -1,11 +1,7 @@
 description: Command line metronome
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: cmetronome
 name: cmetronome
 projectpath: playground/utils/cmetronome
 repoactive: true
-repopath: cmetronome
-type: project
+repopath: /unmaintained/cmetronome
diff --git a/projects-invent/unmaintained/cocoon/metadata.yaml b/projects-invent/unmaintained/cocoon/metadata.yaml
index afce0a18..fcd05238 100644
--- a/projects-invent/unmaintained/cocoon/metadata.yaml
+++ b/projects-invent/unmaintained/cocoon/metadata.yaml
@@ -1,11 +1,7 @@
 description: A GUI for Git.
 hasrepo: true
-icon: null
-members:
-- displayname: Riyad Preukschas
-  username: rpreukschas
+identifier: cocoon
 name: Cocoon
 projectpath: playground/sdk/cocoon
 repoactive: true
-repopath: cocoon
-type: project
+repopath: /unmaintained/cocoon
diff --git a/projects-invent/unmaintained/colibri/metadata.yaml b/projects-invent/unmaintained/colibri/metadata.yaml
index 40d93a5a..8e675994 100644
--- a/projects-invent/unmaintained/colibri/metadata.yaml
+++ b/projects-invent/unmaintained/colibri/metadata.yaml
@@ -1,11 +1,7 @@
 description: Alternative notifications for KDE Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
+identifier: colibri
 name: Colibri
 projectpath: unmaintained/colibri
 repoactive: true
-repopath: colibri
-type: project
+repopath: /unmaintained/colibri
diff --git a/projects-invent/unmaintained/conquirere/metadata.yaml b/projects-invent/unmaintained/conquirere/metadata.yaml
index e1d49473..547131c6 100644
--- a/projects-invent/unmaintained/conquirere/metadata.yaml
+++ b/projects-invent/unmaintained/conquirere/metadata.yaml
@@ -13,12 +13,8 @@ description: 'h1. Conquirere is a Nepomuk powered research tool.
   author, in which series or collection the publication is in and references to specific
   parts of the publications can be added to the data and searched via Nepomuk.'
 hasrepo: true
-icon: null
-members:
-- displayname: "J\xF6rg Ehrichs"
-  username: jehrichs
+identifier: conquirere
 name: Conquirere
 projectpath: unmaintained/conquirere
 repoactive: true
-repopath: conquirere
-type: project
+repopath: /unmaintained/conquirere
diff --git a/projects-invent/unmaintained/contour/metadata.yaml b/projects-invent/unmaintained/contour/metadata.yaml
index 41deb38e..9bea8402 100644
--- a/projects-invent/unmaintained/contour/metadata.yaml
+++ b/projects-invent/unmaintained/contour/metadata.yaml
@@ -1,13 +1,7 @@
 description: A new and innovative usage paradigm for mobile devices
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: contour
 name: Contour
 projectpath: unmaintained/contour
 repoactive: false
-repopath: contour
-type: project
+repopath: /unmaintained/contour
diff --git a/projects-invent/unmaintained/cutepaste/metadata.yaml b/projects-invent/unmaintained/cutepaste/metadata.yaml
index f580e934..7ddef975 100644
--- a/projects-invent/unmaintained/cutepaste/metadata.yaml
+++ b/projects-invent/unmaintained/cutepaste/metadata.yaml
@@ -1,11 +1,7 @@
 description: Client application for paste.kde.org written in Qt
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: cutepaste
 name: Paste application for KDE
 projectpath: unmaintained/cutepaste
 repoactive: true
-repopath: cutepaste
-type: project
+repopath: /unmaintained/cutepaste
diff --git a/projects-invent/unmaintained/declarative-plasmoids/metadata.yaml b/projects-invent/unmaintained/declarative-plasmoids/metadata.yaml
index af9898ed..04a2d10d 100644
--- a/projects-invent/unmaintained/declarative-plasmoids/metadata.yaml
+++ b/projects-invent/unmaintained/declarative-plasmoids/metadata.yaml
@@ -1,14 +1,8 @@
 description: a repository for developing declarative plasmoids for the plasma desktop
   and mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: declarative-plasmoids
 name: Declarative plasmoids for plasma
 projectpath: unmaintained/declarative-plasmoids
 repoactive: true
-repopath: declarative-plasmoids
-type: project
+repopath: /unmaintained/declarative-plasmoids
diff --git a/projects-invent/unmaintained/dekorator/metadata.yaml b/projects-invent/unmaintained/dekorator/metadata.yaml
index c8b6b75e..46665933 100644
--- a/projects-invent/unmaintained/dekorator/metadata.yaml
+++ b/projects-invent/unmaintained/dekorator/metadata.yaml
@@ -1,11 +1,7 @@
 description: KWin plugin to support pixmap decorations in KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Christoph Feck
-  username: cfeck
+identifier: dekorator
 name: deKorator
 projectpath: unmaintained/dekorator
 repoactive: true
-repopath: dekorator
-type: project
+repopath: /unmaintained/dekorator
diff --git a/projects-invent/unmaintained/digikam-software-compilation/metadata.yaml b/projects-invent/unmaintained/digikam-software-compilation/metadata.yaml
index 72334f3a..21056bfa 100644
--- a/projects-invent/unmaintained/digikam-software-compilation/metadata.yaml
+++ b/projects-invent/unmaintained/digikam-software-compilation/metadata.yaml
@@ -13,16 +13,8 @@ description: "!https://projects.kde.org/projects/extragear/graphics/digikam/repo
   \ are also included...\n\n!https://farm6.static.flickr.com/5055/5508779067_11c67b8a40_b.jpg!\n\
   \n!https://farm6.static.flickr.com/5053/5505496515_7d6f4d3e3c_b.jpg!"
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Andi Clemens
-  username: aclemens
-- displayname: Gilles Caulier
-  username: cgilles
+identifier: digikam-software-compilation
 name: digiKam Software Compilation
 projectpath: unmaintained/digikam-software-compilation
 repoactive: true
-repopath: digikam-software-compilation
-type: project
+repopath: /unmaintained/digikam-software-compilation
diff --git a/projects-invent/unmaintained/ebookreader/metadata.yaml b/projects-invent/unmaintained/ebookreader/metadata.yaml
index 65cc1833..8c261f48 100644
--- a/projects-invent/unmaintained/ebookreader/metadata.yaml
+++ b/projects-invent/unmaintained/ebookreader/metadata.yaml
@@ -2,12 +2,8 @@ description: This project aims at providing a cross-platform e-book reader adapt
   for touch screens by using Qt/QML for its frontend and okular core library for its
   backend
 hasrepo: true
-icon: null
-members:
-- displayname: Bogdan Cristea
-  username: cristea
+identifier: ebookreader
 name: E-Book Reader with Touch Screen Support
 projectpath: unmaintained/ebookreader
 repoactive: true
-repopath: ebookreader
-type: project
+repopath: /unmaintained/ebookreader
diff --git a/projects-invent/unmaintained/emerge-history/metadata.yaml b/projects-invent/unmaintained/emerge-history/metadata.yaml
index 9ffdeab2..9ba48b28 100644
--- a/projects-invent/unmaintained/emerge-history/metadata.yaml
+++ b/projects-invent/unmaintained/emerge-history/metadata.yaml
@@ -1,17 +1,7 @@
 description: complete svn history of emerge
 hasrepo: true
-icon: null
-members:
-- displayname: Andre Heinecke
-  username: aheinecke
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Patrick Spendrin
-  username: sengels
+identifier: emerge-history
 name: Emerge-History
 projectpath: kdesupport/emerge-history
 repoactive: true
-repopath: emerge-history
-type: project
+repopath: /unmaintained/emerge-history
diff --git a/projects-invent/unmaintained/emerge/metadata.yaml b/projects-invent/unmaintained/emerge/metadata.yaml
index a332be61..176c0bb8 100644
--- a/projects-invent/unmaintained/emerge/metadata.yaml
+++ b/projects-invent/unmaintained/emerge/metadata.yaml
@@ -1,17 +1,7 @@
 description: Stub - this project has been renamed
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
-- displayname: Andre Heinecke
-  username: aheinecke
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: emerge
 name: emerge
 projectpath: unmaintained/emerge
 repoactive: true
-repopath: emerge
-type: project
+repopath: /unmaintained/emerge
diff --git a/projects-invent/unmaintained/eyeos-style/metadata.yaml b/projects-invent/unmaintained/eyeos-style/metadata.yaml
index c8687d7c..b4b2f087 100644
--- a/projects-invent/unmaintained/eyeos-style/metadata.yaml
+++ b/projects-invent/unmaintained/eyeos-style/metadata.yaml
@@ -1,13 +1,7 @@
 description: KStyle for EyeOS
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: Kevin Ottens
-  username: ervin
+identifier: eyeos-style
 name: EyeOS Style
 projectpath: playground/base/eyeos-style
 repoactive: false
-repopath: eyeos-style
-type: project
+repopath: /unmaintained/eyeos-style
diff --git a/projects-invent/unmaintained/flickr-runner/metadata.yaml b/projects-invent/unmaintained/flickr-runner/metadata.yaml
index fc96231a..a7ba2ef7 100644
--- a/projects-invent/unmaintained/flickr-runner/metadata.yaml
+++ b/projects-invent/unmaintained/flickr-runner/metadata.yaml
@@ -1,11 +1,7 @@
 description: Flickr
 hasrepo: true
-icon: null
-members:
-- displayname: Shaun Reich
-  username: sreich
+identifier: flickr-runner
 name: Flickr Runner Plugin
 projectpath: unmaintained/flickr-runner
 repoactive: true
-repopath: flickr-runner
-type: project
+repopath: /unmaintained/flickr-runner
diff --git a/projects-invent/unmaintained/gestures-kde/metadata.yaml b/projects-invent/unmaintained/gestures-kde/metadata.yaml
index 24a1764b..9a452692 100644
--- a/projects-invent/unmaintained/gestures-kde/metadata.yaml
+++ b/projects-invent/unmaintained/gestures-kde/metadata.yaml
@@ -1,11 +1,7 @@
 description: Handles gestures of multi touch input devices
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: gestures-kde
 name: Gestures handler by KDE
 projectpath: unmaintained/gestures-kde
 repoactive: true
-repopath: gestures-kde
-type: project
+repopath: /unmaintained/gestures-kde
diff --git a/projects-invent/unmaintained/ginkgo/metadata.yaml b/projects-invent/unmaintained/ginkgo/metadata.yaml
index 643632fe..9b6c07e1 100644
--- a/projects-invent/unmaintained/ginkgo/metadata.yaml
+++ b/projects-invent/unmaintained/ginkgo/metadata.yaml
@@ -1,12 +1,8 @@
 description: Ginkgo is a generic resource navigator and editor for Nepomuk, the KDE
   semantic toolkit.
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: ginkgo
 name: Ginkgo
 projectpath: playground/utils/ginkgo
 repoactive: true
-repopath: ginkgo
-type: project
+repopath: /unmaintained/ginkgo
diff --git a/projects-invent/unmaintained/gluon-blocks/metadata.yaml b/projects-invent/unmaintained/gluon-blocks/metadata.yaml
index 6d4b04f9..7456bf3a 100644
--- a/projects-invent/unmaintained/gluon-blocks/metadata.yaml
+++ b/projects-invent/unmaintained/gluon-blocks/metadata.yaml
@@ -1,13 +1,7 @@
 description: The first game for KDE/Gluon
 hasrepo: true
-icon: null
-members:
-- displayname: Keith Rusler
-  username: karusler
-- displayname: Andreas Marschke
-  username: marschke
+identifier: gluon-blocks
 name: Blocks
 projectpath: unmaintained/gluon-blocks
 repoactive: true
-repopath: gluon-blocks
-type: project
+repopath: /unmaintained/gluon-blocks
diff --git a/projects-invent/unmaintained/gluon/metadata.yaml b/projects-invent/unmaintained/gluon/metadata.yaml
index 2d5f566c..17325633 100644
--- a/projects-invent/unmaintained/gluon/metadata.yaml
+++ b/projects-invent/unmaintained/gluon/metadata.yaml
@@ -1,21 +1,7 @@
 description: An open framework for developing, playing and distributing games.
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
-- displayname: Arjen Hiemstra
-  username: ahiemstra
-- displayname: Andreas Marschke
-  username: marschke
-- displayname: Dan Leinir Turthra Jensen
-  username: leinir
-- displayname: Shantanu Tushar
-  username: shantanu
-- displayname: Claudio Desideri
-  username: desideri
+identifier: gluon
 name: Gluon
 projectpath: unmaintained/gluon
 repoactive: true
-repopath: gluon
-type: project
+repopath: /unmaintained/gluon
diff --git a/projects-invent/unmaintained/gpgmepp/metadata.yaml b/projects-invent/unmaintained/gpgmepp/metadata.yaml
index 3702a7e5..e95a736f 100644
--- a/projects-invent/unmaintained/gpgmepp/metadata.yaml
+++ b/projects-invent/unmaintained/gpgmepp/metadata.yaml
@@ -1,13 +1,7 @@
-description: 'GPGME++ Library'
+description: GPGME++ Library
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: gpgmepp
 name: gpgmepp
 projectpath: unmaintained/gpgmepp
 repoactive: true
-repopath: gpgmepp
-type: project
+repopath: /unmaintained/gpgmepp
diff --git a/projects-invent/unmaintained/homerun/metadata.yaml b/projects-invent/unmaintained/homerun/metadata.yaml
index 75d24563..02787505 100644
--- a/projects-invent/unmaintained/homerun/metadata.yaml
+++ b/projects-invent/unmaintained/homerun/metadata.yaml
@@ -1,15 +1,7 @@
 description: An application launcher for KDE Plasma desktop
 hasrepo: true
-icon: null
-members:
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
-- displayname: Shaun Reich
-  username: sreich
-- displayname: Eike Hein
-  username: hein
+identifier: homerun
 name: KDE Homerun
 projectpath: unmaintained/homerun
 repoactive: true
-repopath: homerun
-type: project
+repopath: /unmaintained/homerun
diff --git a/projects-invent/unmaintained/jovie/metadata.yaml b/projects-invent/unmaintained/jovie/metadata.yaml
index a2a71d74..19561810 100644
--- a/projects-invent/unmaintained/jovie/metadata.yaml
+++ b/projects-invent/unmaintained/jovie/metadata.yaml
@@ -1,11 +1,7 @@
 description: Jovie is the KDE text to speech system application
 hasrepo: true
-icon: preferences-desktop-text-to-speech
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: jovie
 name: Jovie
 projectpath: unmaintained/jovie
 repoactive: true
-repopath: jovie
-type: project
+repopath: /unmaintained/jovie
diff --git a/projects-invent/unmaintained/jsmoke/metadata.yaml b/projects-invent/unmaintained/jsmoke/metadata.yaml
index ed923edb..35648f81 100644
--- a/projects-invent/unmaintained/jsmoke/metadata.yaml
+++ b/projects-invent/unmaintained/jsmoke/metadata.yaml
@@ -1,11 +1,7 @@
 description: Smoke bindings for QtScript.
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
+identifier: jsmoke
 name: JSmoke
 projectpath: unmaintained/jsmoke
 repoactive: true
-repopath: jsmoke
-type: project
+repopath: /unmaintained/jsmoke
diff --git a/projects-invent/unmaintained/jungle/metadata.yaml b/projects-invent/unmaintained/jungle/metadata.yaml
index 0ec497fe..b6fb29bb 100644
--- a/projects-invent/unmaintained/jungle/metadata.yaml
+++ b/projects-invent/unmaintained/jungle/metadata.yaml
@@ -1,14 +1,8 @@
 description: Jungle is an absolutely awesome video player for managing your videos
   (movies, tvshows, etc)
 hasrepo: true
-icon: null
-members:
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: jungle
 name: Jungle
 projectpath: playground/multimedia/jungle
 repoactive: true
-repopath: jungle
-type: project
+repopath: /unmaintained/jungle
diff --git a/projects-invent/unmaintained/kaccessible/metadata.yaml b/projects-invent/unmaintained/kaccessible/metadata.yaml
index f3ed1674..47e56365 100644
--- a/projects-invent/unmaintained/kaccessible/metadata.yaml
+++ b/projects-invent/unmaintained/kaccessible/metadata.yaml
@@ -1,14 +1,8 @@
 description: kaccessible implements a QAccessibleBridgePlugin to provide accessibility
   services like focus tracking and a screenreader.
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Sebastian Sauer
-  username: sebsauer
+identifier: kaccessible
 name: kaccessible
 projectpath: unmaintained/kaccessible
 repoactive: true
-repopath: kaccessible
-type: project
+repopath: /unmaintained/kaccessible
diff --git a/projects-invent/unmaintained/kanalytics/metadata.yaml b/projects-invent/unmaintained/kanalytics/metadata.yaml
index 76e0a83f..68c382ad 100644
--- a/projects-invent/unmaintained/kanalytics/metadata.yaml
+++ b/projects-invent/unmaintained/kanalytics/metadata.yaml
@@ -1,12 +1,8 @@
 description: KAnalytics provides a library and a set of tools to analyze system information
   and upload it to KDE servers.
 hasrepo: true
-icon: null
-members:
-- displayname: "Luk\xE1\u0161 Tinkl"
-  username: lukas
+identifier: kanalytics
 name: KAnalytics system info library
 projectpath: playground/utils/kanalytics
 repoactive: true
-repopath: kanalytics
-type: project
+repopath: /unmaintained/kanalytics
diff --git a/projects-invent/unmaintained/kannasaver/metadata.yaml b/projects-invent/unmaintained/kannasaver/metadata.yaml
index 9003f70b..1e18f863 100644
--- a/projects-invent/unmaintained/kannasaver/metadata.yaml
+++ b/projects-invent/unmaintained/kannasaver/metadata.yaml
@@ -1,11 +1,7 @@
 description: A Screen Saver for Plasma showing Japanese Characters
 hasrepo: true
-icon: null
-members:
-- displayname: Frederik Schwarzer
-  username: schwarzer
+identifier: kannasaver
 name: Kannasaver
 projectpath: unmaintained/kannasaver
 repoactive: true
-repopath: kannasaver
-type: project
+repopath: /unmaintained/kannasaver
diff --git a/projects-invent/unmaintained/kapa/metadata.yaml b/projects-invent/unmaintained/kapa/metadata.yaml
index 3b507ff7..185e8223 100644
--- a/projects-invent/unmaintained/kapa/metadata.yaml
+++ b/projects-invent/unmaintained/kapa/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Advanced Personal Assistant
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: kapa
 name: Kapa
 projectpath: playground/base/kapa
 repoactive: false
-repopath: kapa
-type: project
+repopath: /unmaintained/kapa
diff --git a/projects-invent/unmaintained/kaudiocreator/metadata.yaml b/projects-invent/unmaintained/kaudiocreator/metadata.yaml
index 0a21c792..290fba8b 100644
--- a/projects-invent/unmaintained/kaudiocreator/metadata.yaml
+++ b/projects-invent/unmaintained/kaudiocreator/metadata.yaml
@@ -1,14 +1,8 @@
 description: KAudioCreator is a program for ripping and encoding Audio-CDs, encoding
   files from disk.
 hasrepo: true
-icon: null
-members:
-- displayname: Gerd Fleischer
-  username: geflei
-- displayname: "Nicol\xE1s Alvarez"
-  username: nalvarez
+identifier: kaudiocreator
 name: KAudioCreator CD Ripper
 projectpath: unmaintained/kaudiocreator
 repoactive: true
-repopath: kaudiocreator
-type: project
+repopath: /unmaintained/kaudiocreator
diff --git a/projects-invent/unmaintained/kcm-userconfig/metadata.yaml b/projects-invent/unmaintained/kcm-userconfig/metadata.yaml
index ebca1218..9e0f37f7 100644
--- a/projects-invent/unmaintained/kcm-userconfig/metadata.yaml
+++ b/projects-invent/unmaintained/kcm-userconfig/metadata.yaml
@@ -1,13 +1,7 @@
 description: A System Settings module for managing users and groups on your system.
 hasrepo: true
-icon: null
-members:
-- displayname: Romain Perier
-  username: perier
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: kcm-userconfig
 name: kcm-userconfig
 projectpath: playground/sysadmin/kcm-userconfig
 repoactive: false
-repopath: kcm-userconfig
-type: project
+repopath: /unmaintained/kcm-userconfig
diff --git a/projects-invent/unmaintained/kcmgrub2/metadata.yaml b/projects-invent/unmaintained/kcmgrub2/metadata.yaml
index 01ae50b8..2a7cf711 100644
--- a/projects-invent/unmaintained/kcmgrub2/metadata.yaml
+++ b/projects-invent/unmaintained/kcmgrub2/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kcm module that manages the most common settings of grub2
 hasrepo: true
-icon: null
-members:
-- displayname: Alberto Mattea
-  username: mattea
+identifier: kcmgrub2
 name: Grub2 configuration tool
 projectpath: playground/sysadmin/kcmgrub2
 repoactive: true
-repopath: kcmgrub2
-type: project
+repopath: /unmaintained/kcmgrub2
diff --git a/projects-invent/unmaintained/kcoloredit/metadata.yaml b/projects-invent/unmaintained/kcoloredit/metadata.yaml
index 6667863d..4b211a6d 100644
--- a/projects-invent/unmaintained/kcoloredit/metadata.yaml
+++ b/projects-invent/unmaintained/kcoloredit/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Color Palette Editor
 hasrepo: true
-icon: null
-members:
-- displayname: "Percy Camilo Trive\xF1o Aucahuasi"
-  username: aucahuasi
+identifier: kcoloredit
 name: KColorEdit
 projectpath: unmaintained/kcoloredit
 repoactive: true
-repopath: kcoloredit
-type: project
+repopath: /unmaintained/kcoloredit
diff --git a/projects-invent/unmaintained/kcwsh/metadata.yaml b/projects-invent/unmaintained/kcwsh/metadata.yaml
index 35bb1ffd..a5400408 100644
--- a/projects-invent/unmaintained/kcwsh/metadata.yaml
+++ b/projects-invent/unmaintained/kcwsh/metadata.yaml
@@ -1,14 +1,8 @@
 description: This project provides a terminal wrapper, both abstracted and using a
   Qt based sample backend. It is used to make a windows port of konsole possible.
 hasrepo: true
-icon: null
-members:
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Patrick Spendrin
-  username: sengels
+identifier: kcwsh
 name: KCW Shell
 projectpath: playground/base/kcwsh
 repoactive: false
-repopath: kcwsh
-type: project
+repopath: /unmaintained/kcwsh
diff --git a/projects-invent/unmaintained/kde-accounts/metadata.yaml b/projects-invent/unmaintained/kde-accounts/metadata.yaml
index 23aab7ae..bf861b71 100644
--- a/projects-invent/unmaintained/kde-accounts/metadata.yaml
+++ b/projects-invent/unmaintained/kde-accounts/metadata.yaml
@@ -1,9 +1,7 @@
-description: 'Unified Accounts Project'
+description: Unified Accounts Project
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Unified Accounts
 projectpath: playground/base/kde-accounts
 repoactive: false
-repopath: null
-type: project
+repopath: /unmaintained/kde-accounts
diff --git a/projects-invent/unmaintained/kde-artwork-active/metadata.yaml b/projects-invent/unmaintained/kde-artwork-active/metadata.yaml
index 0a72c7e6..5b6689ef 100644
--- a/projects-invent/unmaintained/kde-artwork-active/metadata.yaml
+++ b/projects-invent/unmaintained/kde-artwork-active/metadata.yaml
@@ -1,13 +1,7 @@
 description: Themes, wallpapers and splash screens for Plasma Active
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Marco Martin
-  username: mart
+identifier: kde-artwork-active
 name: Artwork for Plasma active
 projectpath: unmaintained/kde-artwork-active
 repoactive: true
-repopath: kde-artwork-active
-type: project
+repopath: /unmaintained/kde-artwork-active
diff --git a/projects-invent/unmaintained/kde-baseapps/metadata.yaml b/projects-invent/unmaintained/kde-baseapps/metadata.yaml
index 2016276a..19bd1047 100644
--- a/projects-invent/unmaintained/kde-baseapps/metadata.yaml
+++ b/projects-invent/unmaintained/kde-baseapps/metadata.yaml
@@ -1,15 +1,7 @@
 description: Collection of applications used for file and Internet browsing.
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: David Faure
-  username: dfaure
+identifier: kde-baseapps
 name: KDE Base Apps
 projectpath: unmaintained/kde-baseapps
 repoactive: true
-repopath: kde-baseapps
-type: project
+repopath: /unmaintained/kde-baseapps
diff --git a/projects-invent/unmaintained/kde-br-promo/metadata.yaml b/projects-invent/unmaintained/kde-br-promo/metadata.yaml
index bfee92cd..6d478004 100644
--- a/projects-invent/unmaintained/kde-br-promo/metadata.yaml
+++ b/projects-invent/unmaintained/kde-br-promo/metadata.yaml
@@ -1,14 +1,8 @@
 description: General repository for KDE Brazil promo material (artwork, templates,
   talks, etc)
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Andrade
-  username: sandroandrade
-- displayname: Tomaz  Canabrava
-  username: tcanabrava
+identifier: others-kde-br-promo
 name: KDE Brazil Promo Material Organization
 projectpath: others/kde-br-promo
 repoactive: false
-repopath: others/kde-br-promo
-type: module
+repopath: /unmaintained/kde-br-promo
diff --git a/projects-invent/unmaintained/kde-now/metadata.yaml b/projects-invent/unmaintained/kde-now/metadata.yaml
index 375c3ef1..16570747 100644
--- a/projects-invent/unmaintained/kde-now/metadata.yaml
+++ b/projects-invent/unmaintained/kde-now/metadata.yaml
@@ -1,11 +1,7 @@
 description: Google Now alternative for the Plasma Desktop
 hasrepo: true
-icon: lancelot
-members:
-- displayname: "Aditya Dev Sharma"
-  username: adityadevsharma
+identifier: kde-now
 name: KDE Now
 projectpath: playground/base/kde-now
 repoactive: true
-repopath: kde-now
-type: project
+repopath: /unmaintained/kde-now
diff --git a/projects-invent/unmaintained/kde-promo/metadata.yaml b/projects-invent/unmaintained/kde-promo/metadata.yaml
index 7a82d0f5..d7454eca 100644
--- a/projects-invent/unmaintained/kde-promo/metadata.yaml
+++ b/projects-invent/unmaintained/kde-promo/metadata.yaml
@@ -1,11 +1,7 @@
 description: This is an easy method for organizing KDE Promo materials.
 hasrepo: true
-icon: null
-members:
-- displayname: Heath Matlock
-  username: matlock
+identifier: others-kde-promo
 name: KDE Promo Material Organization
 projectpath: others/kde-promo
 repoactive: true
-repopath: others/kde-promo
-type: module
+repopath: /unmaintained/kde-promo
diff --git a/projects-invent/unmaintained/kde-runtime/metadata.yaml b/projects-invent/unmaintained/kde-runtime/metadata.yaml
index d8d5fbbc..d9019518 100644
--- a/projects-invent/unmaintained/kde-runtime/metadata.yaml
+++ b/projects-invent/unmaintained/kde-runtime/metadata.yaml
@@ -1,19 +1,7 @@
 description: Plugins and applications necessary for the running of KDE applications.
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Artur Duque de Souza
-  username: asouza
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: kde-runtime
 name: KDE Runtime
 projectpath: unmaintained/kde-runtime
 repoactive: true
-repopath: kde-runtime
-type: module
+repopath: /unmaintained/kde-runtime
diff --git a/projects-invent/unmaintained/kde-workspace/metadata.yaml b/projects-invent/unmaintained/kde-workspace/metadata.yaml
index 010ab1e4..33b6bfe1 100644
--- a/projects-invent/unmaintained/kde-workspace/metadata.yaml
+++ b/projects-invent/unmaintained/kde-workspace/metadata.yaml
@@ -1,21 +1,7 @@
 description: Provides the interface and basic tools for the KDE workspace.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Marco Martin
-  username: mart
-- displayname: Dirk Mueller
-  username: mueller
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Artur Duque de Souza
-  username: asouza
+identifier: kde-workspace
 name: KDE Workspace
 projectpath: kde/kde-workspace
 repoactive: true
-repopath: kde-workspace
-type: module
+repopath: /unmaintained/kde-workspace
diff --git a/projects-invent/unmaintained/kdeadmin-strigi-analyzers/metadata.yaml b/projects-invent/unmaintained/kdeadmin-strigi-analyzers/metadata.yaml
index 3754668b..517e7378 100644
--- a/projects-invent/unmaintained/kdeadmin-strigi-analyzers/metadata.yaml
+++ b/projects-invent/unmaintained/kdeadmin-strigi-analyzers/metadata.yaml
@@ -1,11 +1,7 @@
 description: Strigi analyzer for rpm files
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kdeadmin-strigi-analyzers
 name: KDEAdmin Strigi Analyzers
 projectpath: unmaintained/kdeadmin-strigi-analyzers
 repoactive: true
-repopath: kdeadmin-strigi-analyzers
-type: project
+repopath: /unmaintained/kdeadmin-strigi-analyzers
diff --git a/projects-invent/unmaintained/kdeexamples/metadata.yaml b/projects-invent/unmaintained/kdeexamples/metadata.yaml
index bd81493e..44c0c172 100644
--- a/projects-invent/unmaintained/kdeexamples/metadata.yaml
+++ b/projects-invent/unmaintained/kdeexamples/metadata.yaml
@@ -1,12 +1,8 @@
 description: A collection of coding examples that provide practical demonstrations
   of the usage of KDE libraries and app development infrastructure.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: kdeexamples
 name: KDE Examples
 projectpath: unmaintained/kdeexamples
 repoactive: true
-repopath: kdeexamples
-type: module
+repopath: /unmaintained/kdeexamples
diff --git a/projects-invent/unmaintained/kdegraphics-strigi-analyzer/metadata.yaml b/projects-invent/unmaintained/kdegraphics-strigi-analyzer/metadata.yaml
index c4f03b51..4d5402fa 100644
--- a/projects-invent/unmaintained/kdegraphics-strigi-analyzer/metadata.yaml
+++ b/projects-invent/unmaintained/kdegraphics-strigi-analyzer/metadata.yaml
@@ -1,13 +1,7 @@
 description: Strigi analyzers for various graphics file formats
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Jos van den Oever
-  username: vandenoever
+identifier: kdegraphics-strigi-analyzer
 name: Strigi Analyzer
 projectpath: unmaintained/kdegraphics-strigi-analyzer
 repoactive: true
-repopath: kdegraphics-strigi-analyzer
-type: project
+repopath: /unmaintained/kdegraphics-strigi-analyzer
diff --git a/projects-invent/unmaintained/kdelibs/metadata.yaml b/projects-invent/unmaintained/kdelibs/metadata.yaml
index fd280b3d..b97241cc 100644
--- a/projects-invent/unmaintained/kdelibs/metadata.yaml
+++ b/projects-invent/unmaintained/kdelibs/metadata.yaml
@@ -1,17 +1,7 @@
 description: The KDE Library
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: kdelibs
 name: KDE Libraries
 projectpath: unmaintained/kdelibs
 repoactive: true
-repopath: kdelibs
-type: module
+repopath: /unmaintained/kdelibs
diff --git a/projects-invent/unmaintained/kdenetwork-strigi-analyzers/metadata.yaml b/projects-invent/unmaintained/kdenetwork-strigi-analyzers/metadata.yaml
index 3070ae78..0c8cfa82 100644
--- a/projects-invent/unmaintained/kdenetwork-strigi-analyzers/metadata.yaml
+++ b/projects-invent/unmaintained/kdenetwork-strigi-analyzers/metadata.yaml
@@ -1,15 +1,7 @@
 description: Analyzer plugins for Strigi
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Michael Pyne
-  username: mpyne
+identifier: kdenetwork-strigi-analyzers
 name: KDE Network Strigi Analyzers
 projectpath: unmaintained/kdenetwork-strigi-analyzers
 repoactive: true
-repopath: kdenetwork-strigi-analyzers
-type: project
+repopath: /unmaintained/kdenetwork-strigi-analyzers
diff --git a/projects-invent/unmaintained/kdepim/metadata.yaml b/projects-invent/unmaintained/kdepim/metadata.yaml
index 42363cb8..b66bcea8 100644
--- a/projects-invent/unmaintained/kdepim/metadata.yaml
+++ b/projects-invent/unmaintained/kdepim/metadata.yaml
@@ -36,20 +36,8 @@ description: 'h1. KDE''s Personal Information Management suite
 
   * Apidox - https://api.kde.org/4.x-api/kdepim-apidocs'
 hasrepo: true
-icon: kontact
-members:
-- displayname: Torgny Nyblom
-  username: tnyblom
-- displayname: Allen Winter
-  username: winterz
-- displayname: Stephen Kelly
-  username: skelly
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: "Sandro Knau\xDF"
-  username: knauss
+identifier: kdepim
 name: KDE Pim
 projectpath: unmaintained/kdepim
 repoactive: true
-repopath: kdepim
-type: project
+repopath: /unmaintained/kdepim
diff --git a/projects-invent/unmaintained/kdepimlibs/metadata.yaml b/projects-invent/unmaintained/kdepimlibs/metadata.yaml
index 1fa00ab4..f1c352be 100644
--- a/projects-invent/unmaintained/kdepimlibs/metadata.yaml
+++ b/projects-invent/unmaintained/kdepimlibs/metadata.yaml
@@ -57,18 +57,8 @@ description: 'h1. KDE''s Personal Information Management Libraries
 
   * Apidox - https://api.kde.org/4.x-api/kdepimlibs-apidocs'
 hasrepo: true
-icon: null
-members:
-- displayname: "Dan Vr\xE1til"
-  username: dvratil
-- displayname: Stephen Kelly
-  username: skelly
-- displayname: Torgny Nyblom
-  username: tnyblom
-- displayname: Allen Winter
-  username: winterz
+identifier: kdepimlibs
 name: KDE Pim Libraries
 projectpath: unmaintained/kdepimlibs
 repoactive: true
-repopath: kdepimlibs
-type: project
+repopath: /unmaintained/kdepimlibs
diff --git a/projects-invent/unmaintained/kdesdk-strigi-analyzers/metadata.yaml b/projects-invent/unmaintained/kdesdk-strigi-analyzers/metadata.yaml
index 78695f07..97d40048 100644
--- a/projects-invent/unmaintained/kdesdk-strigi-analyzers/metadata.yaml
+++ b/projects-invent/unmaintained/kdesdk-strigi-analyzers/metadata.yaml
@@ -1,11 +1,7 @@
 description: Analyzer plugins for strigi
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kdesdk-strigi-analyzers
 name: Analyzers for strigi
 projectpath: unmaintained/kdesdk-strigi-analyzers
 repoactive: true
-repopath: kdesdk-strigi-analyzers
-type: project
+repopath: /unmaintained/kdesdk-strigi-analyzers
diff --git a/projects-invent/unmaintained/kdesudo/metadata.yaml b/projects-invent/unmaintained/kdesudo/metadata.yaml
index e6c07d1b..9f1bee4b 100644
--- a/projects-invent/unmaintained/kdesudo/metadata.yaml
+++ b/projects-invent/unmaintained/kdesudo/metadata.yaml
@@ -1,11 +1,7 @@
 description: Sudo GUI
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: kdesudo
 name: KDE Sudo
 projectpath: unmaintained/kdesudo
 repoactive: true
-repopath: kdesudo
-type: project
+repopath: /unmaintained/kdesudo
diff --git a/projects-invent/unmaintained/kdev-cargo/metadata.yaml b/projects-invent/unmaintained/kdev-cargo/metadata.yaml
index 44abe57d..affdfe84 100644
--- a/projects-invent/unmaintained/kdev-cargo/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-cargo/metadata.yaml
@@ -1,11 +1,7 @@
 description: Cargo language support for KDevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Miha Čančula
-  username: mihac
+identifier: kdev-cargo
 name: KDevelop Cargo Plugin
 projectpath: unmaintained/kdev-cargo
 repoactive: true
-repopath: kdev-cargo
-type: project
+repopath: /unmaintained/kdev-cargo
diff --git a/projects-invent/unmaintained/kdev-clang-tidy/metadata.yaml b/projects-invent/unmaintained/kdev-clang-tidy/metadata.yaml
index 20f73ff4..cc4f7d69 100644
--- a/projects-invent/unmaintained/kdev-clang-tidy/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-clang-tidy/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDevelop plugin for clang-tidy static analysis support
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
+identifier: kdev-clang-tidy
 name: KDevelop Clang-Tidy Support
 projectpath: unmaintained/kdev-clang-tidy
 repoactive: true
-repopath: kdev-clang-tidy
-type: project
+repopath: /unmaintained/kdev-clang-tidy
diff --git a/projects-invent/unmaintained/kdev-clang/metadata.yaml b/projects-invent/unmaintained/kdev-clang/metadata.yaml
index bc591f89..a5a77db7 100644
--- a/projects-invent/unmaintained/kdev-clang/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-clang/metadata.yaml
@@ -1,17 +1,7 @@
 description: Integrates Clang into KDevelop for C/C++/Objective-C language support.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Olivier Jean de Gaalon
-  username: olivierjg
+identifier: kdev-clang
 name: KDevelop Clang Integration
 projectpath: unmaintained/kdev-clang
 repoactive: false
-repopath: kdev-clang
-type: project
+repopath: /unmaintained/kdev-clang
diff --git a/projects-invent/unmaintained/kdev-cppcheck/metadata.yaml b/projects-invent/unmaintained/kdev-cppcheck/metadata.yaml
index 5286b445..03b5037c 100644
--- a/projects-invent/unmaintained/kdev-cppcheck/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-cppcheck/metadata.yaml
@@ -1,17 +1,7 @@
 description: cppcheck support for kdevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Christoph Thielecke
-  username: crissi
+identifier: kdev-cppcheck
 name: Kdevelop Cppcheck support plugin
 projectpath: unmaintained/kdev-cppcheck
 repoactive: true
-repopath: kdev-cppcheck
-type: project
+repopath: /unmaintained/kdev-cppcheck
diff --git a/projects-invent/unmaintained/kdev-crossfire/metadata.yaml b/projects-invent/unmaintained/kdev-crossfire/metadata.yaml
index 102ea38a..e771fb79 100644
--- a/projects-invent/unmaintained/kdev-crossfire/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-crossfire/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Debugger plugin for debugging JavaScript using crossfire
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-crossfire
 name: Crossfire Debugger Plugin
 projectpath: unmaintained/kdev-crossfire
 repoactive: true
-repopath: kdev-crossfire
-type: project
+repopath: /unmaintained/kdev-crossfire
diff --git a/projects-invent/unmaintained/kdev-go/metadata.yaml b/projects-invent/unmaintained/kdev-go/metadata.yaml
index 0bdb0efc..19c3ed34 100644
--- a/projects-invent/unmaintained/kdev-go/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-go/metadata.yaml
@@ -1,17 +1,7 @@
 description: Go language support for KDevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Pavel Petrushkov
-  username: pavelp
+identifier: kdev-go
 name: KDevelop Go Plugin
 projectpath: unmaintained/kdev-go
 repoactive: true
-repopath: kdev-go
-type: project
+repopath: /unmaintained/kdev-go
diff --git a/projects-invent/unmaintained/kdev-java/metadata.yaml b/projects-invent/unmaintained/kdev-java/metadata.yaml
index 73162e1c..c24220cc 100644
--- a/projects-invent/unmaintained/kdev-java/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-java/metadata.yaml
@@ -1,13 +1,7 @@
 description: Java language support for KDevelop4
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdev-java
 name: KDevelop Java Support
 projectpath: unmaintained/kdev-java
 repoactive: true
-repopath: kdev-java
-type: project
+repopath: /unmaintained/kdev-java
diff --git a/projects-invent/unmaintained/kdev-perforce/metadata.yaml b/projects-invent/unmaintained/kdev-perforce/metadata.yaml
index 7af260d6..3737708d 100644
--- a/projects-invent/unmaintained/kdev-perforce/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-perforce/metadata.yaml
@@ -1,13 +1,7 @@
 description: A plugin for Kdevelop 4 that enables integration with Perforce
 hasrepo: true
-icon: null
-members:
-- displayname: Morten Volden
-  username: volden
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-perforce
 name: Perforce Plugin for Kdevelop
 projectpath: unmaintained/kdev-perforce
 repoactive: true
-repopath: kdev-perforce
-type: project
+repopath: /unmaintained/kdev-perforce
diff --git a/projects-invent/unmaintained/kdev-php-docs/metadata.yaml b/projects-invent/unmaintained/kdev-php-docs/metadata.yaml
index 6f833a4f..2c0145f3 100644
--- a/projects-invent/unmaintained/kdev-php-docs/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-php-docs/metadata.yaml
@@ -1,13 +1,7 @@
 description: PHP Documentation plugin for KDevelop/Quanta.
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdev-php-docs
 name: PHP Docs
 projectpath: unmaintained/kdev-php-docs
 repoactive: true
-repopath: kdev-php-docs
-type: project
+repopath: /unmaintained/kdev-php-docs
diff --git a/projects-invent/unmaintained/kdev-php-formatter/metadata.yaml b/projects-invent/unmaintained/kdev-php-formatter/metadata.yaml
index d86bc98b..3e0fe41b 100644
--- a/projects-invent/unmaintained/kdev-php-formatter/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-php-formatter/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Plugin for PHPFormatter
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-php-formatter
 name: PHP Formatter Plugin
 projectpath: unmaintained/kdev-php-formatter
 repoactive: true
-repopath: kdev-php-formatter
-type: project
+repopath: /unmaintained/kdev-php-formatter
diff --git a/projects-invent/unmaintained/kdev-qmake/metadata.yaml b/projects-invent/unmaintained/kdev-qmake/metadata.yaml
index d04c3a22..3a5f3e80 100644
--- a/projects-invent/unmaintained/kdev-qmake/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-qmake/metadata.yaml
@@ -1,15 +1,7 @@
 description: Support for Qt's qmake build system.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdev-qmake
 name: QMake
 projectpath: unmaintained/kdev-qmake
 repoactive: true
-repopath: kdev-qmake
-type: project
+repopath: /unmaintained/kdev-qmake
diff --git a/projects-invent/unmaintained/kdev-qmljs/metadata.yaml b/projects-invent/unmaintained/kdev-qmljs/metadata.yaml
index b5cdb19f..25e86187 100644
--- a/projects-invent/unmaintained/kdev-qmljs/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-qmljs/metadata.yaml
@@ -1,15 +1,7 @@
 description: This plugin brings qml and JavaScript language support to KDevelop
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-qmljs
 name: KDevelop QML/JS plugin
 projectpath: unmaintained/kdev-qmljs
 repoactive: true
-repopath: kdev-qmljs
-type: project
+repopath: /unmaintained/kdev-qmljs
diff --git a/projects-invent/unmaintained/kdev-rust/metadata.yaml b/projects-invent/unmaintained/kdev-rust/metadata.yaml
index a99e0a0c..9f99b922 100644
--- a/projects-invent/unmaintained/kdev-rust/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-rust/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDevelop plugin which provides Rust language support.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
+identifier: kdev-rust
 name: KDevelop Rust Support
 projectpath: unmaintained/kdev-rust
 repoactive: true
-repopath: kdev-rust
-type: project
+repopath: /unmaintained/kdev-rust
diff --git a/projects-invent/unmaintained/kdev-sql/metadata.yaml b/projects-invent/unmaintained/kdev-sql/metadata.yaml
index 13b911a7..aa0f0fd4 100644
--- a/projects-invent/unmaintained/kdev-sql/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-sql/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Plugin for SQL Language Support
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-sql
 name: Sql Language Plugin
 projectpath: unmaintained/kdev-sql
 repoactive: true
-repopath: kdev-sql
-type: project
+repopath: /unmaintained/kdev-sql
diff --git a/projects-invent/unmaintained/kdev-www/metadata.yaml b/projects-invent/unmaintained/kdev-www/metadata.yaml
index 9ce6a13d..c7634725 100644
--- a/projects-invent/unmaintained/kdev-www/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-www/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDevelop website content.
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdev-www
 name: Website
 projectpath: unmaintained/kdev-www
 repoactive: true
-repopath: kdev-www
-type: project
+repopath: /unmaintained/kdev-www
diff --git a/projects-invent/unmaintained/kdev-xml/metadata.yaml b/projects-invent/unmaintained/kdev-xml/metadata.yaml
index 68a8c521..161b125a 100644
--- a/projects-invent/unmaintained/kdev-xml/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-xml/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDevelop Plugin for XML and HTML Language Support
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Niko Sams
-  username: nsams
-- displayname: Milian Wolff
-  username: mwolff
+identifier: kdev-xml
 name: XML/HTML Language Plugin
 projectpath: unmaintained/kdev-xml
 repoactive: true
-repopath: kdev-xml
-type: project
+repopath: /unmaintained/kdev-xml
diff --git a/projects-invent/unmaintained/kdev-xtest/metadata.yaml b/projects-invent/unmaintained/kdev-xtest/metadata.yaml
index 76cd5c21..092fa877 100644
--- a/projects-invent/unmaintained/kdev-xtest/metadata.yaml
+++ b/projects-invent/unmaintained/kdev-xtest/metadata.yaml
@@ -1,14 +1,8 @@
 description: Implements the interface from the Veritas library for unit testing with
   QTestLib.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: "Miha \u010Can\u010Dula"
-  username: mihac
+identifier: kdev-xtest
 name: QTest
 projectpath: unmaintained/kdev-xtest
 repoactive: true
-repopath: kdev-xtest
-type: project
+repopath: /unmaintained/kdev-xtest
diff --git a/projects-invent/unmaintained/kdevplatform/metadata.yaml b/projects-invent/unmaintained/kdevplatform/metadata.yaml
index 04af14eb..5a792ef9 100644
--- a/projects-invent/unmaintained/kdevplatform/metadata.yaml
+++ b/projects-invent/unmaintained/kdevplatform/metadata.yaml
@@ -1,16 +1,8 @@
 description: The KDevelop Platform, supplying a framework to build IDE-like applications
   on top of it.
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Funk
-  username: kfunk
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: kdevplatform
 name: KDevPlatform
 projectpath: unmaintained/kdevplatform
 repoactive: true
-repopath: kdevplatform
-type: project
+repopath: /unmaintained/kdevplatform
diff --git a/projects-invent/unmaintained/kdgantt2/metadata.yaml b/projects-invent/unmaintained/kdgantt2/metadata.yaml
index 1a9a5ed5..9a66152b 100644
--- a/projects-invent/unmaintained/kdgantt2/metadata.yaml
+++ b/projects-invent/unmaintained/kdgantt2/metadata.yaml
@@ -1,11 +1,7 @@
 description: This lib provides gantt support
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kdgantt2
 name: Gantt support
 projectpath: unmaintained/kdgantt2
 repoactive: true
-repopath: kdgantt2
-type: project
+repopath: /unmaintained/kdgantt2
diff --git a/projects-invent/unmaintained/kdots/metadata.yaml b/projects-invent/unmaintained/kdots/metadata.yaml
index 0d9cd376..02409a78 100644
--- a/projects-invent/unmaintained/kdots/metadata.yaml
+++ b/projects-invent/unmaintained/kdots/metadata.yaml
@@ -5,12 +5,8 @@ description: 'KDots is the simple implementation of the game of dots written wit
   The purpose of Dots game is to catch your opponent''s dots by placing your dots
   on the game board where the lines cross.'
 hasrepo: true
-icon: null
-members:
-- displayname: Minh Ngo
-  username: minhngo
+identifier: kdots
 name: KDots board game
 projectpath: unmaintained/kdots
 repoactive: true
-repopath: kdots
-type: project
+repopath: /unmaintained/kdots
diff --git a/projects-invent/unmaintained/kfilereplace/metadata.yaml b/projects-invent/unmaintained/kfilereplace/metadata.yaml
index 85c91498..e881bc98 100644
--- a/projects-invent/unmaintained/kfilereplace/metadata.yaml
+++ b/projects-invent/unmaintained/kfilereplace/metadata.yaml
@@ -1,9 +1,7 @@
 description: Utility to assist with bulk file renaming
 hasrepo: true
-icon: null
-members: []
+identifier: kfilereplace
 name: KFileReplace
 projectpath: unmaintained/kfilereplace
 repoactive: true
-repopath: kfilereplace
-type: project
+repopath: /unmaintained/kfilereplace
diff --git a/projects-invent/unmaintained/kfritz/metadata.yaml b/projects-invent/unmaintained/kfritz/metadata.yaml
index cf9f56b7..a7e9d81b 100644
--- a/projects-invent/unmaintained/kfritz/metadata.yaml
+++ b/projects-invent/unmaintained/kfritz/metadata.yaml
@@ -3,12 +3,8 @@ description: 'A KDE call monitor and frontend for users of AVMs Fritz!Box router
 
   You can download source-tarballs from github, see below.'
 hasrepo: true
-icon: null
-members:
-- displayname: Joachim Wilke
-  username: joachimwilke
+identifier: kfritz
 name: KFritz
 projectpath: unmaintained/kfritz
 repoactive: true
-repopath: kfritz
-type: project
+repopath: /unmaintained/kfritz
diff --git a/projects-invent/unmaintained/kig-data/metadata.yaml b/projects-invent/unmaintained/kig-data/metadata.yaml
index 167d962f..d51730f2 100644
--- a/projects-invent/unmaintained/kig-data/metadata.yaml
+++ b/projects-invent/unmaintained/kig-data/metadata.yaml
@@ -1,11 +1,7 @@
 description: Course data for Kig, provided by KDE Edu.
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: others-kig-data
 name: Kig Course Data
 projectpath: others/kde-edu-courses/kig-data
 repoactive: true
-repopath: others/kig-data
-type: project
+repopath: /unmaintained/kig-data
diff --git a/projects-invent/unmaintained/kimono/metadata.yaml b/projects-invent/unmaintained/kimono/metadata.yaml
index e3ee2352..ddc0597d 100644
--- a/projects-invent/unmaintained/kimono/metadata.yaml
+++ b/projects-invent/unmaintained/kimono/metadata.yaml
@@ -1,13 +1,7 @@
 description: .NET/Mono bindings for the KDE libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: kimono
 name: Kimono
 projectpath: kde/kdebindings/csharp/kimono
 repoactive: true
-repopath: kimono
-type: project
+repopath: /unmaintained/kimono
diff --git a/projects-invent/unmaintained/kimtoy/metadata.yaml b/projects-invent/unmaintained/kimtoy/metadata.yaml
index 5c01898a..5fa57594 100644
--- a/projects-invent/unmaintained/kimtoy/metadata.yaml
+++ b/projects-invent/unmaintained/kimtoy/metadata.yaml
@@ -1,13 +1,7 @@
 description: An input method frontend by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Hui Ni
-  username: nihui
-- displayname: Xuetian Weng
-  username: xuetianweng
+identifier: kimtoy
 name: KIMToy
 projectpath: unmaintained/kimtoy
 repoactive: true
-repopath: kimtoy
-type: project
+repopath: /unmaintained/kimtoy
diff --git a/projects-invent/unmaintained/kio-mtp/metadata.yaml b/projects-invent/unmaintained/kio-mtp/metadata.yaml
index c4c4faa6..b812ec83 100644
--- a/projects-invent/unmaintained/kio-mtp/metadata.yaml
+++ b/projects-invent/unmaintained/kio-mtp/metadata.yaml
@@ -1,13 +1,7 @@
 description: Provides KIO Access to MTP devices using the mtp:/// protocol.
 hasrepo: true
-icon: null
-members:
-- displayname: Philipp Schmidt
-  username: schmidt
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: kio-mtp
 name: MTP KIO Slave
 projectpath: unmaintained/kio-mtp
 repoactive: true
-repopath: kio-mtp
-type: project
+repopath: /unmaintained/kio-mtp
diff --git a/projects-invent/unmaintained/klinkstatus/metadata.yaml b/projects-invent/unmaintained/klinkstatus/metadata.yaml
index 0c495189..53ef0b4d 100644
--- a/projects-invent/unmaintained/klinkstatus/metadata.yaml
+++ b/projects-invent/unmaintained/klinkstatus/metadata.yaml
@@ -1,9 +1,7 @@
 description: Tool to check the current status of links in a web page.
 hasrepo: true
-icon: null
-members: []
+identifier: klinkstatus
 name: KLinkStatus
 projectpath: unmaintained/klinkstatus
 repoactive: true
-repopath: klinkstatus
-type: project
+repopath: /unmaintained/klinkstatus
diff --git a/projects-invent/unmaintained/knemo/metadata.yaml b/projects-invent/unmaintained/knemo/metadata.yaml
index 1c318367..6d3b3f92 100644
--- a/projects-invent/unmaintained/knemo/metadata.yaml
+++ b/projects-invent/unmaintained/knemo/metadata.yaml
@@ -1,11 +1,7 @@
 description: A network monitor by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: John Stamp
-  username: jstamp
+identifier: knemo
 name: KNemo
 projectpath: unmaintained/knemo
 repoactive: true
-repopath: knemo
-type: project
+repopath: /unmaintained/knemo
diff --git a/projects-invent/unmaintained/koffice-chartingshape/metadata.yaml b/projects-invent/unmaintained/koffice-chartingshape/metadata.yaml
index b95b490f..987cf07a 100644
--- a/projects-invent/unmaintained/koffice-chartingshape/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-chartingshape/metadata.yaml
@@ -1,11 +1,7 @@
 description: Charting utilities and additions for KOffice
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-chartingshape
 name: KOffice Charting Shape
 projectpath: unmaintained/koffice-chartingshape
 repoactive: true
-repopath: koffice-chartingshape
-type: project
+repopath: /unmaintained/koffice-chartingshape
diff --git a/projects-invent/unmaintained/koffice-formulashape/metadata.yaml b/projects-invent/unmaintained/koffice-formulashape/metadata.yaml
index 2cb92787..2519e9a2 100644
--- a/projects-invent/unmaintained/koffice-formulashape/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-formulashape/metadata.yaml
@@ -1,11 +1,7 @@
 description: Formula shape for koffice
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-formulashape
 name: KOffice Formula Shape
 projectpath: unmaintained/koffice-formulashape
 repoactive: true
-repopath: koffice-formulashape
-type: project
+repopath: /unmaintained/koffice-formulashape
diff --git a/projects-invent/unmaintained/koffice-googledocs/metadata.yaml b/projects-invent/unmaintained/koffice-googledocs/metadata.yaml
index efd8966e..3eaecb84 100644
--- a/projects-invent/unmaintained/koffice-googledocs/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-googledocs/metadata.yaml
@@ -1,11 +1,7 @@
 description: KOffice plugin to work with Google Docs
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-googledocs
 name: KOffice Google Docs plugin
 projectpath: unmaintained/koffice-googledocs
 repoactive: true
-repopath: koffice-googledocs
-type: project
+repopath: /unmaintained/koffice-googledocs
diff --git a/projects-invent/unmaintained/koffice-musicshape/metadata.yaml b/projects-invent/unmaintained/koffice-musicshape/metadata.yaml
index 8764b537..b257f732 100644
--- a/projects-invent/unmaintained/koffice-musicshape/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-musicshape/metadata.yaml
@@ -1,11 +1,7 @@
 description: Musical notation shape and editor for koffice
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-musicshape
 name: KOffice Music Shape
 projectpath: unmaintained/koffice-musicshape
 repoactive: true
-repopath: koffice-musicshape
-type: project
+repopath: /unmaintained/koffice-musicshape
diff --git a/projects-invent/unmaintained/koffice-plugins/metadata.yaml b/projects-invent/unmaintained/koffice-plugins/metadata.yaml
index 7af2596f..9b0a5dfd 100644
--- a/projects-invent/unmaintained/koffice-plugins/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-plugins/metadata.yaml
@@ -1,11 +1,7 @@
 description: plugins for koffice, a free software office suite
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-plugins
 name: KOffice Plugins
 projectpath: unmaintained/koffice-plugins
 repoactive: true
-repopath: koffice-plugins
-type: project
+repopath: /unmaintained/koffice-plugins
diff --git a/projects-invent/unmaintained/koffice-texthighlight/metadata.yaml b/projects-invent/unmaintained/koffice-texthighlight/metadata.yaml
index 69917629..09374793 100644
--- a/projects-invent/unmaintained/koffice-texthighlight/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-texthighlight/metadata.yaml
@@ -1,11 +1,7 @@
 description: A plugin for KWord to allow giving syntax highlighting to selected text.
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-texthighlight
 name: KOffice Texthighlight
 projectpath: unmaintained/koffice-texthighlight
 repoactive: true
-repopath: koffice-texthighlight
-type: project
+repopath: /unmaintained/koffice-texthighlight
diff --git a/projects-invent/unmaintained/koffice-videoshape/metadata.yaml b/projects-invent/unmaintained/koffice-videoshape/metadata.yaml
index 1e94b80d..fa625b63 100644
--- a/projects-invent/unmaintained/koffice-videoshape/metadata.yaml
+++ b/projects-invent/unmaintained/koffice-videoshape/metadata.yaml
@@ -1,11 +1,7 @@
 description: Video shape for the KOffice suite
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice-videoshape
 name: KOffice Video Shape
 projectpath: unmaintained/koffice-videoshape
 repoactive: true
-repopath: koffice-videoshape
-type: project
+repopath: /unmaintained/koffice-videoshape
diff --git a/projects-invent/unmaintained/koffice/metadata.yaml b/projects-invent/unmaintained/koffice/metadata.yaml
index fc63de79..10bcd535 100644
--- a/projects-invent/unmaintained/koffice/metadata.yaml
+++ b/projects-invent/unmaintained/koffice/metadata.yaml
@@ -12,12 +12,8 @@ description: 'koffice, a free software office suite.
 
   https://projects.kde.org/projects/playground/office'
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Zander
-  username: zander
+identifier: koffice
 name: KOffice
 projectpath: unmaintained/koffice
 repoactive: true
-repopath: koffice
-type: project
+repopath: /unmaintained/koffice
diff --git a/projects-invent/unmaintained/kolena/metadata.yaml b/projects-invent/unmaintained/kolena/metadata.yaml
index 7b1e288e..9b4e7b11 100644
--- a/projects-invent/unmaintained/kolena/metadata.yaml
+++ b/projects-invent/unmaintained/kolena/metadata.yaml
@@ -1,12 +1,8 @@
 description: Kolena is a KDE wrapper around the Olena image library which extracts
   text from images.
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: kolena
 name: Kolena Image Text Extraction
 projectpath: unmaintained/kolena
 repoactive: true
-repopath: kolena
-type: project
+repopath: /unmaintained/kolena
diff --git a/projects-invent/unmaintained/kommander/metadata.yaml b/projects-invent/unmaintained/kommander/metadata.yaml
index 7b4cc556..e1ad1fda 100644
--- a/projects-invent/unmaintained/kommander/metadata.yaml
+++ b/projects-invent/unmaintained/kommander/metadata.yaml
@@ -1,9 +1,8 @@
-description: Toolkit allowing the creation of minimal, yet functionally powerful scripted applications.
+description: Toolkit allowing the creation of minimal, yet functionally powerful scripted
+  applications.
 hasrepo: true
-icon: null
-members: []
+identifier: kommander
 name: Kommander
 projectpath: unmaintained/kommander
 repoactive: true
-repopath: kommander
-type: project
+repopath: /unmaintained/kommander
diff --git a/projects-invent/unmaintained/kontaminuti/metadata.yaml b/projects-invent/unmaintained/kontaminuti/metadata.yaml
index 3e2eba87..36d820d3 100644
--- a/projects-invent/unmaintained/kontaminuti/metadata.yaml
+++ b/projects-invent/unmaintained/kontaminuti/metadata.yaml
@@ -1,12 +1,8 @@
 description: Kontaminuti is a simple helper utility to time your activities according
   to the Pomodoro Technique.
 hasrepo: true
-icon: null
-members:
-- displayname: Ruurd Pels
-  username: ruurd
+identifier: kontaminuti
 name: Kontaminuti
 projectpath: unmaintained/kontaminuti
 repoactive: true
-repopath: kontaminuti
-type: project
+repopath: /unmaintained/kontaminuti
diff --git a/projects-invent/unmaintained/kopete-pimpresence/metadata.yaml b/projects-invent/unmaintained/kopete-pimpresence/metadata.yaml
index 077dfe27..861b33e2 100644
--- a/projects-invent/unmaintained/kopete-pimpresence/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-pimpresence/metadata.yaml
@@ -1,15 +1,7 @@
 description: PIM Presence Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-pimpresence
 name: Kopete PIM Presence Plugin
 projectpath: playground/network/kopete-pimpresence
 repoactive: true
-repopath: kopete-pimpresence
-type: project
+repopath: /unmaintained/kopete-pimpresence
diff --git a/projects-invent/unmaintained/kopete-protocol-telepathy/metadata.yaml b/projects-invent/unmaintained/kopete-protocol-telepathy/metadata.yaml
index 3ec127ed..aea75da8 100644
--- a/projects-invent/unmaintained/kopete-protocol-telepathy/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-protocol-telepathy/metadata.yaml
@@ -1,16 +1,8 @@
 description: Kopete protocol plugin for Telepathy. This provides the ability to add
   accounts using any Telepathy-supported protocol to Kopete.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: kopete-protocol-telepathy
 name: Kopete Protocol Telepathy
 projectpath: unmaintained/kopete-protocol-telepathy
 repoactive: false
-repopath: kopete-protocol-telepathy
-type: project
+repopath: /unmaintained/kopete-protocol-telepathy
diff --git a/projects-invent/unmaintained/kopete-scripting/metadata.yaml b/projects-invent/unmaintained/kopete-scripting/metadata.yaml
index 81ecf796..dc50300b 100644
--- a/projects-invent/unmaintained/kopete-scripting/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-scripting/metadata.yaml
@@ -1,15 +1,7 @@
 description: Scripting Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-scripting
 name: Kopete Scripting Plugin
 projectpath: unmaintained/kopete-scripting
 repoactive: true
-repopath: kopete-scripting
-type: project
+repopath: /unmaintained/kopete-scripting
diff --git a/projects-invent/unmaintained/kopete-sharemydesktop/metadata.yaml b/projects-invent/unmaintained/kopete-sharemydesktop/metadata.yaml
index 6eddbf8d..ffaa9fd6 100644
--- a/projects-invent/unmaintained/kopete-sharemydesktop/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-sharemydesktop/metadata.yaml
@@ -1,15 +1,7 @@
 description: Share My Desktop Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-sharemydesktop
 name: Kopete ShareMyDesktop Plugin
 projectpath: unmaintained/kopete-sharemydesktop
 repoactive: true
-repopath: kopete-sharemydesktop
-type: project
+repopath: /unmaintained/kopete-sharemydesktop
diff --git a/projects-invent/unmaintained/kopete-smpppdcs/metadata.yaml b/projects-invent/unmaintained/kopete-smpppdcs/metadata.yaml
index a76fde4f..b19b6207 100644
--- a/projects-invent/unmaintained/kopete-smpppdcs/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-smpppdcs/metadata.yaml
@@ -1,15 +1,7 @@
 description: Smpppdcs Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-smpppdcs
 name: Kopete Smpppdcs Plugin
 projectpath: unmaintained/kopete-smpppdcs
 repoactive: true
-repopath: kopete-smpppdcs
-type: project
+repopath: /unmaintained/kopete-smpppdcs
diff --git a/projects-invent/unmaintained/kopete-thinklight/metadata.yaml b/projects-invent/unmaintained/kopete-thinklight/metadata.yaml
index 121239f5..ee346616 100644
--- a/projects-invent/unmaintained/kopete-thinklight/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-thinklight/metadata.yaml
@@ -1,15 +1,7 @@
 description: ThinkLight Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-thinklight
 name: Kopete ThinkLight Plugin
 projectpath: unmaintained/kopete-thinklight
 repoactive: true
-repopath: kopete-thinklight
-type: project
+repopath: /unmaintained/kopete-thinklight
diff --git a/projects-invent/unmaintained/kopete-whiteboard/metadata.yaml b/projects-invent/unmaintained/kopete-whiteboard/metadata.yaml
index 708c1cd7..101f62b9 100644
--- a/projects-invent/unmaintained/kopete-whiteboard/metadata.yaml
+++ b/projects-invent/unmaintained/kopete-whiteboard/metadata.yaml
@@ -1,15 +1,7 @@
 description: Whiteboard Plugin for Kopete
 hasrepo: true
-icon: kopete
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
-- displayname: "Pali Roh\xE1r"
-  username: pali
+identifier: kopete-whiteboard
 name: Kopete Whiteboard Plugin
 projectpath: unmaintained/kopete-whiteboard
 repoactive: true
-repopath: kopete-whiteboard
-type: project
+repopath: /unmaintained/kopete-whiteboard
diff --git a/projects-invent/unmaintained/kor/metadata.yaml b/projects-invent/unmaintained/kor/metadata.yaml
index 95cbc4f1..0560508f 100644
--- a/projects-invent/unmaintained/kor/metadata.yaml
+++ b/projects-invent/unmaintained/kor/metadata.yaml
@@ -1,13 +1,7 @@
 description: Kor is a simple desktop shell leveraging KDE technologies.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: "Lubo\u0161 Lu\u0148\xE1k"
-  username: lunakl
+identifier: kor
 name: Kor Desktop Shell
 projectpath: unmaintained/kor
 repoactive: true
-repopath: kor
-type: project
+repopath: /unmaintained/kor
diff --git a/projects-invent/unmaintained/korundum/metadata.yaml b/projects-invent/unmaintained/korundum/metadata.yaml
index 1913bc7a..8cedd7df 100644
--- a/projects-invent/unmaintained/korundum/metadata.yaml
+++ b/projects-invent/unmaintained/korundum/metadata.yaml
@@ -1,13 +1,7 @@
 description: Ruby bindings for libraries created by the KDE community.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: korundum
 name: Korundum
 projectpath: kde/kdebindings/ruby/korundum
 repoactive: true
-repopath: korundum
-type: project
+repopath: /unmaintained/korundum
diff --git a/projects-invent/unmaintained/kpaste/metadata.yaml b/projects-invent/unmaintained/kpaste/metadata.yaml
index 420dbf0d..76bb1411 100644
--- a/projects-invent/unmaintained/kpaste/metadata.yaml
+++ b/projects-invent/unmaintained/kpaste/metadata.yaml
@@ -1,11 +1,7 @@
 description: command-line tool to paste to https://paste.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Tirtha Chatterjee
-  username: chatterjee
+identifier: kpaste
 name: KPaste
 projectpath: playground/utils/kpaste
 repoactive: true
-repopath: kpaste
-type: project
+repopath: /unmaintained/kpaste
diff --git a/projects-invent/unmaintained/kpeg/metadata.yaml b/projects-invent/unmaintained/kpeg/metadata.yaml
index 2c472f92..fb7c891e 100644
--- a/projects-invent/unmaintained/kpeg/metadata.yaml
+++ b/projects-invent/unmaintained/kpeg/metadata.yaml
@@ -1,11 +1,7 @@
 description: Peg Solitaire Game by KDE.
 hasrepo: true
-icon: null
-members:
-- displayname: Ronny  Yabar Aizcorbe
-  username: ronnyy
+identifier: kpeg
 name: KPeg
 projectpath: unmaintained/kpeg
 repoactive: true
-repopath: kpeg
-type: project
+repopath: /unmaintained/kpeg
diff --git a/projects-invent/unmaintained/kplayer/metadata.yaml b/projects-invent/unmaintained/kplayer/metadata.yaml
index a08db8bd..8003acad 100644
--- a/projects-invent/unmaintained/kplayer/metadata.yaml
+++ b/projects-invent/unmaintained/kplayer/metadata.yaml
@@ -1,11 +1,7 @@
 description: KPlayer is a rich multimedia player that uses the mplayer backend.
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
+identifier: kplayer
 name: KPlayer
 projectpath: unmaintained/kplayer
 repoactive: true
-repopath: kplayer
-type: project
+repopath: /unmaintained/kplayer
diff --git a/projects-invent/unmaintained/kppp/metadata.yaml b/projects-invent/unmaintained/kppp/metadata.yaml
index 76b4b47b..dc21b9a8 100644
--- a/projects-invent/unmaintained/kppp/metadata.yaml
+++ b/projects-invent/unmaintained/kppp/metadata.yaml
@@ -1,13 +1,7 @@
 description: Dialer and Front end for pppd
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Wolfer
-  username: uwolfer
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kppp
 name: KPPP
 projectpath: unmaintained/kppp
 repoactive: true
-repopath: kppp
-type: project
+repopath: /unmaintained/kppp
diff --git a/projects-invent/unmaintained/kprinter4/metadata.yaml b/projects-invent/unmaintained/kprinter4/metadata.yaml
index aa58cb5a..ca6052c7 100644
--- a/projects-invent/unmaintained/kprinter4/metadata.yaml
+++ b/projects-invent/unmaintained/kprinter4/metadata.yaml
@@ -1,11 +1,7 @@
 description: Simple stand-alone PostScript document printer
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Nelles
-  username: marcon
+identifier: kprinter4
 name: KPrinter for KDE4
 projectpath: unmaintained/kprinter4
 repoactive: false
-repopath: kprinter4
-type: project
+repopath: /unmaintained/kprinter4
diff --git a/projects-invent/unmaintained/krecipes/metadata.yaml b/projects-invent/unmaintained/krecipes/metadata.yaml
index 9cb07a2f..f2103ecb 100644
--- a/projects-invent/unmaintained/krecipes/metadata.yaml
+++ b/projects-invent/unmaintained/krecipes/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE cooking recipes manager
 hasrepo: true
-icon: null
-members:
-- displayname: "Jos\xE9 Manuel Santamar\xEDa Lema"
-  username: joselema
+identifier: krecipes
 name: KRecipes
 projectpath: unmaintained/krecipes
 repoactive: true
-repopath: krecipes
-type: project
+repopath: /unmaintained/krecipes
diff --git a/projects-invent/unmaintained/kreenshot-editor/metadata.yaml b/projects-invent/unmaintained/kreenshot-editor/metadata.yaml
index 7630677d..49991166 100644
--- a/projects-invent/unmaintained/kreenshot-editor/metadata.yaml
+++ b/projects-invent/unmaintained/kreenshot-editor/metadata.yaml
@@ -1,12 +1,8 @@
 description: Kreenshot Editor is a screenshot image editing application and shared
   library.
 hasrepo: true
-icon: null
-members:
-- displayname: Gregor Mi
-  username: gregormi
+identifier: kreenshot-editor
 name: Kreenshot Editor
 projectpath: playground/graphics/kreenshot-editor
 repoactive: true
-repopath: kreenshot-editor
-type: project
+repopath: /unmaintained/kreenshot-editor
diff --git a/projects-invent/unmaintained/kremotecontrol/metadata.yaml b/projects-invent/unmaintained/kremotecontrol/metadata.yaml
index be3dac37..c30d03c3 100644
--- a/projects-invent/unmaintained/kremotecontrol/metadata.yaml
+++ b/projects-invent/unmaintained/kremotecontrol/metadata.yaml
@@ -1,14 +1,8 @@
 description: KRemoteControl (formerly known as KDELirc) is a KDE frontend for your
   remote controls.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Michael Zanetti
-  username: mzanetti
+identifier: kremotecontrol
 name: KRemoteControl
 projectpath: unmaintained/kremotecontrol
 repoactive: true
-repopath: kremotecontrol
-type: project
+repopath: /unmaintained/kremotecontrol
diff --git a/projects-invent/unmaintained/krita-analogies/metadata.yaml b/projects-invent/unmaintained/krita-analogies/metadata.yaml
index c556084c..dcef90fe 100644
--- a/projects-invent/unmaintained/krita-analogies/metadata.yaml
+++ b/projects-invent/unmaintained/krita-analogies/metadata.yaml
@@ -1,13 +1,7 @@
 description: Filter that tries to restyle an image using comparison with other images.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-analogies
 name: Analogies
 projectpath: extragear/graphics/krita-extensions/krita-analogies
 repoactive: false
-repopath: krita-analogies
-type: project
+repopath: /unmaintained/krita-analogies
diff --git a/projects-invent/unmaintained/krita-cimg/metadata.yaml b/projects-invent/unmaintained/krita-cimg/metadata.yaml
index db3b8bed..6c392d52 100644
--- a/projects-invent/unmaintained/krita-cimg/metadata.yaml
+++ b/projects-invent/unmaintained/krita-cimg/metadata.yaml
@@ -1,13 +1,7 @@
 description: Extension based on the cimg library. http://cimg.sourceforge.net/
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-cimg
 name: CImg
 projectpath: extragear/graphics/krita-extensions/krita-cimg
 repoactive: false
-repopath: krita-cimg
-type: project
+repopath: /unmaintained/krita-cimg
diff --git a/projects-invent/unmaintained/krita-ctlbrush/metadata.yaml b/projects-invent/unmaintained/krita-ctlbrush/metadata.yaml
index 8aee604e..3a3cd345 100644
--- a/projects-invent/unmaintained/krita-ctlbrush/metadata.yaml
+++ b/projects-invent/unmaintained/krita-ctlbrush/metadata.yaml
@@ -1,13 +1,7 @@
 description: Brush written using the Color Transformation Language.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-ctlbrush
 name: CTL Brush
 projectpath: extragear/graphics/krita-extensions/krita-ctlbrush
 repoactive: false
-repopath: krita-ctlbrush
-type: project
+repopath: /unmaintained/krita-ctlbrush
diff --git a/projects-invent/unmaintained/krita-deskew/metadata.yaml b/projects-invent/unmaintained/krita-deskew/metadata.yaml
index 2ab34ec5..8d62500d 100644
--- a/projects-invent/unmaintained/krita-deskew/metadata.yaml
+++ b/projects-invent/unmaintained/krita-deskew/metadata.yaml
@@ -1,14 +1,8 @@
 description: Deskew rotates an image such that text is straight, which is useful when
   dealing with scanned images.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-deskew
 name: Deskew
 projectpath: extragear/graphics/krita-extensions/krita-deskew
 repoactive: false
-repopath: krita-deskew
-type: project
+repopath: /unmaintained/krita-deskew
diff --git a/projects-invent/unmaintained/krita-dither/metadata.yaml b/projects-invent/unmaintained/krita-dither/metadata.yaml
index b711bc7d..0e2a447b 100644
--- a/projects-invent/unmaintained/krita-dither/metadata.yaml
+++ b/projects-invent/unmaintained/krita-dither/metadata.yaml
@@ -1,13 +1,7 @@
 description: A dithering plugin for Krita.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-dither
 name: Dither
 projectpath: extragear/graphics/krita-extensions/krita-dither
 repoactive: false
-repopath: krita-dither
-type: project
+repopath: /unmaintained/krita-dither
diff --git a/projects-invent/unmaintained/krita-grayscalizer/metadata.yaml b/projects-invent/unmaintained/krita-grayscalizer/metadata.yaml
index 3e7fe61d..364d2541 100644
--- a/projects-invent/unmaintained/krita-grayscalizer/metadata.yaml
+++ b/projects-invent/unmaintained/krita-grayscalizer/metadata.yaml
@@ -1,13 +1,7 @@
 description: "Simulate the use of \u201Clens filter\u201D for creating grayscale images."
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-grayscalizer
 name: Grayscalizer
 projectpath: extragear/graphics/krita-extensions/krita-grayscalizer
 repoactive: false
-repopath: krita-grayscalizer
-type: project
+repopath: /unmaintained/krita-grayscalizer
diff --git a/projects-invent/unmaintained/krita-humanbody/metadata.yaml b/projects-invent/unmaintained/krita-humanbody/metadata.yaml
index 91e54603..6d59dae4 100644
--- a/projects-invent/unmaintained/krita-humanbody/metadata.yaml
+++ b/projects-invent/unmaintained/krita-humanbody/metadata.yaml
@@ -1,14 +1,8 @@
 description: Canvas decoration that display the outline of a human to help choosing
   the pose when drawing.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-humanbody
 name: Human Body
 projectpath: extragear/graphics/krita-extensions/krita-humanbody
 repoactive: false
-repopath: krita-humanbody
-type: project
+repopath: /unmaintained/krita-humanbody
diff --git a/projects-invent/unmaintained/krita-imagecomplete/metadata.yaml b/projects-invent/unmaintained/krita-imagecomplete/metadata.yaml
index 67ae6859..61d329d3 100644
--- a/projects-invent/unmaintained/krita-imagecomplete/metadata.yaml
+++ b/projects-invent/unmaintained/krita-imagecomplete/metadata.yaml
@@ -1,13 +1,7 @@
 description: ImageComplete fills in holes in your image with the gradient of the surround
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-imagecomplete
 name: Image Complete
 projectpath: extragear/graphics/krita-extensions/krita-imagecomplete
 repoactive: false
-repopath: krita-imagecomplete
-type: project
+repopath: /unmaintained/krita-imagecomplete
diff --git a/projects-invent/unmaintained/krita-linesampler/metadata.yaml b/projects-invent/unmaintained/krita-linesampler/metadata.yaml
index d3f5d5db..ac951912 100644
--- a/projects-invent/unmaintained/krita-linesampler/metadata.yaml
+++ b/projects-invent/unmaintained/krita-linesampler/metadata.yaml
@@ -1,13 +1,7 @@
 description: "LineSampler \u201Csamples\u201D the image with randomly placed lines."
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-linesampler
 name: Line Sampler
 projectpath: extragear/graphics/krita-extensions/krita-linesampler
 repoactive: false
-repopath: krita-linesampler
-type: project
+repopath: /unmaintained/krita-linesampler
diff --git a/projects-invent/unmaintained/krita-marketing/metadata.yaml b/projects-invent/unmaintained/krita-marketing/metadata.yaml
index 57363b6d..df17e124 100644
--- a/projects-invent/unmaintained/krita-marketing/metadata.yaml
+++ b/projects-invent/unmaintained/krita-marketing/metadata.yaml
@@ -1,12 +1,8 @@
 description: Working together to creating marketing and introduction documents for
   Krita
 hasrepo: true
-icon: null
-members:
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: others-krita-marketing
 name: Krita Marketing Documents
 projectpath: others/krita-marketing
 repoactive: false
-repopath: others/krita-marketing
-type: module
+repopath: /unmaintained/krita-marketing
diff --git a/projects-invent/unmaintained/krita-pyramidalsharpening/metadata.yaml b/projects-invent/unmaintained/krita-pyramidalsharpening/metadata.yaml
index 2876913d..32742cc9 100644
--- a/projects-invent/unmaintained/krita-pyramidalsharpening/metadata.yaml
+++ b/projects-invent/unmaintained/krita-pyramidalsharpening/metadata.yaml
@@ -1,13 +1,7 @@
 description: Use a pyramid to reconstruct a sharper image.
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: krita-pyramidalsharpening
 name: Pyramidal Sharpening
 projectpath: extragear/graphics/krita-extensions/krita-pyramidalsharpening
 repoactive: false
-repopath: krita-pyramidalsharpening
-type: project
+repopath: /unmaintained/krita-pyramidalsharpening
diff --git a/projects-invent/unmaintained/krono/metadata.yaml b/projects-invent/unmaintained/krono/metadata.yaml
index fe170702..a231afd2 100644
--- a/projects-invent/unmaintained/krono/metadata.yaml
+++ b/projects-invent/unmaintained/krono/metadata.yaml
@@ -1,11 +1,7 @@
 description: Desktop History Viewer
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: krono
 name: Krono
 projectpath: unmaintained/krono
 repoactive: true
-repopath: krono
-type: project
+repopath: /unmaintained/krono
diff --git a/projects-invent/unmaintained/ksaneplugin/metadata.yaml b/projects-invent/unmaintained/ksaneplugin/metadata.yaml
index 101e3f2b..abd78d46 100644
--- a/projects-invent/unmaintained/ksaneplugin/metadata.yaml
+++ b/projects-invent/unmaintained/ksaneplugin/metadata.yaml
@@ -1,11 +1,7 @@
 description: This is a KScan plugin that implements the scanning through libksane
 hasrepo: true
-icon: null
-members:
-- displayname: "K\xE5re S\xE4rs"
-  username: sars
+identifier: ksaneplugin
 name: KSanePlugin
 projectpath: unmaintained/ksaneplugin
 repoactive: true
-repopath: ksaneplugin
-type: project
+repopath: /unmaintained/ksaneplugin
diff --git a/projects-invent/unmaintained/ksaolaji/metadata.yaml b/projects-invent/unmaintained/ksaolaji/metadata.yaml
index 20f7bddf..7f3ed24a 100644
--- a/projects-invent/unmaintained/ksaolaji/metadata.yaml
+++ b/projects-invent/unmaintained/ksaolaji/metadata.yaml
@@ -27,12 +27,8 @@ description: 'KSaoLaJi cleans all sorts of waste things in your system.
   ktrash, kword, kwrite, marbletilecache, nepomukcache, okular, okulardocdata, plasmawallpaper,
   recentdoc, rekonqhistory, rekonqsnap, smplayer, thumbnail, vlc, winetrickscache'
 hasrepo: true
-icon: null
-members:
-- displayname: Hui Ni
-  username: nihui
+identifier: ksaolaji
 name: Advanced System Cleaner
 projectpath: unmaintained/ksaolaji
 repoactive: true
-repopath: ksaolaji
-type: project
+repopath: /unmaintained/ksaolaji
diff --git a/projects-invent/unmaintained/ksnapshot/metadata.yaml b/projects-invent/unmaintained/ksnapshot/metadata.yaml
index a7a5cdc3..48eddc33 100644
--- a/projects-invent/unmaintained/ksnapshot/metadata.yaml
+++ b/projects-invent/unmaintained/ksnapshot/metadata.yaml
@@ -3,12 +3,8 @@ description: 'A handy utility primarily designed for taking screenshots
 
   Get KIPI plugins for "more features":https://www.elpauer.org/?p=509'
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: ksnapshot
 name: KSnapshot
 projectpath: unmaintained/ksnapshot
 repoactive: true
-repopath: ksnapshot
-type: project
+repopath: /unmaintained/ksnapshot
diff --git a/projects-invent/unmaintained/ktexteditorpreviewplugin/metadata.yaml b/projects-invent/unmaintained/ktexteditorpreviewplugin/metadata.yaml
index 1666843e..281a0a19 100644
--- a/projects-invent/unmaintained/ktexteditorpreviewplugin/metadata.yaml
+++ b/projects-invent/unmaintained/ktexteditorpreviewplugin/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plugin for previewing content using the KTextEditor Framework
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
+identifier: ktexteditorpreviewplugin
 name: KTextEditor Preview Plugin
 projectpath: unmaintained/ktexteditorpreviewplugin
 repoactive: true
-repopath: ktexteditorpreviewplugin
-type: project
+repopath: /unmaintained/ktexteditorpreviewplugin
diff --git a/projects-invent/unmaintained/ktp-active/metadata.yaml b/projects-invent/unmaintained/ktp-active/metadata.yaml
index fda1e15c..35495997 100644
--- a/projects-invent/unmaintained/ktp-active/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-active/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma Active Client for KDE Telepathy
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-active
 name: Active Client for KDE Telepathy
 projectpath: unmaintained/ktp-active
 repoactive: true
-repopath: ktp-active
-type: project
+repopath: /unmaintained/ktp-active
diff --git a/projects-invent/unmaintained/ktp-kde/metadata.yaml b/projects-invent/unmaintained/ktp-kde/metadata.yaml
index 7670490b..8b99e2b6 100644
--- a/projects-invent/unmaintained/ktp-kde/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-kde/metadata.yaml
@@ -1,15 +1,7 @@
 description: Telepathy KDE integration library
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-kde
 name: Telepathy KDE
 projectpath: unmaintained/ktp-kde
 repoactive: false
-repopath: ktp-kde
-type: project
+repopath: /unmaintained/ktp-kde
diff --git a/projects-invent/unmaintained/ktp-kipi-plugin/metadata.yaml b/projects-invent/unmaintained/ktp-kipi-plugin/metadata.yaml
index a8309ef0..e6a8fc7c 100644
--- a/projects-invent/unmaintained/ktp-kipi-plugin/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-kipi-plugin/metadata.yaml
@@ -1,13 +1,7 @@
 description: A Kipi Plugin to send images through telepathy
 hasrepo: true
-icon: telepathy-kde
-members:
-- displayname: Daniele E. Domenichelli
-  username: ddomenichelli
-- displayname: George Kiagiadakis
-  username: gkiagia
+identifier: ktp-kipi-plugin
 name: KDE Telepathy Kipi Plugin
 projectpath: unmaintained/ktp-kipi-plugin
 repoactive: true
-repopath: ktp-kipi-plugin
-type: project
+repopath: /unmaintained/ktp-kipi-plugin
diff --git a/projects-invent/unmaintained/ktp-launcher-kded/metadata.yaml b/projects-invent/unmaintained/ktp-launcher-kded/metadata.yaml
index 09aec340..b796bee9 100644
--- a/projects-invent/unmaintained/ktp-launcher-kded/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-launcher-kded/metadata.yaml
@@ -1,15 +1,7 @@
 description: KDED Module which ensures necessary Telepathy services are running.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-launcher-kded
 name: Telepathy Launcher KDED
 projectpath: unmaintained/ktp-launcher-kded
 repoactive: false
-repopath: ktp-launcher-kded
-type: project
+repopath: /unmaintained/ktp-launcher-kded
diff --git a/projects-invent/unmaintained/ktp-nepomuk-service/metadata.yaml b/projects-invent/unmaintained/ktp-nepomuk-service/metadata.yaml
index 5c386ed5..00cfec48 100644
--- a/projects-invent/unmaintained/ktp-nepomuk-service/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-nepomuk-service/metadata.yaml
@@ -1,13 +1,7 @@
 description: Nepomuk integration service for Telepathy
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
+identifier: ktp-nepomuk-service
 name: Telepathy Nepomuk Service
 projectpath: unmaintained/ktp-nepomuk-service
 repoactive: true
-repopath: ktp-nepomuk-service
-type: project
+repopath: /unmaintained/ktp-nepomuk-service
diff --git a/projects-invent/unmaintained/ktp-presence-dataengine/metadata.yaml b/projects-invent/unmaintained/ktp-presence-dataengine/metadata.yaml
index 14f71253..303626e7 100644
--- a/projects-invent/unmaintained/ktp-presence-dataengine/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-presence-dataengine/metadata.yaml
@@ -1,15 +1,7 @@
 description: Plasma dataengine for managing Telepathy account presence.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-presence-dataengine
 name: Telepathy Presence Dataengine
 projectpath: unmaintained/ktp-presence-dataengine
 repoactive: false
-repopath: ktp-presence-dataengine
-type: project
+repopath: /unmaintained/ktp-presence-dataengine
diff --git a/projects-invent/unmaintained/ktp-ssh-contact/metadata.yaml b/projects-invent/unmaintained/ktp-ssh-contact/metadata.yaml
index 309f2aeb..8a3d405f 100644
--- a/projects-invent/unmaintained/ktp-ssh-contact/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-ssh-contact/metadata.yaml
@@ -1,13 +1,7 @@
 description: Connect to your contacts using ssh
 hasrepo: true
-icon: telepathy-kde
-members:
-- displayname: Daniele E. Domenichelli
-  username: ddomenichelli
-- displayname: George Kiagiadakis
-  username: gkiagia
+identifier: ktp-ssh-contact
 name: KDE Telepathy SSH Contact
 projectpath: unmaintained/ktp-ssh-contact
 repoactive: true
-repopath: ktp-ssh-contact
-type: project
+repopath: /unmaintained/ktp-ssh-contact
diff --git a/projects-invent/unmaintained/ktp-test-tool/metadata.yaml b/projects-invent/unmaintained/ktp-test-tool/metadata.yaml
index 93ea36e9..4d1dc389 100644
--- a/projects-invent/unmaintained/ktp-test-tool/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-test-tool/metadata.yaml
@@ -3,12 +3,8 @@ description: 'A tool for testing out the various components of the KDE Telepathy
 
   DEPRECATED'
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
+identifier: ktp-test-tool
 name: Telepathy Test Tool
 projectpath: unmaintained/ktp-test-tool
 repoactive: false
-repopath: ktp-test-tool
-type: project
+repopath: /unmaintained/ktp-test-tool
diff --git a/projects-invent/unmaintained/ktp-testlib/metadata.yaml b/projects-invent/unmaintained/ktp-testlib/metadata.yaml
index 81c5b0d2..7751a3de 100644
--- a/projects-invent/unmaintained/ktp-testlib/metadata.yaml
+++ b/projects-invent/unmaintained/ktp-testlib/metadata.yaml
@@ -1,15 +1,7 @@
 description: Infrastructure library for building unit tests for Telepathy components
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: ktp-testlib
 name: Telepathy Testlib
 projectpath: unmaintained/ktp-testlib
 repoactive: false
-repopath: ktp-testlib
-type: project
+repopath: /unmaintained/ktp-testlib
diff --git a/projects-invent/unmaintained/kturtle-data/metadata.yaml b/projects-invent/unmaintained/kturtle-data/metadata.yaml
index 19b57b1f..cbc417d7 100644
--- a/projects-invent/unmaintained/kturtle-data/metadata.yaml
+++ b/projects-invent/unmaintained/kturtle-data/metadata.yaml
@@ -1,11 +1,7 @@
 description: Course data for KTurtle, provided by KDE Edu.
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: others-kturtle-data
 name: KTurtle Course Data
 projectpath: others/kde-edu-courses/kturtle-data
 repoactive: true
-repopath: others/kturtle-data
-type: project
+repopath: /unmaintained/kturtle-data
diff --git a/projects-invent/unmaintained/ktutorial/metadata.yaml b/projects-invent/unmaintained/ktutorial/metadata.yaml
index f67cb0c5..f2194a30 100644
--- a/projects-invent/unmaintained/ktutorial/metadata.yaml
+++ b/projects-invent/unmaintained/ktutorial/metadata.yaml
@@ -1,11 +1,7 @@
 description: A library and an editor for interactive tutorials in KDE applications
 hasrepo: true
-icon: null
-members:
-- displayname: "Daniel Calvi\xF1o S\xE1nchez"
-  username: danxuliu
+identifier: ktutorial
 name: KTutorial
 projectpath: unmaintained/ktutorial
 repoactive: true
-repopath: ktutorial
-type: project
+repopath: /unmaintained/ktutorial
diff --git a/projects-invent/unmaintained/ktux/metadata.yaml b/projects-invent/unmaintained/ktux/metadata.yaml
index ae634365..bad3a351 100644
--- a/projects-invent/unmaintained/ktux/metadata.yaml
+++ b/projects-invent/unmaintained/ktux/metadata.yaml
@@ -1,12 +1,8 @@
 description: KTux is a screensaver of outer space, with Tux in a spaceship flying
   by.
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: ktux
 name: KTux
 projectpath: unmaintained/ktux
 repoactive: true
-repopath: ktux
-type: project
+repopath: /unmaintained/ktux
diff --git a/projects-invent/unmaintained/kubeplayer/metadata.yaml b/projects-invent/unmaintained/kubeplayer/metadata.yaml
index 319a845b..0fcb9ade 100644
--- a/projects-invent/unmaintained/kubeplayer/metadata.yaml
+++ b/projects-invent/unmaintained/kubeplayer/metadata.yaml
@@ -1,11 +1,7 @@
 description: A multimedia player for different online platforms.
 hasrepo: true
-icon: null
-members:
-- displayname: Robert Riemann
-  username: rriemann
+identifier: kubeplayer
 name: Kubeplayer
 projectpath: unmaintained/kubeplayer
 repoactive: true
-repopath: kubeplayer
-type: project
+repopath: /unmaintained/kubeplayer
diff --git a/projects-invent/unmaintained/kuser/metadata.yaml b/projects-invent/unmaintained/kuser/metadata.yaml
index e0518606..d436d2ab 100644
--- a/projects-invent/unmaintained/kuser/metadata.yaml
+++ b/projects-invent/unmaintained/kuser/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE User Manager
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kuser
 name: KUser
 projectpath: unmaintained/kuser
 repoactive: true
-repopath: kuser
-type: project
+repopath: /unmaintained/kuser
diff --git a/projects-invent/unmaintained/kvkbd/metadata.yaml b/projects-invent/unmaintained/kvkbd/metadata.yaml
index ec2d563b..5c880e62 100644
--- a/projects-invent/unmaintained/kvkbd/metadata.yaml
+++ b/projects-invent/unmaintained/kvkbd/metadata.yaml
@@ -1,11 +1,7 @@
 description: A virtual keyboard for Plasma
 hasrepo: true
-icon: null
-members:
-- displayname: Todor Gyumyushev
-  username: yodor
+identifier: kvkbd
 name: kvkbd
 projectpath: unmaintained/kvkbd
 repoactive: true
-repopath: kvkbd
-type: project
+repopath: /unmaintained/kvkbd
diff --git a/projects-invent/unmaintained/kvtml-data/metadata.yaml b/projects-invent/unmaintained/kvtml-data/metadata.yaml
index 7f6ab8f9..36518f73 100644
--- a/projects-invent/unmaintained/kvtml-data/metadata.yaml
+++ b/projects-invent/unmaintained/kvtml-data/metadata.yaml
@@ -1,11 +1,7 @@
 description: Course data for Vocabulary trainers, provided by KDE Edu.
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: others-kvtml-data
 name: KVTML Course Data
 projectpath: others/kde-edu-courses/kvtml-data
 repoactive: true
-repopath: others/kvtml-data
-type: project
+repopath: /unmaintained/kvtml-data
diff --git a/projects-invent/unmaintained/kwhiteboard/metadata.yaml b/projects-invent/unmaintained/kwhiteboard/metadata.yaml
index 33e06d4e..90772b9a 100644
--- a/projects-invent/unmaintained/kwhiteboard/metadata.yaml
+++ b/projects-invent/unmaintained/kwhiteboard/metadata.yaml
@@ -1,14 +1,8 @@
 description: KWhiteboard is a shared whiteboard application built with Telepathy.
   It allows you to run a shared whiteboard session with Instant Messaging contacts.
 hasrepo: true
-icon: null
-members:
-- displayname: George Goldberg
-  username: gberg
-- displayname: George Kiagiadakis
-  username: gkiagia
+identifier: kwhiteboard
 name: KWhiteboard
 projectpath: unmaintained/kwhiteboard
 repoactive: true
-repopath: kwhiteboard
-type: project
+repopath: /unmaintained/kwhiteboard
diff --git a/projects-invent/unmaintained/libbluedevil/metadata.yaml b/projects-invent/unmaintained/libbluedevil/metadata.yaml
index 1b2b13ae..ac4bc511 100644
--- a/projects-invent/unmaintained/libbluedevil/metadata.yaml
+++ b/projects-invent/unmaintained/libbluedevil/metadata.yaml
@@ -1,19 +1,7 @@
 description: KDE bluetooth framework libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: "Rafael Fern\xE1ndez L\xF3pez"
-  username: ereslibre
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: David Faure
-  username: dfaure
-- displayname: David Rosca
-  username: drosca
+identifier: libbluedevil
 name: libbluedevil
 projectpath: unmaintained/libbluedevil
 repoactive: true
-repopath: libbluedevil
-type: project
+repopath: /unmaintained/libbluedevil
diff --git a/projects-invent/unmaintained/libechonest/metadata.yaml b/projects-invent/unmaintained/libechonest/metadata.yaml
index 175a4350..4ff7066e 100644
--- a/projects-invent/unmaintained/libechonest/metadata.yaml
+++ b/projects-invent/unmaintained/libechonest/metadata.yaml
@@ -14,12 +14,8 @@ description: 'Qt library for communicating with The Echo Nest.
 
   http://files.lfranchi.com/libechonest_api/'
 hasrepo: true
-icon: null
-members:
-- displayname: Leo Franchi
-  username: lfranchi
+identifier: libechonest
 name: libechonest
 projectpath: unmaintained/libechonest
 repoactive: true
-repopath: libechonest
-type: project
+repopath: /unmaintained/libechonest
diff --git a/projects-invent/unmaintained/libkcw/metadata.yaml b/projects-invent/unmaintained/libkcw/metadata.yaml
index 07c2e9b0..75219c07 100644
--- a/projects-invent/unmaintained/libkcw/metadata.yaml
+++ b/projects-invent/unmaintained/libkcw/metadata.yaml
@@ -1,11 +1,7 @@
 description: A minimal toolkit for win32 API required to build up the console wrapper.
 hasrepo: true
-icon: null
-members:
-- displayname: Patrick Spendrin
-  username: sengels
+identifier: libkcw
 name: KCW Library
 projectpath: unmaintained/libkcw
 repoactive: true
-repopath: libkcw
-type: project
+repopath: /unmaintained/libkcw
diff --git a/projects-invent/unmaintained/libkdeedu/metadata.yaml b/projects-invent/unmaintained/libkdeedu/metadata.yaml
index 3b3d1ff8..ff929ac1 100644
--- a/projects-invent/unmaintained/libkdeedu/metadata.yaml
+++ b/projects-invent/unmaintained/libkdeedu/metadata.yaml
@@ -1,13 +1,7 @@
 description: Libraries used by KDE Education applications
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: libkdeedu
 name: libkdeedu
 projectpath: unmaintained/libkdeedu
 repoactive: true
-repopath: libkdeedu
-type: project
+repopath: /unmaintained/libkdeedu
diff --git a/projects-invent/unmaintained/libkface/metadata.yaml b/projects-invent/unmaintained/libkface/metadata.yaml
index 84b1b190..f28ed301 100644
--- a/projects-invent/unmaintained/libkface/metadata.yaml
+++ b/projects-invent/unmaintained/libkface/metadata.yaml
@@ -7,18 +7,8 @@ description: '!https://4.bp.blogspot.com/-EDtqAS3eNzY/TXA0kfBAv3I/AAAAAAAAAz0/T3
 
   API documentation is available "here":http://api.kde.org/4.x-api/kdegraphics-apidocs/libs/libkface/libkface/html/index.html'
 hasrepo: true
-icon: null
-members:
-- displayname: Marcel Wiesweg
-  username: mwiesweg
-- displayname: Gilles Caulier
-  username: cgilles
-- displayname: Alex Jironkin
-  username: alexjironkin
-- displayname: Aditya Jitesh Bhatt
-  username: adityab
+identifier: libkface
 name: libkface
 projectpath: unmaintained/libkface
 repoactive: true
-repopath: libkface
-type: project
+repopath: /unmaintained/libkface
diff --git a/projects-invent/unmaintained/libkfbapi/metadata.yaml b/projects-invent/unmaintained/libkfbapi/metadata.yaml
index dd6d9453..65336ef7 100644
--- a/projects-invent/unmaintained/libkfbapi/metadata.yaml
+++ b/projects-invent/unmaintained/libkfbapi/metadata.yaml
@@ -1,13 +1,7 @@
 description: A library for accessing Facebook services.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Klapetek
-  username: mklapetek
-- displayname: Pankaj Bhambhani
-  username: bhambhani
+identifier: libkfbapi
 name: LibKFbAPI
 projectpath: unmaintained/libkfbapi
 repoactive: true
-repopath: libkfbapi
-type: project
+repopath: /unmaintained/libkfbapi
diff --git a/projects-invent/unmaintained/libkoralle/metadata.yaml b/projects-invent/unmaintained/libkoralle/metadata.yaml
index 2dbec333..acb4d4c5 100644
--- a/projects-invent/unmaintained/libkoralle/metadata.yaml
+++ b/projects-invent/unmaintained/libkoralle/metadata.yaml
@@ -1,11 +1,7 @@
 description: a library for parsing data in the Resource Interchange File Format (RIFF)
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
+identifier: libkoralle
 name: Koralle Library
 projectpath: unmaintained/libkoralle
 repoactive: true
-repopath: libkoralle
-type: project
+repopath: /unmaintained/libkoralle
diff --git a/projects-invent/unmaintained/liblikeback/metadata.yaml b/projects-invent/unmaintained/liblikeback/metadata.yaml
index 23619108..9b9a4407 100644
--- a/projects-invent/unmaintained/liblikeback/metadata.yaml
+++ b/projects-invent/unmaintained/liblikeback/metadata.yaml
@@ -4,12 +4,8 @@ description: 'A library that allows users to easily give feedback on software
 
   express like or dislike of something.'
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: liblikeback
 name: liblikeback
 projectpath: unmaintained/liblikeback
 repoactive: true
-repopath: liblikeback
-type: project
+repopath: /unmaintained/liblikeback
diff --git a/projects-invent/unmaintained/libqinfinity/metadata.yaml b/projects-invent/unmaintained/libqinfinity/metadata.yaml
index e544b1c1..e3f15364 100644
--- a/projects-invent/unmaintained/libqinfinity/metadata.yaml
+++ b/projects-invent/unmaintained/libqinfinity/metadata.yaml
@@ -1,13 +1,7 @@
 description: Qt wrapper around libinfinity, a library for collaborative editing
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Sven Brauch
-  username: brauch
+identifier: libqinfinity
 name: Qt wrapper around libinfinity
 projectpath: unmaintained/libqinfinity
 repoactive: true
-repopath: libqinfinity
-type: project
+repopath: /unmaintained/libqinfinity
diff --git a/projects-invent/unmaintained/libqzeitgeist/metadata.yaml b/projects-invent/unmaintained/libqzeitgeist/metadata.yaml
index d045b952..df764bf5 100644
--- a/projects-invent/unmaintained/libqzeitgeist/metadata.yaml
+++ b/projects-invent/unmaintained/libqzeitgeist/metadata.yaml
@@ -1,13 +1,7 @@
 description: A Qt interface to the Zeitgeist event tracking system
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
-- displayname: Abner Silva
-  username: abnerf
+identifier: libqzeitgeist
 name: Qt Zeitgeist library
 projectpath: kdesupport/libqzeitgeist
 repoactive: true
-repopath: libqzeitgeist
-type: module
+repopath: /unmaintained/libqzeitgeist
diff --git a/projects-invent/unmaintained/libstreamanalyzer/metadata.yaml b/projects-invent/unmaintained/libstreamanalyzer/metadata.yaml
index e78cabcf..785d0be5 100644
--- a/projects-invent/unmaintained/libstreamanalyzer/metadata.yaml
+++ b/projects-invent/unmaintained/libstreamanalyzer/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi libstreamanalyzer
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: libstreamanalyzer
 name: Libstreamanalyzer
 projectpath: kdesupport/strigi/libstreamanalyzer
 repoactive: true
-repopath: libstreamanalyzer
-type: project
+repopath: /unmaintained/libstreamanalyzer
diff --git a/projects-invent/unmaintained/libstreams/metadata.yaml b/projects-invent/unmaintained/libstreams/metadata.yaml
index 7841c1bf..20b85ff0 100644
--- a/projects-invent/unmaintained/libstreams/metadata.yaml
+++ b/projects-invent/unmaintained/libstreams/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi libstreams
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: libstreams
 name: Libstreams
 projectpath: kdesupport/strigi/libstreams
 repoactive: true
-repopath: libstreams
-type: project
+repopath: /unmaintained/libstreams
diff --git a/projects-invent/unmaintained/libtagaro/metadata.yaml b/projects-invent/unmaintained/libtagaro/metadata.yaml
index 85e7e9a7..b4ca9c86 100644
--- a/projects-invent/unmaintained/libtagaro/metadata.yaml
+++ b/projects-invent/unmaintained/libtagaro/metadata.yaml
@@ -1,12 +1,8 @@
 description: Replacement for libkdegames which will allow KDE games to scale to mobile
   form factors, and to fully take advantage of Qt 4 facilities.
 hasrepo: true
-icon: null
-members:
-- displayname: Stefan Majewsky
-  username: majewsky
+identifier: libtagaro
 name: libtagaro
 projectpath: unmaintained/libtagaro
 repoactive: true
-repopath: libtagaro
-type: project
+repopath: /unmaintained/libtagaro
diff --git a/projects-invent/unmaintained/lightdm/metadata.yaml b/projects-invent/unmaintained/lightdm/metadata.yaml
index 99f18746..fcf2505e 100644
--- a/projects-invent/unmaintained/lightdm/metadata.yaml
+++ b/projects-invent/unmaintained/lightdm/metadata.yaml
@@ -1,14 +1,8 @@
 description: "Login screen using the LightDM framework.\n \n* \"LightDM project\"\
   :https://launchpad.net/lightdm\n* \"Bug Tracker\":https://bugs.kde.org/describecomponents.cgi?product=lightdm"
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
+identifier: lightdm
 name: LightDM Greeter by KDE
 projectpath: playground/base/lightdm
 repoactive: true
-repopath: lightdm
-type: project
+repopath: /unmaintained/lightdm
diff --git a/projects-invent/unmaintained/macports-kde/metadata.yaml b/projects-invent/unmaintained/macports-kde/metadata.yaml
index 31c814a5..077e23a1 100644
--- a/projects-invent/unmaintained/macports-kde/metadata.yaml
+++ b/projects-invent/unmaintained/macports-kde/metadata.yaml
@@ -8,18 +8,8 @@ description: "This repository shall support KDE software development:\n\n* It co
   \ \n\n* Additionally it hosts useful configuration files for MacPorts users.\n\n\
   \nPatches welcome anytime!"
 hasrepo: true
-icon: null
-members:
-- displayname: RJVB Bertin
-  username: rjvbb
-- displayname: Mario Fux
-  username: fux
-- displayname: Ian Wadham
-  username: ianw
-- displayname: "Marko K\xE4ning"
-  username: kaning
+identifier: macports-kde
 name: MacPorts/KDE testing repository
 projectpath: playground/sdk/macports-kde
 repoactive: false
-repopath: macports-kde
-type: project
+repopath: /unmaintained/macports-kde
diff --git a/projects-invent/unmaintained/metadata.yaml b/projects-invent/unmaintained/metadata.yaml
index 764d9fde..a909b7a0 100644
--- a/projects-invent/unmaintained/metadata.yaml
+++ b/projects-invent/unmaintained/metadata.yaml
@@ -1,9 +1,7 @@
 description: All projects here are unmaintained, and looking for a good home.
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Unmaintained Projects
 projectpath: unmaintained
 repoactive: false
-repopath: null
-type: component
+repopath: /unmaintained
diff --git a/projects-invent/unmaintained/ministro/metadata.yaml b/projects-invent/unmaintained/ministro/metadata.yaml
index 3c30e97f..4d294de2 100644
--- a/projects-invent/unmaintained/ministro/metadata.yaml
+++ b/projects-invent/unmaintained/ministro/metadata.yaml
@@ -1,15 +1,7 @@
 description: Ministro is system wide library installer/provider for android platform.
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ray Donnelly
-  username: rdonnelly
-- displayname: Eskil Abrahamsen Blomfeldt
-  username: eskilabrahamsenblomfeldt
+identifier: ministro
 name: Ministro
 projectpath: unmaintained/necessitas/ministro
 repoactive: false
-repopath: ministro
-type: project
+repopath: /unmaintained/ministro
diff --git a/projects-invent/unmaintained/mplayerthumbs/metadata.yaml b/projects-invent/unmaintained/mplayerthumbs/metadata.yaml
index b05f0b00..688e9d81 100644
--- a/projects-invent/unmaintained/mplayerthumbs/metadata.yaml
+++ b/projects-invent/unmaintained/mplayerthumbs/metadata.yaml
@@ -1,11 +1,7 @@
 description: MPlayer based thumbnail generator for video files.
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: mplayerthumbs
 name: MPlayer Thumbnailer
 projectpath: unmaintained/mplayerthumbs
 repoactive: true
-repopath: mplayerthumbs
-type: project
+repopath: /unmaintained/mplayerthumbs
diff --git a/projects-invent/unmaintained/mrdanga-player/metadata.yaml b/projects-invent/unmaintained/mrdanga-player/metadata.yaml
index 77fbe7f9..dc2f880a 100644
--- a/projects-invent/unmaintained/mrdanga-player/metadata.yaml
+++ b/projects-invent/unmaintained/mrdanga-player/metadata.yaml
@@ -1,11 +1,7 @@
 description: Player for a percussion instrument from India of ancient origin.
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: mrdanga-player
 name: Mrdanga Player
 projectpath: unmaintained/mrdanga-player
 repoactive: true
-repopath: mrdanga-player
-type: project
+repopath: /unmaintained/mrdanga-player
diff --git a/projects-invent/unmaintained/mula/metadata.yaml b/projects-invent/unmaintained/mula/metadata.yaml
index 9717dc05..f03d7ae2 100644
--- a/projects-invent/unmaintained/mula/metadata.yaml
+++ b/projects-invent/unmaintained/mula/metadata.yaml
@@ -1,12 +1,8 @@
 description: Multi Language Dictionary with online, offline dictionary, translation
   and text-to-speech support.
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: mula
 name: Mula
 projectpath: unmaintained/mula
 repoactive: true
-repopath: mula
-type: project
+repopath: /unmaintained/mula
diff --git a/projects-invent/unmaintained/necessitas-installer-framework/metadata.yaml b/projects-invent/unmaintained/necessitas-installer-framework/metadata.yaml
index a6a019d6..1e56ec37 100644
--- a/projects-invent/unmaintained/necessitas-installer-framework/metadata.yaml
+++ b/projects-invent/unmaintained/necessitas-installer-framework/metadata.yaml
@@ -1,13 +1,7 @@
 description: Qt's Installer Framework with a few custom patches
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ray Donnelly
-  username: rdonnelly
+identifier: necessitas-installer-framework
 name: Necessitas Installer Framework
 projectpath: unmaintained/necessitas/necessitas-installer-framework
 repoactive: true
-repopath: necessitas-installer-framework
-type: project
+repopath: /unmaintained/necessitas-installer-framework
diff --git a/projects-invent/unmaintained/necessitas-tools/metadata.yaml b/projects-invent/unmaintained/necessitas-tools/metadata.yaml
index 116d8d39..042f3e07 100644
--- a/projects-invent/unmaintained/necessitas-tools/metadata.yaml
+++ b/projects-invent/unmaintained/necessitas-tools/metadata.yaml
@@ -1,15 +1,7 @@
 description: Tools and scripts used to build Necessitas SDK.
 hasrepo: true
-icon: null
-members:
-- displayname: Eskil Abrahamsen Blomfeldt
-  username: eskilabrahamsenblomfeldt
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ray Donnelly
-  username: rdonnelly
+identifier: necessitas-tools
 name: Necessitas tools and scripts
 projectpath: unmaintained/necessitas/necessitas-tools
 repoactive: true
-repopath: necessitas-tools
-type: project
+repopath: /unmaintained/necessitas-tools
diff --git a/projects-invent/unmaintained/nepomuk-core/metadata.yaml b/projects-invent/unmaintained/nepomuk-core/metadata.yaml
index 42e24d57..3daa6eae 100644
--- a/projects-invent/unmaintained/nepomuk-core/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-core/metadata.yaml
@@ -5,14 +5,8 @@ description: 'The core Nepomuk system contains of the central services like file
 
   This is a compile time dependency for kde-runtime.'
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: Sebastian Trueg
-  username: trueg
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: nepomuk-core
 name: Nepomuk Core
 projectpath: unmaintained/nepomuk-core
 repoactive: true
-repopath: nepomuk-core
-type: project
+repopath: /unmaintained/nepomuk-core
diff --git a/projects-invent/unmaintained/nepomuk-system-tray/metadata.yaml b/projects-invent/unmaintained/nepomuk-system-tray/metadata.yaml
index 9d108f7e..731f7870 100644
--- a/projects-invent/unmaintained/nepomuk-system-tray/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-system-tray/metadata.yaml
@@ -14,12 +14,8 @@ description: 'More enchanced system tray for Nepomuk.
 
   # . Plasma applet, uses mentioned above DataEngine. Good designer is vitally needed.'
 hasrepo: true
-icon: null
-members:
-- displayname: Artem Serebriyskiy
-  username: artemserebriyskiy
+identifier: nepomuk-system-tray
 name: Nepomuk System Tray
 projectpath: unmaintained/nepomuk-system-tray
 repoactive: true
-repopath: nepomuk-system-tray
-type: project
+repopath: /unmaintained/nepomuk-system-tray
diff --git a/projects-invent/unmaintained/nepomuk-tools/metadata.yaml b/projects-invent/unmaintained/nepomuk-tools/metadata.yaml
index a7b7d50d..ad375e55 100644
--- a/projects-invent/unmaintained/nepomuk-tools/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-tools/metadata.yaml
@@ -1,12 +1,8 @@
 description: 'Collection of nepomuk development tools(mostly command line): working
   with nepomuk server, services and so on'
 hasrepo: true
-icon: null
-members:
-- displayname: Artem Serebriyskiy
-  username: artemserebriyskiy
+identifier: nepomuk-tools
 name: Collection of nepomuk development tools
 projectpath: unmaintained/nepomuk-tools
 repoactive: true
-repopath: nepomuk-tools
-type: project
+repopath: /unmaintained/nepomuk-tools
diff --git a/projects-invent/unmaintained/nepomuk-web-extractor/metadata.yaml b/projects-invent/unmaintained/nepomuk-web-extractor/metadata.yaml
index 581ee514..62b2f46d 100644
--- a/projects-invent/unmaintained/nepomuk-web-extractor/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-web-extractor/metadata.yaml
@@ -2,12 +2,8 @@ description: 'Extract information for Nepomuk resources from various locations.
 
   More information is available in following wiki pages: [[https://techbase.kde.org/Projects/Nepomuk/WebExtractor]]'
 hasrepo: true
-icon: null
-members:
-- displayname: Artem Serebriyskiy
-  username: artemserebriyskiy
+identifier: nepomuk-web-extractor
 name: Nepomuk Web Extractor
 projectpath: unmaintained/nepomuk-web-extractor
 repoactive: true
-repopath: nepomuk-web-extractor
-type: project
+repopath: /unmaintained/nepomuk-web-extractor
diff --git a/projects-invent/unmaintained/nepomuk-webminer/metadata.yaml b/projects-invent/unmaintained/nepomuk-webminer/metadata.yaml
index 4588ca87..abac67c2 100644
--- a/projects-invent/unmaintained/nepomuk-webminer/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-webminer/metadata.yaml
@@ -10,14 +10,8 @@ description: "p. Finds additional metadata on the internet (via Python plugins)
   \ how to write them.\n\np. Currently available plugins:\n# imdb\n# tvdb\n# microsoft\
   \ academics\n# springerlink\n# nature\n \nh2. Resources"
 hasrepo: true
-icon: null
-members:
-- displayname: "J\xF6rg Ehrichs"
-  username: jehrichs
-- displayname: Ignacio Serantes
-  username: serantes
+identifier: nepomuk-webminer
 name: Nepomuk Webminer
 projectpath: unmaintained/nepomuk-webminer
 repoactive: true
-repopath: nepomuk-webminer
-type: project
+repopath: /unmaintained/nepomuk-webminer
diff --git a/projects-invent/unmaintained/nepomuk-widgets/metadata.yaml b/projects-invent/unmaintained/nepomuk-widgets/metadata.yaml
index ccdde37f..ef12b890 100644
--- a/projects-invent/unmaintained/nepomuk-widgets/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuk-widgets/metadata.yaml
@@ -1,13 +1,7 @@
 description: The Library containing the Nepomuk Widgets.
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: Vishesh Handa
-  username: vhanda
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: nepomuk-widgets
 name: Nepomuk Widgets Library
 projectpath: unmaintained/nepomuk-widgets
 repoactive: true
-repopath: nepomuk-widgets
-type: project
+repopath: /unmaintained/nepomuk-widgets
diff --git a/projects-invent/unmaintained/nepomukannotation/metadata.yaml b/projects-invent/unmaintained/nepomukannotation/metadata.yaml
index 6101df4d..4a421cfd 100644
--- a/projects-invent/unmaintained/nepomukannotation/metadata.yaml
+++ b/projects-invent/unmaintained/nepomukannotation/metadata.yaml
@@ -1,11 +1,7 @@
 description: A library and a set of tools that provide annotation suggestions.
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: nepomukannotation
 name: Nepomuk Annotation Framework
 projectpath: unmaintained/nepomukannotation
 repoactive: true
-repopath: nepomukannotation
-type: project
+repopath: /unmaintained/nepomukannotation
diff --git a/projects-invent/unmaintained/nepomukextras/metadata.yaml b/projects-invent/unmaintained/nepomukextras/metadata.yaml
index cfd04b9d..78d3727c 100644
--- a/projects-invent/unmaintained/nepomukextras/metadata.yaml
+++ b/projects-invent/unmaintained/nepomukextras/metadata.yaml
@@ -1,11 +1,7 @@
 description: A set of convinience classes for the Nepomuk semantic desktop.
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: nepomukextras
 name: Nepomuk Extras
 projectpath: unmaintained/nepomukextras
 repoactive: true
-repopath: nepomukextras
-type: project
+repopath: /unmaintained/nepomukextras
diff --git a/projects-invent/unmaintained/nepomukshell/metadata.yaml b/projects-invent/unmaintained/nepomukshell/metadata.yaml
index fa219d7b..481222d7 100644
--- a/projects-invent/unmaintained/nepomukshell/metadata.yaml
+++ b/projects-invent/unmaintained/nepomukshell/metadata.yaml
@@ -2,14 +2,8 @@ description: "NepSaK - The Nepomuk Swiss Army Knife aka. NepomukShell is a maint
   \ and debugging tool intended for developers. \n\nIt allows to browse, query, and\
   \ edit Nepomuk resources."
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: nepomukshell
 name: Nepomuk Shell
 projectpath: unmaintained/nepomukshell
 repoactive: true
-repopath: nepomukshell
-type: project
+repopath: /unmaintained/nepomukshell
diff --git a/projects-invent/unmaintained/nepomuktvnamer/metadata.yaml b/projects-invent/unmaintained/nepomuktvnamer/metadata.yaml
index 57a48539..339ffb4b 100644
--- a/projects-invent/unmaintained/nepomuktvnamer/metadata.yaml
+++ b/projects-invent/unmaintained/nepomuktvnamer/metadata.yaml
@@ -1,12 +1,8 @@
 description: A command line tool, service, and desktop action to fetch information
   about TV Shows from thetvdb.com and store it into Nepomuk.
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: nepomuktvnamer
 name: Nepomuk TV Namer
 projectpath: unmaintained/nepomuktvnamer
 repoactive: true
-repopath: nepomuktvnamer
-type: project
+repopath: /unmaintained/nepomuktvnamer
diff --git a/projects-invent/unmaintained/networkmanagement/metadata.yaml b/projects-invent/unmaintained/networkmanagement/metadata.yaml
index 136084b1..1eacb152 100644
--- a/projects-invent/unmaintained/networkmanagement/metadata.yaml
+++ b/projects-invent/unmaintained/networkmanagement/metadata.yaml
@@ -1,17 +1,7 @@
 description: Control panel and widget network connections.
 hasrepo: true
-icon: networkmanager
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Johannes Obermayr
-  username: jobermayr
-- displayname: Will Stephenson
-  username: wstephens
-- displayname: Lamarque Souza
-  username: lvsouza
+identifier: networkmanagement
 name: Network Management
 projectpath: unmaintained/networkmanagement
 repoactive: true
-repopath: networkmanagement
-type: project
+repopath: /unmaintained/networkmanagement
diff --git a/projects-invent/unmaintained/notably/metadata.yaml b/projects-invent/unmaintained/notably/metadata.yaml
index 9a490e33..01265a06 100644
--- a/projects-invent/unmaintained/notably/metadata.yaml
+++ b/projects-invent/unmaintained/notably/metadata.yaml
@@ -1,11 +1,7 @@
 description: A semantic note taking application based on the Nepomuk framework.
 hasrepo: true
-icon: null
-members:
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: notably
 name: Notably
 projectpath: unmaintained/notably
 repoactive: false
-repopath: notably
-type: project
+repopath: /unmaintained/notably
diff --git a/projects-invent/unmaintained/notificationsurvey/metadata.yaml b/projects-invent/unmaintained/notificationsurvey/metadata.yaml
index 620ac73a..e113ba70 100644
--- a/projects-invent/unmaintained/notificationsurvey/metadata.yaml
+++ b/projects-invent/unmaintained/notificationsurvey/metadata.yaml
@@ -1,13 +1,7 @@
 description: For more information, see https://community.kde.org/Elegance/Notification_Study
 hasrepo: true
-icon: null
-members:
-- displayname: Matt Rogers
-  username: mattr
-- displayname: Celeste Lyn Paul
-  username: seele
+identifier: notificationsurvey
 name: Notification Survey
 projectpath: unmaintained/notificationsurvey
 repoactive: true
-repopath: notificationsurvey
-type: project
+repopath: /unmaintained/notificationsurvey
diff --git a/projects-invent/unmaintained/osx-patches/metadata.yaml b/projects-invent/unmaintained/osx-patches/metadata.yaml
index 36da6d3b..0ae6228d 100644
--- a/projects-invent/unmaintained/osx-patches/metadata.yaml
+++ b/projects-invent/unmaintained/osx-patches/metadata.yaml
@@ -1,11 +1,7 @@
 description: Fixes for KDE problems that occur on Apple OS X
 hasrepo: true
-icon: null
-members:
-- displayname: Ian Wadham
-  username: ianw
+identifier: osx-patches
 name: KDE fixes for Apple OS X
 projectpath: playground/base/osx-patches
 repoactive: true
-repopath: osx-patches
-type: project
+repopath: /unmaintained/osx-patches
diff --git a/projects-invent/unmaintained/oxygen-fonts/metadata.yaml b/projects-invent/unmaintained/oxygen-fonts/metadata.yaml
index d0d5cb76..95f806af 100644
--- a/projects-invent/unmaintained/oxygen-fonts/metadata.yaml
+++ b/projects-invent/unmaintained/oxygen-fonts/metadata.yaml
@@ -1,18 +1,8 @@
 description: The Oxygen font family. A desktop/gui font family for integrated use
   with the KDE desktop.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Nuno Fernades Pinheiro
-  username: pinheiro
-- displayname: Eike Hein
-  username: hein
-- displayname: vernon adams
-  username: vernonadams
+identifier: oxygen-fonts
 name: Oxygen fonts
 projectpath: unmaintained/oxygen-fonts
 repoactive: true
-repopath: oxygen-fonts
-type: project
+repopath: /unmaintained/oxygen-fonts
diff --git a/projects-invent/unmaintained/oxygen-transparent/metadata.yaml b/projects-invent/unmaintained/oxygen-transparent/metadata.yaml
index 9a93fff9..eb166a45 100644
--- a/projects-invent/unmaintained/oxygen-transparent/metadata.yaml
+++ b/projects-invent/unmaintained/oxygen-transparent/metadata.yaml
@@ -24,12 +24,8 @@ description: 'Oxygen-transparent is a fork of the default KDE widget and window
   However, due to the minimal amount of code added on top of the original code, it
   is kept synchronized with the official theme and provides as many features.'
 hasrepo: true
-icon: null
-members:
-- displayname: Hugo Pereira Da Costa
-  username: hpereiradacosta
+identifier: oxygen-transparent
 name: Oxygen Transparent
 projectpath: unmaintained/oxygen-transparent
 repoactive: true
-repopath: oxygen-transparent
-type: project
+repopath: /unmaintained/oxygen-transparent
diff --git a/projects-invent/unmaintained/pairs/metadata.yaml b/projects-invent/unmaintained/pairs/metadata.yaml
index 7014c9f9..045624bf 100644
--- a/projects-invent/unmaintained/pairs/metadata.yaml
+++ b/projects-invent/unmaintained/pairs/metadata.yaml
@@ -1,13 +1,7 @@
 description: A memory and pairs game by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Calignano
-  username: calignano
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: pairs
 name: Pairs
 projectpath: unmaintained/pairs
 repoactive: false
-repopath: pairs
-type: project
+repopath: /unmaintained/pairs
diff --git a/projects-invent/unmaintained/perlkde/metadata.yaml b/projects-invent/unmaintained/perlkde/metadata.yaml
index 6781422b..79f910c1 100644
--- a/projects-invent/unmaintained/perlkde/metadata.yaml
+++ b/projects-invent/unmaintained/perlkde/metadata.yaml
@@ -1,11 +1,7 @@
 description: Perl bindings for libraries created by the KDE community.
 hasrepo: true
-icon: null
-members:
-- displayname: Chris Michael Burel
-  username: burel
+identifier: perlkde
 name: PerlKDE
 projectpath: kde/kdebindings/perl/perlkde
 repoactive: true
-repopath: perlkde
-type: project
+repopath: /unmaintained/perlkde
diff --git a/projects-invent/unmaintained/perlqt/metadata.yaml b/projects-invent/unmaintained/perlqt/metadata.yaml
index 7d531a09..84c55a51 100644
--- a/projects-invent/unmaintained/perlqt/metadata.yaml
+++ b/projects-invent/unmaintained/perlqt/metadata.yaml
@@ -1,11 +1,7 @@
 description: Perl bindings for the Qt libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Chris Michael Burel
-  username: burel
+identifier: perlqt
 name: PerlQt
 projectpath: kde/kdebindings/perl/perlqt
 repoactive: true
-repopath: perlqt
-type: project
+repopath: /unmaintained/perlqt
diff --git a/projects-invent/unmaintained/person-viewer/metadata.yaml b/projects-invent/unmaintained/person-viewer/metadata.yaml
index 06bbe50c..3ec5d927 100644
--- a/projects-invent/unmaintained/person-viewer/metadata.yaml
+++ b/projects-invent/unmaintained/person-viewer/metadata.yaml
@@ -1,15 +1,7 @@
 description: Simple address book application displaying info about aggregated contacts
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: Martin Klapetek
-  username: mklapetek
+identifier: person-viewer
 name: Address book based on KPeople
 projectpath: playground/pim/person-viewer
 repoactive: true
-repopath: person-viewer
-type: project
+repopath: /unmaintained/person-viewer
diff --git a/projects-invent/unmaintained/phoneblocker/metadata.yaml b/projects-invent/unmaintained/phoneblocker/metadata.yaml
index bbc9d283..448d42d3 100644
--- a/projects-invent/unmaintained/phoneblocker/metadata.yaml
+++ b/projects-invent/unmaintained/phoneblocker/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application for blocking unwanted calls and messages on your Blackberry.
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: phoneblocker
 name: Phone Blocker for BlackBerry
 projectpath: unmaintained/phoneblocker
 repoactive: true
-repopath: phoneblocker
-type: project
+repopath: /unmaintained/phoneblocker
diff --git a/projects-invent/unmaintained/phonon-directshow/metadata.yaml b/projects-invent/unmaintained/phonon-directshow/metadata.yaml
index d5d84550..ce2528dc 100644
--- a/projects-invent/unmaintained/phonon-directshow/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-directshow/metadata.yaml
@@ -1,13 +1,7 @@
 description: A DirectShow backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: Harald Sitter
-  username: sitter
+identifier: phonon-directshow
 name: Phonon DirectShow
 projectpath: unmaintained/phonon-directshow
 repoactive: true
-repopath: phonon-directshow
-type: project
+repopath: /unmaintained/phonon-directshow
diff --git a/projects-invent/unmaintained/phonon-mmf/metadata.yaml b/projects-invent/unmaintained/phonon-mmf/metadata.yaml
index a972cbf2..99b18af5 100644
--- a/projects-invent/unmaintained/phonon-mmf/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-mmf/metadata.yaml
@@ -1,14 +1,8 @@
 description: A MMF (Multimedia Framework Architecture) backend for the Phonon multimedia
   library.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: Harald Sitter
-  username: sitter
+identifier: phonon-mmf
 name: Phonon MMF
 projectpath: unmaintained/phonon-mmf
 repoactive: true
-repopath: phonon-mmf
-type: project
+repopath: /unmaintained/phonon-mmf
diff --git a/projects-invent/unmaintained/phonon-mplayer/metadata.yaml b/projects-invent/unmaintained/phonon-mplayer/metadata.yaml
index e3992c26..c3c9a7eb 100644
--- a/projects-invent/unmaintained/phonon-mplayer/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-mplayer/metadata.yaml
@@ -1,13 +1,7 @@
 description: A MPlayer backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: phonon-mplayer
 name: Phonon MPlayer
 projectpath: unmaintained/phonon-mplayer
 repoactive: true
-repopath: phonon-mplayer
-type: project
+repopath: /unmaintained/phonon-mplayer
diff --git a/projects-invent/unmaintained/phonon-quicktime/metadata.yaml b/projects-invent/unmaintained/phonon-quicktime/metadata.yaml
index 51b09411..81805a92 100644
--- a/projects-invent/unmaintained/phonon-quicktime/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-quicktime/metadata.yaml
@@ -1,13 +1,7 @@
 description: A QuickTime backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: phonon-quicktime
 name: Phonon QuickTime
 projectpath: unmaintained/phonon-quicktime
 repoactive: true
-repopath: phonon-quicktime
-type: project
+repopath: /unmaintained/phonon-quicktime
diff --git a/projects-invent/unmaintained/phonon-waveout/metadata.yaml b/projects-invent/unmaintained/phonon-waveout/metadata.yaml
index 795f529b..6406d573 100644
--- a/projects-invent/unmaintained/phonon-waveout/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-waveout/metadata.yaml
@@ -1,13 +1,7 @@
 description: A WaveOut backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
-- displayname: Harald Sitter
-  username: sitter
+identifier: phonon-waveout
 name: Phonon WaveOut
 projectpath: unmaintained/phonon-waveout
 repoactive: true
-repopath: phonon-waveout
-type: project
+repopath: /unmaintained/phonon-waveout
diff --git a/projects-invent/unmaintained/phonon-xine/metadata.yaml b/projects-invent/unmaintained/phonon-xine/metadata.yaml
index e4db56ef..6815b216 100644
--- a/projects-invent/unmaintained/phonon-xine/metadata.yaml
+++ b/projects-invent/unmaintained/phonon-xine/metadata.yaml
@@ -1,13 +1,7 @@
 description: A Xine backend for the Phonon multimedia library.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: phonon-xine
 name: Phonon Xine
 projectpath: unmaintained/phonon-xine
 repoactive: true
-repopath: phonon-xine
-type: project
+repopath: /unmaintained/phonon-xine
diff --git a/projects-invent/unmaintained/photobook/metadata.yaml b/projects-invent/unmaintained/photobook/metadata.yaml
index 55b0e4b0..36d8b4b1 100644
--- a/projects-invent/unmaintained/photobook/metadata.yaml
+++ b/projects-invent/unmaintained/photobook/metadata.yaml
@@ -1,11 +1,7 @@
 description: An application to manage your photos
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: photobook
 name: PhotoBook
 projectpath: unmaintained/photobook
 repoactive: true
-repopath: photobook
-type: project
+repopath: /unmaintained/photobook
diff --git a/projects-invent/unmaintained/pim-storage-service-manager/metadata.yaml b/projects-invent/unmaintained/pim-storage-service-manager/metadata.yaml
index e9d27200..358aea43 100644
--- a/projects-invent/unmaintained/pim-storage-service-manager/metadata.yaml
+++ b/projects-invent/unmaintained/pim-storage-service-manager/metadata.yaml
@@ -1,11 +1,8 @@
-description: Assistant to help with managing external and cloud data storage providers such as Owncloud and Google Drive.
+description: Assistant to help with managing external and cloud data storage providers
+  such as Owncloud and Google Drive.
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: pim-storage-service-manager
 name: PIM Storage Service Manager
 projectpath: unmaintained/pim-storage-service-manager
 repoactive: true
-repopath: pim-storage-service-manager
-type: project
+repopath: /unmaintained/pim-storage-service-manager
diff --git a/projects-invent/unmaintained/plasma-active-kickstart/metadata.yaml b/projects-invent/unmaintained/plasma-active-kickstart/metadata.yaml
index 6dbce390..65cef362 100644
--- a/projects-invent/unmaintained/plasma-active-kickstart/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-active-kickstart/metadata.yaml
@@ -1,12 +1,8 @@
 description: Repository of Kickstart and Yaml files used to create filesystem images
   of Plasma Active device adaptations
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: plasma-active-kickstart
 name: Plasma Active Kickstart
 projectpath: unmaintained/plasma-active-kickstart
 repoactive: true
-repopath: plasma-active-kickstart
-type: project
+repopath: /unmaintained/plasma-active-kickstart
diff --git a/projects-invent/unmaintained/plasma-active-maliit/metadata.yaml b/projects-invent/unmaintained/plasma-active-maliit/metadata.yaml
index 843258bf..cd463c08 100644
--- a/projects-invent/unmaintained/plasma-active-maliit/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-active-maliit/metadata.yaml
@@ -1,12 +1,8 @@
 description: QML plugin for the Maliit vitual keyboard using KDE Plasma components,
   intended to be used in Plasma Active
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: plasma-active-maliit
 name: Plasma Active Maliit plugin
 projectpath: playground/base/plasma-active-maliit
 repoactive: true
-repopath: plasma-active-maliit
-type: project
+repopath: /unmaintained/plasma-active-maliit
diff --git a/projects-invent/unmaintained/plasma-crystal/metadata.yaml b/projects-invent/unmaintained/plasma-crystal/metadata.yaml
index 276c33f3..f10a4f91 100644
--- a/projects-invent/unmaintained/plasma-crystal/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-crystal/metadata.yaml
@@ -1,12 +1,8 @@
 description: A widget that can be used as search widget, or alternative file-open
   mechanism
 hasrepo: true
-icon: nepomuk
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-crystal
 name: Plasma Desktop Search Widget
 projectpath: unmaintained/plasma-crystal
 repoactive: true
-repopath: plasma-crystal
-type: project
+repopath: /unmaintained/plasma-crystal
diff --git a/projects-invent/unmaintained/plasma-lionmail/metadata.yaml b/projects-invent/unmaintained/plasma-lionmail/metadata.yaml
index 9ca60321..f1c93f8a 100644
--- a/projects-invent/unmaintained/plasma-lionmail/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-lionmail/metadata.yaml
@@ -1,11 +1,7 @@
 description: A Plasma widget displaying new and important email
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-lionmail
 name: Lionmail Email Notifier
 projectpath: unmaintained/plasma-lionmail
 repoactive: true
-repopath: plasma-lionmail
-type: project
+repopath: /unmaintained/plasma-lionmail
diff --git a/projects-invent/unmaintained/plasma-mediacenter/metadata.yaml b/projects-invent/unmaintained/plasma-mediacenter/metadata.yaml
index 9120d5b1..a8d0b490 100644
--- a/projects-invent/unmaintained/plasma-mediacenter/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-mediacenter/metadata.yaml
@@ -3,28 +3,8 @@ description: h3. Plasma Media Center is designed to provide an easy and comforta
   all in one place. This release brings many refinements and a host of new features,
   making consuming media even easier and more fun.
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Sinny Kumari
-  username: sinnykumari
-- displayname: Shantanu Tushar
-  username: shantanu
-- displayname: Bhushan Shah
-  username: bshah
-- displayname: Ashish Madeti
-  username: madeti
-- displayname: Nikolaos Chatzidakis
-  username: nchatzidakis
-- displayname: Sujith Haridasan
-  username: sujithh
-- displayname: R.Harish  Navnit
-  username: rharishnavnit
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: plasma-mediacenter
 name: Plasma Media Center
 projectpath: unmaintained/plasma-mediacenter
 repoactive: true
-repopath: plasma-mediacenter
-type: project
+repopath: /unmaintained/plasma-mediacenter
diff --git a/projects-invent/unmaintained/plasma-mobile-config/metadata.yaml b/projects-invent/unmaintained/plasma-mobile-config/metadata.yaml
index 4ac1df79..48774aa4 100644
--- a/projects-invent/unmaintained/plasma-mobile-config/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-mobile-config/metadata.yaml
@@ -1,15 +1,7 @@
 description: Generic as well as device-specific configuration for Plasma Active installations.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Marco Martin
-  username: mart
+identifier: plasma-mobile-config
 name: Configuration data for Plasma Active
 projectpath: unmaintained/plasma-mobile-config
 repoactive: true
-repopath: plasma-mobile-config
-type: project
+repopath: /unmaintained/plasma-mobile-config
diff --git a/projects-invent/unmaintained/plasma-mobile-design-docs/metadata.yaml b/projects-invent/unmaintained/plasma-mobile-design-docs/metadata.yaml
index 7f61fb45..924f2ce9 100644
--- a/projects-invent/unmaintained/plasma-mobile-design-docs/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-mobile-design-docs/metadata.yaml
@@ -1,13 +1,7 @@
 description: Design documents for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: plasma-mobile-design-docs
 name: Design documents for Plasma Mobile
 projectpath: unmaintained/plasma-mobile-design-docs
 repoactive: false
-repopath: plasma-mobile-design-docs
-type: project
+repopath: /unmaintained/plasma-mobile-design-docs
diff --git a/projects-invent/unmaintained/plasma-mobile/metadata.yaml b/projects-invent/unmaintained/plasma-mobile/metadata.yaml
index 52d6971a..50b142f8 100644
--- a/projects-invent/unmaintained/plasma-mobile/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-mobile/metadata.yaml
@@ -1,16 +1,8 @@
 description: A complete Plasma workspace targeted from small handheld devices to larger
   tablets.
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Artur Duque de Souza
-  username: asouza
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: plasma-mobile
 name: Plasma mobile shell
 projectpath: extragear/base/plasma-mobile
 repoactive: true
-repopath: plasma-mobile
-type: project
+repopath: /unmaintained/plasma-mobile
diff --git a/projects-invent/unmaintained/plasma-systemd-integration/metadata.yaml b/projects-invent/unmaintained/plasma-systemd-integration/metadata.yaml
index ce889b11..30cb03f7 100644
--- a/projects-invent/unmaintained/plasma-systemd-integration/metadata.yaml
+++ b/projects-invent/unmaintained/plasma-systemd-integration/metadata.yaml
@@ -1,13 +1,7 @@
 description: Integration of Plasma Workspace and various modules with systemd
 hasrepo: true
-icon: null
-members:
-- displayname: Bhushan Shah
-  username: bshah
-- displayname: Elias Probst
-  username: eliasp
+identifier: plasma-systemd-integration
 name: Plasma systemd integration
 projectpath: unmaintained/plasma-systemd-integration
 repoactive: true
-repopath: plasma-systemd-integration
-type: project
+repopath: /unmaintained/plasma-systemd-integration
diff --git a/projects-invent/unmaintained/plasmate/metadata.yaml b/projects-invent/unmaintained/plasmate/metadata.yaml
index 3df5267b..e6107157 100644
--- a/projects-invent/unmaintained/plasmate/metadata.yaml
+++ b/projects-invent/unmaintained/plasmate/metadata.yaml
@@ -1,11 +1,7 @@
 description: Plasma Applet Development Environment
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: plasmate
 name: Plasmate
 projectpath: playground/sdk/plasmate
 repoactive: true
-repopath: plasmate
-type: project
+repopath: /unmaintained/plasmate
diff --git a/projects-invent/unmaintained/plasmoid-eventlist/metadata.yaml b/projects-invent/unmaintained/plasmoid-eventlist/metadata.yaml
index bfb82960..83ac9c4f 100644
--- a/projects-invent/unmaintained/plasmoid-eventlist/metadata.yaml
+++ b/projects-invent/unmaintained/plasmoid-eventlist/metadata.yaml
@@ -1,11 +1,7 @@
 description: A plasmoid to show your events and todos from Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: Gerd Fleischer
-  username: geflei
+identifier: plasmoid-eventlist
 name: Plasmoid for Akonadi
 projectpath: unmaintained/plasmoid-eventlist
 repoactive: true
-repopath: plasmoid-eventlist
-type: project
+repopath: /unmaintained/plasmoid-eventlist
diff --git a/projects-invent/unmaintained/polkit-kde-kcmodules-1/metadata.yaml b/projects-invent/unmaintained/polkit-kde-kcmodules-1/metadata.yaml
index a2a7f9a9..8533bfb3 100644
--- a/projects-invent/unmaintained/polkit-kde-kcmodules-1/metadata.yaml
+++ b/projects-invent/unmaintained/polkit-kde-kcmodules-1/metadata.yaml
@@ -5,16 +5,8 @@ description: 'Set of configuration modules which allows administrator to change
   Please be sure to read and follow "the polkit-KDE contribution and development guidelines":https://techbase.kde.org/Polkit-KDE_development_guidelines
   to contribute code.'
 hasrepo: true
-icon: null
-members:
-- displayname: "Jaroslav \u0158ezn\xEDk"
-  username: jreznik
-- displayname: Radek Novacek
-  username: rnovacek
-- displayname: Dario Freddi
-  username: dafre
+identifier: polkit-kde-kcmodules-1
 name: Polkit KDE Configuration
 projectpath: unmaintained/polkit-kde-kcmodules-1
 repoactive: true
-repopath: polkit-kde-kcmodules-1
-type: project
+repopath: /unmaintained/polkit-kde-kcmodules-1
diff --git a/projects-invent/unmaintained/printer-applet/metadata.yaml b/projects-invent/unmaintained/printer-applet/metadata.yaml
index f68a3003..d7596617 100644
--- a/projects-invent/unmaintained/printer-applet/metadata.yaml
+++ b/projects-invent/unmaintained/printer-applet/metadata.yaml
@@ -1,14 +1,8 @@
 description: Printer Applet is a system tray utility that shows current print jobs,
   shows printer warnings and errors.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: printer-applet
 name: Printer Applet
 projectpath: unmaintained/printer-applet
 repoactive: true
-repopath: printer-applet
-type: project
+repopath: /unmaintained/printer-applet
diff --git a/projects-invent/unmaintained/publictransport/metadata.yaml b/projects-invent/unmaintained/publictransport/metadata.yaml
index ea819651..00231d14 100644
--- a/projects-invent/unmaintained/publictransport/metadata.yaml
+++ b/projects-invent/unmaintained/publictransport/metadata.yaml
@@ -27,12 +27,8 @@ description: 'PublicTransport Applets, Runner, Data Engine & Tools.
   * *timetablemate:* A little IDE, that helps adding support for new service providers
   to the publictransport data engine'
 hasrepo: true
-icon: null
-members:
-- displayname: "Friedrich Karl Tilman P\xFClz"
-  username: fkpulz
+identifier: publictransport
 name: Plasma PublicTransport
 projectpath: playground/base/publictransport
 repoactive: true
-repopath: publictransport
-type: project
+repopath: /unmaintained/publictransport
diff --git a/projects-invent/unmaintained/pykde4/metadata.yaml b/projects-invent/unmaintained/pykde4/metadata.yaml
index 83c5139d..2833634b 100644
--- a/projects-invent/unmaintained/pykde4/metadata.yaml
+++ b/projects-invent/unmaintained/pykde4/metadata.yaml
@@ -1,11 +1,7 @@
 description: Python KDE bindings using PyQt4 SIP technology.
 hasrepo: true
-icon: null
-members:
-- displayname: Simon Edwards
-  username: sedwards
+identifier: pykde4
 name: PyKDE 4
 projectpath: kde/kdebindings/python/pykde4
 repoactive: true
-repopath: pykde4
-type: project
+repopath: /unmaintained/pykde4
diff --git a/projects-invent/unmaintained/qmlweb/metadata.yaml b/projects-invent/unmaintained/qmlweb/metadata.yaml
index 09936566..990dbaa9 100644
--- a/projects-invent/unmaintained/qmlweb/metadata.yaml
+++ b/projects-invent/unmaintained/qmlweb/metadata.yaml
@@ -1,11 +1,7 @@
 description: QmlWeb JavaScript Library
 hasrepo: true
-icon: null
-members:
-- displayname: Anton Kreuzkamp
-  username: akreuzkamp
+identifier: qmlweb
 name: QmlWeb
 projectpath: playground/www/qmlweb
 repoactive: true
-repopath: qmlweb
-type: project
+repopath: /unmaintained/qmlweb
diff --git a/projects-invent/unmaintained/qtatspi/metadata.yaml b/projects-invent/unmaintained/qtatspi/metadata.yaml
index 95542b5e..1508cb29 100644
--- a/projects-invent/unmaintained/qtatspi/metadata.yaml
+++ b/projects-invent/unmaintained/qtatspi/metadata.yaml
@@ -1,11 +1,7 @@
 description: Qt accessibility bridge plugin
 hasrepo: true
-icon: null
-members:
-- displayname: Frederik Gladhorn
-  username: gladhorn
+identifier: qtatspi
 name: Qt AT-SPI
 projectpath: unmaintained/qtatspi
 repoactive: true
-repopath: qtatspi
-type: project
+repopath: /unmaintained/qtatspi
diff --git a/projects-invent/unmaintained/qtruby/metadata.yaml b/projects-invent/unmaintained/qtruby/metadata.yaml
index 56285211..dcaf1af9 100644
--- a/projects-invent/unmaintained/qtruby/metadata.yaml
+++ b/projects-invent/unmaintained/qtruby/metadata.yaml
@@ -1,13 +1,7 @@
 description: Ruby bindings for the Qt libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: qtruby
 name: QtRuby
 projectpath: kde/kdebindings/ruby/qtruby
 repoactive: true
-repopath: qtruby
-type: project
+repopath: /unmaintained/qtruby
diff --git a/projects-invent/unmaintained/quanta/metadata.yaml b/projects-invent/unmaintained/quanta/metadata.yaml
index 142bc2f8..7230cd80 100644
--- a/projects-invent/unmaintained/quanta/metadata.yaml
+++ b/projects-invent/unmaintained/quanta/metadata.yaml
@@ -1,13 +1,7 @@
 description: Quanta, an IDE for Web Development based on the KDevelop Platform.
 hasrepo: true
-icon: null
-members:
-- displayname: Milian Wolff
-  username: mwolff
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: quanta
 name: Quanta
 projectpath: playground/devtools/quanta
 repoactive: true
-repopath: quanta
-type: project
+repopath: /unmaintained/quanta
diff --git a/projects-invent/unmaintained/qyoto/metadata.yaml b/projects-invent/unmaintained/qyoto/metadata.yaml
index 9f818e52..2a98d980 100644
--- a/projects-invent/unmaintained/qyoto/metadata.yaml
+++ b/projects-invent/unmaintained/qyoto/metadata.yaml
@@ -1,13 +1,7 @@
 description: .NET/Mono bindings for the Qt libraries.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: qyoto
 name: Qyoto
 projectpath: kde/kdebindings/csharp/qyoto
 repoactive: true
-repopath: qyoto
-type: project
+repopath: /unmaintained/qyoto
diff --git a/projects-invent/unmaintained/rekollect/metadata.yaml b/projects-invent/unmaintained/rekollect/metadata.yaml
index 30ee989d..cb336399 100644
--- a/projects-invent/unmaintained/rekollect/metadata.yaml
+++ b/projects-invent/unmaintained/rekollect/metadata.yaml
@@ -1,11 +1,7 @@
 description: A rich note-taking application.
 hasrepo: true
-icon: null
-members:
-- displayname: Jason Jackson
-  username: jackson
+identifier: rekollect
 name: Rekollect
 projectpath: unmaintained/rekollect
 repoactive: true
-repopath: rekollect
-type: project
+repopath: /unmaintained/rekollect
diff --git a/projects-invent/unmaintained/rekonq/metadata.yaml b/projects-invent/unmaintained/rekonq/metadata.yaml
index 39a4e93b..f9fc56f8 100644
--- a/projects-invent/unmaintained/rekonq/metadata.yaml
+++ b/projects-invent/unmaintained/rekonq/metadata.yaml
@@ -1,19 +1,7 @@
 description: rekonq is a web browser by KDE based on WebKit.
 hasrepo: true
-icon: null
-members:
-- displayname: Andrea Diamantini
-  username: adjam
-- displayname: Panagiotis Papadopoulos
-  username: pano
-- displayname: Lionel Chauvin
-  username: chauvin
-- displayname: Guillaume de Bure
-  username: gdebure
-- displayname: Rohan Garg
-  username: garg
+identifier: rekonq
 name: Rekonq
 projectpath: unmaintained/rekonq
 repoactive: true
-repopath: rekonq
-type: project
+repopath: /unmaintained/rekonq
diff --git a/projects-invent/unmaintained/release-buddy/metadata.yaml b/projects-invent/unmaintained/release-buddy/metadata.yaml
index c1272cb2..fe1b4872 100644
--- a/projects-invent/unmaintained/release-buddy/metadata.yaml
+++ b/projects-invent/unmaintained/release-buddy/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Release and Packaging System
 hasrepo: true
-icon: null
-members:
-- displayname: Allen Winter
-  username: winterz
+identifier: release-buddy
 name: Release Buddy
 projectpath: playground/utils/release-buddy
 repoactive: false
-repopath: release-buddy
-type: project
+repopath: /unmaintained/release-buddy
diff --git a/projects-invent/unmaintained/scribo/metadata.yaml b/projects-invent/unmaintained/scribo/metadata.yaml
index 4f9fb79d..91d3f473 100644
--- a/projects-invent/unmaintained/scribo/metadata.yaml
+++ b/projects-invent/unmaintained/scribo/metadata.yaml
@@ -1,12 +1,7 @@
-description: Natural Language Processing based on the Nepomuk semantic desktop
-  framework.
+description: Natural Language Processing based on the Nepomuk semantic desktop framework.
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Trueg
-  username: trueg
+identifier: scribo
 name: Scribo
 projectpath: unmaintained/scribo
 repoactive: true
-repopath: scribo
-type: project
+repopath: /unmaintained/scribo
diff --git a/projects-invent/unmaintained/sflphone-kde/metadata.yaml b/projects-invent/unmaintained/sflphone-kde/metadata.yaml
index 247bbcbf..688f13bc 100644
--- a/projects-invent/unmaintained/sflphone-kde/metadata.yaml
+++ b/projects-invent/unmaintained/sflphone-kde/metadata.yaml
@@ -1,12 +1,8 @@
 description: SFLPhone KDE is an enterprise class soft phone with integration with
   various KDE technologies such as Akonadi
 hasrepo: true
-icon: null
-members:
-- displayname: Emmanuel Lepage Vallee
-  username: lepagevalleeemmanuel
+identifier: sflphone-kde
 name: SFLPhone KDE telephony client
 projectpath: unmaintained/sflphone-kde
 repoactive: false
-repopath: sflphone-kde
-type: project
+repopath: /unmaintained/sflphone-kde
diff --git a/projects-invent/unmaintained/share-like-connect/metadata.yaml b/projects-invent/unmaintained/share-like-connect/metadata.yaml
index 5754eebe..1a4f569b 100644
--- a/projects-invent/unmaintained/share-like-connect/metadata.yaml
+++ b/projects-invent/unmaintained/share-like-connect/metadata.yaml
@@ -1,13 +1,7 @@
 description: A simple ubiquitous user interface for interacting with your data.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Marco Martin
-  username: mart
+identifier: share-like-connect
 name: "Share\xB7Like\xB7Connect"
 projectpath: unmaintained/share-like-connect
 repoactive: true
-repopath: share-like-connect
-type: project
+repopath: /unmaintained/share-like-connect
diff --git a/projects-invent/unmaintained/silk/metadata.yaml b/projects-invent/unmaintained/silk/metadata.yaml
index d2d73316..8df86901 100644
--- a/projects-invent/unmaintained/silk/metadata.yaml
+++ b/projects-invent/unmaintained/silk/metadata.yaml
@@ -1,14 +1,8 @@
 description: Utilities and libraries for the integration of online content and communication
   into the user experience.
 hasrepo: true
-icon: null
-members:
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
-- displayname: Richard Moore
-  username: rich
+identifier: silk
 name: Silk
 projectpath: unmaintained/silk
 repoactive: true
-repopath: silk
-type: project
+repopath: /unmaintained/silk
diff --git a/projects-invent/unmaintained/simon-tools/metadata.yaml b/projects-invent/unmaintained/simon-tools/metadata.yaml
index 14d18012..e62f3463 100644
--- a/projects-invent/unmaintained/simon-tools/metadata.yaml
+++ b/projects-invent/unmaintained/simon-tools/metadata.yaml
@@ -1,19 +1,7 @@
 description: Additional tools and utilities for simon
 hasrepo: true
-icon: null
-members:
-- displayname: Mario Fux
-  username: fux
-- displayname: Mathias Stieger
-  username: stieger
-- displayname: Frederik Gladhorn
-  username: gladhorn
-- displayname: Peter Grasch
-  username: grasch
-- displayname: Hannah von Reth
-  username: vonreth
+identifier: simon-tools
 name: 'simon Speech Recognition: Tools'
 projectpath: unmaintained/simon-tools
 repoactive: true
-repopath: simon-tools
-type: project
+repopath: /unmaintained/simon-tools
diff --git a/projects-invent/unmaintained/simon/metadata.yaml b/projects-invent/unmaintained/simon/metadata.yaml
index 44dd4875..238cad33 100644
--- a/projects-invent/unmaintained/simon/metadata.yaml
+++ b/projects-invent/unmaintained/simon/metadata.yaml
@@ -1,21 +1,7 @@
 description: Highly configurable, targeted speech recognition software
 hasrepo: true
-icon: null
-members:
-- displayname: Peter Grasch
-  username: grasch
-- displayname: Mathias Stieger
-  username: stieger
-- displayname: Frederik Gladhorn
-  username: gladhorn
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Adam Nash
-  username: adamnash
-- displayname: Mario Fux
-  username: fux
+identifier: simon
 name: Simon Speech Recognition
 projectpath: unmaintained/simon
 repoactive: true
-repopath: simon
-type: project
+repopath: /unmaintained/simon
diff --git a/projects-invent/unmaintained/smokegen/metadata.yaml b/projects-invent/unmaintained/smokegen/metadata.yaml
index cfcf1d88..e75ef784 100644
--- a/projects-invent/unmaintained/smokegen/metadata.yaml
+++ b/projects-invent/unmaintained/smokegen/metadata.yaml
@@ -6,14 +6,8 @@ description: 'A general purpose C++ parser with a plugin infrastructure enabling
   This repo also hosts the smokebase library, which is used by language bindings to
   interface with the SMOKE libraries, and the smokeapi introspection tool.'
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: smokegen
 name: smokegen
 projectpath: kde/kdebindings/smoke/smokegen
 repoactive: true
-repopath: smokegen
-type: project
+repopath: /unmaintained/smokegen
diff --git a/projects-invent/unmaintained/smokekde/metadata.yaml b/projects-invent/unmaintained/smokekde/metadata.yaml
index 86b95daf..35a8281b 100644
--- a/projects-invent/unmaintained/smokekde/metadata.yaml
+++ b/projects-invent/unmaintained/smokekde/metadata.yaml
@@ -1,14 +1,8 @@
 description: SMOKE bindings for libraries created by the KDE community. Used by language
   bindings.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: smokekde
 name: smokekde
 projectpath: kde/kdebindings/smoke/smokekde
 repoactive: true
-repopath: smokekde
-type: project
+repopath: /unmaintained/smokekde
diff --git a/projects-invent/unmaintained/smokeqt/metadata.yaml b/projects-invent/unmaintained/smokeqt/metadata.yaml
index b11d9b9e..2026bed9 100644
--- a/projects-invent/unmaintained/smokeqt/metadata.yaml
+++ b/projects-invent/unmaintained/smokeqt/metadata.yaml
@@ -1,13 +1,7 @@
 description: SMOKE bindings for the Qt libraries. Used by language bindings.
 hasrepo: true
-icon: null
-members:
-- displayname: Arno Rehn
-  username: arnorehn
-- displayname: Richard Dale
-  username: rdale
+identifier: smokeqt
 name: smokeqt
 projectpath: kde/kdebindings/smoke/smokeqt
 repoactive: true
-repopath: smokeqt
-type: project
+repopath: /unmaintained/smokeqt
diff --git a/projects-invent/unmaintained/solid-power/metadata.yaml b/projects-invent/unmaintained/solid-power/metadata.yaml
index 13a0902d..aeb27a80 100644
--- a/projects-invent/unmaintained/solid-power/metadata.yaml
+++ b/projects-invent/unmaintained/solid-power/metadata.yaml
@@ -1,13 +1,7 @@
 description: This framework is the single entry point for power management.
 hasrepo: true
-icon: null
-members:
-- displayname: Kai Uwe Broulik
-  username: broulik
-- displayname: "Luk\xE1\u0161 Tinkl"
-  username: lukas
+identifier: solid-power
 name: Solid Power
 projectpath: unmaintained/solid-power
 repoactive: true
-repopath: solid-power
-type: project
+repopath: /unmaintained/solid-power
diff --git a/projects-invent/unmaintained/soprano/metadata.yaml b/projects-invent/unmaintained/soprano/metadata.yaml
index 2a6b8bcc..8952ac16 100644
--- a/projects-invent/unmaintained/soprano/metadata.yaml
+++ b/projects-invent/unmaintained/soprano/metadata.yaml
@@ -1,14 +1,8 @@
 description: Soprano is a library which provides a highly usable object-oriented C++/Qt4
   framework for RDF data.
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Trueg
-  username: trueg
-- displayname: Vishesh Handa
-  username: vhanda
+identifier: soprano
 name: Soprano
 projectpath: kdesupport/soprano
 repoactive: true
-repopath: soprano
-type: module
+repopath: /unmaintained/soprano
diff --git a/projects-invent/unmaintained/sprinter-plugins/metadata.yaml b/projects-invent/unmaintained/sprinter-plugins/metadata.yaml
index efa0d77b..38cbf2d9 100644
--- a/projects-invent/unmaintained/sprinter-plugins/metadata.yaml
+++ b/projects-invent/unmaintained/sprinter-plugins/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Plugins for Sprinter'
+description: Plugins for Sprinter
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: sprinter-plugins
 name: Sprinter Plugins
 projectpath: playground/libs/sprinter-plugins
 repoactive: false
-repopath: sprinter-plugins
-type: project
+repopath: /unmaintained/sprinter-plugins
diff --git a/projects-invent/unmaintained/sprinter/metadata.yaml b/projects-invent/unmaintained/sprinter/metadata.yaml
index 673daac9..d7cfdbd5 100644
--- a/projects-invent/unmaintained/sprinter/metadata.yaml
+++ b/projects-invent/unmaintained/sprinter/metadata.yaml
@@ -1,11 +1,7 @@
 description: Multi-agent query parser and result generator
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: sprinter
 name: Sprinter
 projectpath: unmaintained/sprinter
 repoactive: false
-repopath: sprinter
-type: project
+repopath: /unmaintained/sprinter
diff --git a/projects-invent/unmaintained/stackfolder/metadata.yaml b/projects-invent/unmaintained/stackfolder/metadata.yaml
index bdf7dd98..c5062ac3 100644
--- a/projects-invent/unmaintained/stackfolder/metadata.yaml
+++ b/projects-invent/unmaintained/stackfolder/metadata.yaml
@@ -1,15 +1,7 @@
 description: Browse the stack of folders
 hasrepo: true
-icon: null
-members:
-- displayname: Ural Mullabaev
-  username: mullabaev
-- displayname: Alexander Skakov
-  username: skakov
-- displayname: Dmitry Ashkadov
-  username: dmitrya
+identifier: stackfolder
 name: Stackfolder Plasma Applet
 projectpath: unmaintained/stackfolder
 repoactive: true
-repopath: stackfolder
-type: project
+repopath: /unmaintained/stackfolder
diff --git a/projects-invent/unmaintained/startactive/metadata.yaml b/projects-invent/unmaintained/startactive/metadata.yaml
index ea696b77..59c039b4 100644
--- a/projects-invent/unmaintained/startactive/metadata.yaml
+++ b/projects-invent/unmaintained/startactive/metadata.yaml
@@ -1,11 +1,7 @@
 description: A dependency-based init system for KDE workspace.
 hasrepo: true
-icon: activities
-members:
-- displayname: "Ivan \u010Cuki\u0107"
-  username: ivan
+identifier: startactive
 name: Plasma Active session starter
 projectpath: unmaintained/startactive
 repoactive: true
-repopath: startactive
-type: project
+repopath: /unmaintained/startactive
diff --git a/projects-invent/unmaintained/stibium/metadata.yaml b/projects-invent/unmaintained/stibium/metadata.yaml
index df62b5f9..177a4a5b 100644
--- a/projects-invent/unmaintained/stibium/metadata.yaml
+++ b/projects-invent/unmaintained/stibium/metadata.yaml
@@ -1,12 +1,8 @@
 description: Stibium is a version of KDE developed as a web application, using personal
   cloud services to store data.
 hasrepo: true
-icon: null
-members:
-- displayname: Luca Tringali
-  username: lucatringali
+identifier: stibium
 name: 'Stibium: KDE on the cloud'
 projectpath: playground/www/stibium
 repoactive: true
-repopath: stibium
-type: project
+repopath: /unmaintained/stibium
diff --git a/projects-invent/unmaintained/strigi-multimedia/metadata.yaml b/projects-invent/unmaintained/strigi-multimedia/metadata.yaml
index 56afa551..116f27c4 100644
--- a/projects-invent/unmaintained/strigi-multimedia/metadata.yaml
+++ b/projects-invent/unmaintained/strigi-multimedia/metadata.yaml
@@ -1,11 +1,7 @@
 description: Various analyzers to provide multimedia support to Strigi
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: strigi-multimedia
 name: Strigi multimedia analyzers
 projectpath: unmaintained/strigi-multimedia
 repoactive: true
-repopath: strigi-multimedia
-type: project
+repopath: /unmaintained/strigi-multimedia
diff --git a/projects-invent/unmaintained/strigi/metadata.yaml b/projects-invent/unmaintained/strigi/metadata.yaml
index 673c73c9..c35f6a0a 100644
--- a/projects-invent/unmaintained/strigi/metadata.yaml
+++ b/projects-invent/unmaintained/strigi/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: strigi
 name: Strigi
 projectpath: kdesupport/strigi/strigi
 repoactive: true
-repopath: strigi
-type: project
+repopath: /unmaintained/strigi
diff --git a/projects-invent/unmaintained/strigiclient/metadata.yaml b/projects-invent/unmaintained/strigiclient/metadata.yaml
index 0927451d..6be39c22 100644
--- a/projects-invent/unmaintained/strigiclient/metadata.yaml
+++ b/projects-invent/unmaintained/strigiclient/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi client
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: strigiclient
 name: Strigiclient
 projectpath: kdesupport/strigi/strigiclient
 repoactive: true
-repopath: strigiclient
-type: project
+repopath: /unmaintained/strigiclient
diff --git a/projects-invent/unmaintained/strigidaemon/metadata.yaml b/projects-invent/unmaintained/strigidaemon/metadata.yaml
index 3a912b6a..ab2a0198 100644
--- a/projects-invent/unmaintained/strigidaemon/metadata.yaml
+++ b/projects-invent/unmaintained/strigidaemon/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi daemon
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: strigidaemon
 name: Strigidaemon
 projectpath: kdesupport/strigi/strigidaemon
 repoactive: true
-repopath: strigidaemon
-type: project
+repopath: /unmaintained/strigidaemon
diff --git a/projects-invent/unmaintained/strigiutils/metadata.yaml b/projects-invent/unmaintained/strigiutils/metadata.yaml
index 666958d4..df2c9f06 100644
--- a/projects-invent/unmaintained/strigiutils/metadata.yaml
+++ b/projects-invent/unmaintained/strigiutils/metadata.yaml
@@ -1,15 +1,7 @@
 description: Strigi utilities
 hasrepo: true
-icon: null
-members:
-- displayname: Evgeny Egorochkin
-  username: evgeny
-- displayname: Jos van den Oever
-  username: vandenoever
-- displayname: Christophe Giboudeaux
-  username: cgiboudeaux
+identifier: strigiutils
 name: Strigiutils
 projectpath: kdesupport/strigi/strigiutils
 repoactive: true
-repopath: strigiutils
-type: project
+repopath: /unmaintained/strigiutils
diff --git a/projects-invent/unmaintained/superbuild/metadata.yaml b/projects-invent/unmaintained/superbuild/metadata.yaml
index a2b5e490..df5b839c 100644
--- a/projects-invent/unmaintained/superbuild/metadata.yaml
+++ b/projects-invent/unmaintained/superbuild/metadata.yaml
@@ -144,12 +144,8 @@ description: 'Automates building separate (KDE) repositories in one go using pla
   package per project. This actually is not a Superbuild anymore, but it may be useful
   for creating the selection of source packages you want.'
 hasrepo: true
-icon: null
-members:
-- displayname: Alexander Neundorf
-  username: neundorf
+identifier: superbuild
 name: KDE SuperBuild
 projectpath: unmaintained/superbuild
 repoactive: true
-repopath: superbuild
-type: module
+repopath: /unmaintained/superbuild
diff --git a/projects-invent/unmaintained/superkaramba/metadata.yaml b/projects-invent/unmaintained/superkaramba/metadata.yaml
index c4d54169..6d5e2a69 100644
--- a/projects-invent/unmaintained/superkaramba/metadata.yaml
+++ b/projects-invent/unmaintained/superkaramba/metadata.yaml
@@ -1,12 +1,8 @@
 description: SuperKaramba is a tool that allows you to easily create interactive widgets
   on your KDE desktop.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
+identifier: superkaramba
 name: SuperKaramba
 projectpath: unmaintained/superkaramba
 repoactive: true
-repopath: superkaramba
-type: project
+repopath: /unmaintained/superkaramba
diff --git a/projects-invent/unmaintained/svgmod/metadata.yaml b/projects-invent/unmaintained/svgmod/metadata.yaml
index 0993d8bd..67907b10 100644
--- a/projects-invent/unmaintained/svgmod/metadata.yaml
+++ b/projects-invent/unmaintained/svgmod/metadata.yaml
@@ -1,11 +1,7 @@
 description: Apply system colors to plasma rendered SVGs
 hasrepo: true
-icon: null
-members:
-- displayname: Manuel Mommertz
-  username: mommertz
+identifier: svgmod
 name: Svgmod Plasma theme tool
 projectpath: playground/devtools/svgmod
 repoactive: true
-repopath: svgmod
-type: project
+repopath: /unmaintained/svgmod
diff --git a/projects-invent/unmaintained/synchrotron-sources/metadata.yaml b/projects-invent/unmaintained/synchrotron-sources/metadata.yaml
index 5860515c..5e9c20d1 100644
--- a/projects-invent/unmaintained/synchrotron-sources/metadata.yaml
+++ b/projects-invent/unmaintained/synchrotron-sources/metadata.yaml
@@ -1,12 +1,8 @@
 description: An OCS compatible web service for publishing application add-ons from
   upstream projects directly to users via a git repository.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: synchrotron-sources
 name: Synchrotron Sources
 projectpath: playground/www/synchrotron-sources
 repoactive: true
-repopath: synchrotron-sources
-type: project
+repopath: /unmaintained/synchrotron-sources
diff --git a/projects-invent/unmaintained/synchrotron/metadata.yaml b/projects-invent/unmaintained/synchrotron/metadata.yaml
index 77a00e58..becfbe4b 100644
--- a/projects-invent/unmaintained/synchrotron/metadata.yaml
+++ b/projects-invent/unmaintained/synchrotron/metadata.yaml
@@ -1,12 +1,8 @@
 description: An OCS compatible web service for publishing application add-ons from
   upstream projects directly to users via a git repository.
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
+identifier: synchrotron
 name: Synchrotron
 projectpath: playground/www/synchrotron
 repoactive: true
-repopath: synchrotron
-type: project
+repopath: /unmaintained/synchrotron
diff --git a/projects-invent/unmaintained/systemd-kcm/metadata.yaml b/projects-invent/unmaintained/systemd-kcm/metadata.yaml
index 83f7e275..809efea1 100644
--- a/projects-invent/unmaintained/systemd-kcm/metadata.yaml
+++ b/projects-invent/unmaintained/systemd-kcm/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kcm module for managing systemd
 hasrepo: true
-icon: null
-members:
-- displayname: Ragnar Thomsen
-  username: rthomsen
+identifier: systemd-kcm
 name: Systemd KCM
 projectpath: unmaintained/systemd-kcm
 repoactive: true
-repopath: systemd-kcm
-type: project
+repopath: /unmaintained/systemd-kcm
diff --git a/projects-invent/unmaintained/telepathy-kdeconnect/metadata.yaml b/projects-invent/unmaintained/telepathy-kdeconnect/metadata.yaml
index c6e43f0f..4c8e1bbe 100644
--- a/projects-invent/unmaintained/telepathy-kdeconnect/metadata.yaml
+++ b/projects-invent/unmaintained/telepathy-kdeconnect/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Connect connection manager for Telepathy.
 hasrepo: true
-icon: null
-members:
-- displayname: David Edmundson
-  username: davidedmundson
-- displayname: Albert Vaca Cintora
-  username: albertvaka 
+identifier: telepathy-kdeconnect
 name: Telepathy KDE Connect connection manager
 projectpath: unmaintained/telepathy-kdeconnect
 repoactive: false
-repopath: telepathy-kdeconnect
-type: project
+repopath: /unmaintained/telepathy-kdeconnect
diff --git a/projects-invent/unmaintained/tupi/metadata.yaml b/projects-invent/unmaintained/tupi/metadata.yaml
index 3b84994e..3216bcf7 100644
--- a/projects-invent/unmaintained/tupi/metadata.yaml
+++ b/projects-invent/unmaintained/tupi/metadata.yaml
@@ -2,12 +2,8 @@ description: Tupi is an open/free 2D animation software based on usability, a fr
   user experience and community values. Every human is an artist! Everybody is welcome
   to join in! :)
 hasrepo: true
-icon: null
-members:
-- displayname: Gustav Gonzalez
-  username: gustavgonzalez
+identifier: tupi
 name: 'Tupi: Open 2D Magic'
 projectpath: unmaintained/tupi
 repoactive: true
-repopath: tupi
-type: project
+repopath: /unmaintained/tupi
diff --git a/projects-invent/unmaintained/ufw-kde/metadata.yaml b/projects-invent/unmaintained/ufw-kde/metadata.yaml
index c61c61c5..3731866b 100644
--- a/projects-invent/unmaintained/ufw-kde/metadata.yaml
+++ b/projects-invent/unmaintained/ufw-kde/metadata.yaml
@@ -1,13 +1,7 @@
 description: GUI Interface for Uncomplicated Firewall (UFW).
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Craig Drummond
-  username: craig
+identifier: ufw-kde
 name: UFW-KDE
 projectpath: playground/sysadmin/ufw-kde
 repoactive: true
-repopath: ufw-kde
-type: project
+repopath: /unmaintained/ufw-kde
diff --git a/projects-invent/unmaintained/veritas/metadata.yaml b/projects-invent/unmaintained/veritas/metadata.yaml
index fd8254f5..9b9a9895 100644
--- a/projects-invent/unmaintained/veritas/metadata.yaml
+++ b/projects-invent/unmaintained/veritas/metadata.yaml
@@ -1,11 +1,7 @@
 description: Veritas provides a common interface for running unit tests in KDevPlatform.
 hasrepo: true
-icon: null
-members:
-- displayname: "Miha \u010Can\u010Dula"
-  username: mihac
+identifier: veritas
 name: Veritas
 projectpath: unmaintained/veritas
 repoactive: true
-repopath: veritas
-type: project
+repopath: /unmaintained/veritas
diff --git a/projects-invent/unmaintained/wicd-kde/metadata.yaml b/projects-invent/unmaintained/wicd-kde/metadata.yaml
index 597a9682..b4b7a472 100644
--- a/projects-invent/unmaintained/wicd-kde/metadata.yaml
+++ b/projects-invent/unmaintained/wicd-kde/metadata.yaml
@@ -3,12 +3,8 @@ description: 'A Wicd client built on the KDE Development Platform.
 
   !http://kde-apps.org/CONTENT/content-pre1/132366-1.png!'
 hasrepo: true
-icon: null
-members:
-- displayname: Anthony Vital
-  username: avital
+identifier: wicd-kde
 name: Wicd Client KDE
 projectpath: extragear/network/wicd-kde
 repoactive: true
-repopath: wicd-kde
-type: project
+repopath: /unmaintained/wicd-kde
diff --git a/projects-invent/unmaintained/wiki-reader/metadata.yaml b/projects-invent/unmaintained/wiki-reader/metadata.yaml
index 15056e25..3143d54b 100644
--- a/projects-invent/unmaintained/wiki-reader/metadata.yaml
+++ b/projects-invent/unmaintained/wiki-reader/metadata.yaml
@@ -1,11 +1,7 @@
 description: A project for reading Wikipedia articles conveniently.
 hasrepo: true
-icon: null
-members:
-- displayname: Laszlo Papp
-  username: lpapp
+identifier: wiki-reader
 name: Wiki Reader
 projectpath: unmaintained/wiki-reader
 repoactive: true
-repopath: wiki-reader
-type: project
+repopath: /unmaintained/wiki-reader
diff --git a/projects-invent/unmaintained/xbuilder/metadata.yaml b/projects-invent/unmaintained/xbuilder/metadata.yaml
index 54f84794..e3d68e94 100644
--- a/projects-invent/unmaintained/xbuilder/metadata.yaml
+++ b/projects-invent/unmaintained/xbuilder/metadata.yaml
@@ -1,15 +1,7 @@
 description: SDK allowing creation of packages for Plasma Mobile
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: xbuilder
 name: Crossbuilder
 projectpath: unmaintained/xbuilder
 repoactive: false
-repopath: xbuilder
-type: project
+repopath: /unmaintained/xbuilder
diff --git a/projects-invent/unmaintained/xsettings-kde/metadata.yaml b/projects-invent/unmaintained/xsettings-kde/metadata.yaml
index 7fa336c7..e91175a2 100644
--- a/projects-invent/unmaintained/xsettings-kde/metadata.yaml
+++ b/projects-invent/unmaintained/xsettings-kde/metadata.yaml
@@ -2,16 +2,8 @@ description: Allows XSettings aware applications (all GTK+ applications) to be i
   instantly of changes in KDE configuration, such as theme name, default font and
   so on.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Colin Guthrie
-  username: cguthrie
-- displayname: Rex Dieter
-  username: rdieter
+identifier: xsettings-kde
 name: XSettings Daemon
 projectpath: playground/base/xsettings-kde
 repoactive: true
-repopath: xsettings-kde
-type: project
+repopath: /unmaintained/xsettings-kde
diff --git a/projects-invent/unmaintained/xutils/metadata.yaml b/projects-invent/unmaintained/xutils/metadata.yaml
index c85863b9..13bbc26e 100644
--- a/projects-invent/unmaintained/xutils/metadata.yaml
+++ b/projects-invent/unmaintained/xutils/metadata.yaml
@@ -1,13 +1,7 @@
 description: Utilities for crossbuilding Plasma packages
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
-- displayname: "Sebastian K\xFCgler"
-  username: sebas
+identifier: xutils
 name: Crossbuilder Utilities
 projectpath: unmaintained/xutils
 repoactive: false
-repopath: xutils
-type: project
+repopath: /unmaintained/xutils
diff --git a/projects-invent/utilities/abakus/metadata.yaml b/projects-invent/utilities/abakus/metadata.yaml
index 58375755..8a3141ab 100644
--- a/projects-invent/utilities/abakus/metadata.yaml
+++ b/projects-invent/utilities/abakus/metadata.yaml
@@ -1,11 +1,7 @@
 description: Abakus is a simple, keyboard-driven calculator.
 hasrepo: true
-icon: null
-members:
-- displayname: Mathias Kraus
-  username: mkraus
+identifier: abakus
 name: Abakus
 projectpath: playground/utils/abakus
 repoactive: true
-repopath: abakus
-type: project
+repopath: /utilities/abakus
diff --git a/projects-invent/utilities/ark/metadata.yaml b/projects-invent/utilities/ark/metadata.yaml
index 43243380..b2b72ba8 100644
--- a/projects-invent/utilities/ark/metadata.yaml
+++ b/projects-invent/utilities/ark/metadata.yaml
@@ -1,17 +1,7 @@
 description: Ark is KDE's file archiver, part of the kdeutils module.
 hasrepo: true
-icon: null
-members:
-- displayname: Ragnar Thomsen
-  username: rthomsen
-- displayname: Elvis Angelaccio
-  username: elvisangelaccio
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Raphael Kubo da Costa
-  username: rkcosta
+identifier: ark
 name: Ark
 projectpath: kde/kdeutils/ark
 repoactive: true
-repopath: ark
-type: project
+repopath: /utilities/ark
diff --git a/projects-invent/utilities/atcore-cli/metadata.yaml b/projects-invent/utilities/atcore-cli/metadata.yaml
index 2f0f334c..1edb8210 100644
--- a/projects-invent/utilities/atcore-cli/metadata.yaml
+++ b/projects-invent/utilities/atcore-cli/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Open Source 3D Printing Host - CLI Interface'
+description: Open Source 3D Printing Host - CLI Interface
 hasrepo: true
-icon: null
-members:
-- displayname: Lays Rodrigues
-  username: laysrodrigues
+identifier: atcore-cli
 name: Atelier
 projectpath: playground/base/atcore-cli
 repoactive: true
-repopath: atcore-cli
-type: project
+repopath: /utilities/atcore-cli
diff --git a/projects-invent/utilities/atelier/metadata.yaml b/projects-invent/utilities/atelier/metadata.yaml
index e7880b6e..cd282ded 100644
--- a/projects-invent/utilities/atelier/metadata.yaml
+++ b/projects-invent/utilities/atelier/metadata.yaml
@@ -1,11 +1,7 @@
-description: 'Open Source 3D Printing Host - User Interface'
+description: Open Source 3D Printing Host - User Interface
 hasrepo: true
-icon: null
-members:
-- displayname: Lays Rodrigues
-  username: laysrodrigues
+identifier: atelier
 name: Atelier
 projectpath: playground/base/atelier
 repoactive: true
-repopath: atelier
-type: project
+repopath: /utilities/atelier
diff --git a/projects-invent/utilities/basket/metadata.yaml b/projects-invent/utilities/basket/metadata.yaml
index a0d7f6b9..0a85c0c4 100644
--- a/projects-invent/utilities/basket/metadata.yaml
+++ b/projects-invent/utilities/basket/metadata.yaml
@@ -1,11 +1,7 @@
 description: System for organising notes on a KDE Plasma Desktop
 hasrepo: true
-icon: null
-members:
-- displayname: Niccolò Venerandi
-  username: niccolove
+identifier: basket
 name: BasKet
 projectpath: playground/utils/basket
 repoactive: true
-repopath: basket
-type: project
+repopath: /utilities/basket
diff --git a/projects-invent/utilities/confine/metadata.yaml b/projects-invent/utilities/confine/metadata.yaml
index 997a6d97..93f6dd4e 100644
--- a/projects-invent/utilities/confine/metadata.yaml
+++ b/projects-invent/utilities/confine/metadata.yaml
@@ -1,11 +1,7 @@
 description: Replacement to the KIOSK tool
 hasrepo: true
-icon: null
-members:
-- displayname: Siddharth Sharma
-  username: siddharthsharma
+identifier: confine
 name: Confine
 projectpath: playground/utils/confine
 repoactive: false
-repopath: confine
-type: project
+repopath: /utilities/confine
diff --git a/projects-invent/utilities/filelight/metadata.yaml b/projects-invent/utilities/filelight/metadata.yaml
index 7df2e7f6..00a45e48 100644
--- a/projects-invent/utilities/filelight/metadata.yaml
+++ b/projects-invent/utilities/filelight/metadata.yaml
@@ -1,14 +1,8 @@
 description: Filelight allows you to quickly understand exactly where your diskspace
   is being used by graphically representing your file system.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: filelight
 name: Filelight
 projectpath: kde/kdeutils/filelight
 repoactive: true
-repopath: filelight
-type: project
+repopath: /utilities/filelight
diff --git a/projects-invent/utilities/isoimagewriter/metadata.yaml b/projects-invent/utilities/isoimagewriter/metadata.yaml
index f82f3469..d2dd34fd 100644
--- a/projects-invent/utilities/isoimagewriter/metadata.yaml
+++ b/projects-invent/utilities/isoimagewriter/metadata.yaml
@@ -1,13 +1,8 @@
-description: A program to write hybrid ISO files onto a USB disk from Linux, Mac or Windows ready to boot.
+description: A program to write hybrid ISO files onto a USB disk from Linux, Mac or
+  Windows ready to boot.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Konstantin Vlasov
-  username: kvlasov
+identifier: isoimagewriter
 name: ISO Image Writer
 projectpath: extragear/utils/isoimagewriter
 repoactive: true
-repopath: isoimagewriter
-type: project
+repopath: /utilities/isoimagewriter
diff --git a/projects-invent/utilities/kairo/metadata.yaml b/projects-invent/utilities/kairo/metadata.yaml
index a9d94239..182d9d47 100644
--- a/projects-invent/utilities/kairo/metadata.yaml
+++ b/projects-invent/utilities/kairo/metadata.yaml
@@ -1,11 +1,7 @@
 description: A Programmable Timer
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
+identifier: kairo
 name: Kairo
 projectpath: playground/utils/kairo
 repoactive: true
-repopath: kairo
-type: project
+repopath: /utilities/kairo
diff --git a/projects-invent/utilities/kate/metadata.yaml b/projects-invent/utilities/kate/metadata.yaml
index ba9f80e2..3953dfd8 100644
--- a/projects-invent/utilities/kate/metadata.yaml
+++ b/projects-invent/utilities/kate/metadata.yaml
@@ -7,12 +7,8 @@ description: 'An advanced editor component which is used in numerous KDE applica
   Kate, a MDI text editor application. In addition, we provide KWrite, a simple SDI
   editor shell which allows the user to select his/her favourite editor component.'
 hasrepo: true
-icon: null
-members:
-- displayname: Christoph Cullmann
-  username: cullmann
+identifier: kate
 name: Kate
 projectpath: kde/applications/kate
 repoactive: true
-repopath: kate
-type: project
+repopath: /utilities/kate
diff --git a/projects-invent/utilities/kbackup/metadata.yaml b/projects-invent/utilities/kbackup/metadata.yaml
index 5f714414..ae0d136c 100644
--- a/projects-invent/utilities/kbackup/metadata.yaml
+++ b/projects-invent/utilities/kbackup/metadata.yaml
@@ -1,11 +1,7 @@
 description: A Backup program with an easy to use User Interface
 hasrepo: true
-icon: null
-members:
-- displayname: Martin Koller
-  username: mkoller
+identifier: kbackup
 name: KBackup
 projectpath: kde/kdeutils/kbackup
 repoactive: true
-repopath: kbackup
-type: project
+repopath: /utilities/kbackup
diff --git a/projects-invent/utilities/kcalc/metadata.yaml b/projects-invent/utilities/kcalc/metadata.yaml
index f8773226..1cd4d7ce 100644
--- a/projects-invent/utilities/kcalc/metadata.yaml
+++ b/projects-invent/utilities/kcalc/metadata.yaml
@@ -1,14 +1,8 @@
 description: KCalc is a calculator which offers many more mathematical functions than
   meet the eye on a first glance.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Evan Teran
-  username: teran
+identifier: kcalc
 name: KCalc
 projectpath: kde/kdeutils/kcalc
 repoactive: true
-repopath: kcalc
-type: project
+repopath: /utilities/kcalc
diff --git a/projects-invent/utilities/kcharselect/metadata.yaml b/projects-invent/utilities/kcharselect/metadata.yaml
index 9f2dd413..c77b8edb 100644
--- a/projects-invent/utilities/kcharselect/metadata.yaml
+++ b/projects-invent/utilities/kcharselect/metadata.yaml
@@ -1,14 +1,8 @@
 description: KCharSelect is a tool to select special characters from all installed
   fonts and copy them into the clipboard.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Christoph Feck
-  username: cfeck
+identifier: kcharselect
 name: KCharSelect
 projectpath: kde/kdeutils/kcharselect
 repoactive: true
-repopath: kcharselect
-type: project
+repopath: /utilities/kcharselect
diff --git a/projects-invent/utilities/kdebugsettings/metadata.yaml b/projects-invent/utilities/kdebugsettings/metadata.yaml
index 588fed1f..2916f43c 100644
--- a/projects-invent/utilities/kdebugsettings/metadata.yaml
+++ b/projects-invent/utilities/kdebugsettings/metadata.yaml
@@ -1,11 +1,7 @@
 description: An application to enable/disable qCDebug
 hasrepo: true
-icon: null
-members:
-- displayname: Laurent Montel
-  username: mlaurent
+identifier: kdebugsettings
 name: kdebugsettings
 projectpath: kde/kdeutils/kdebugsettings
 repoactive: true
-repopath: kdebugsettings
-type: project
+repopath: /utilities/kdebugsettings
diff --git a/projects-invent/utilities/kdf/metadata.yaml b/projects-invent/utilities/kdf/metadata.yaml
index 388bf33b..a0ee1993 100644
--- a/projects-invent/utilities/kdf/metadata.yaml
+++ b/projects-invent/utilities/kdf/metadata.yaml
@@ -2,12 +2,8 @@ description: KDiskFree displays the available file devices (hard drive partition
   floppy and CD/DVD drives, etc.) along with information on their capacity, free space,
   type and mount point.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
+identifier: kdf
 name: KDiskFree
 projectpath: kde/kdeutils/kdf
 repoactive: true
-repopath: kdf
-type: project
+repopath: /utilities/kdf
diff --git a/projects-invent/utilities/kdialog/metadata.yaml b/projects-invent/utilities/kdialog/metadata.yaml
index 12b28af1..18a79bf4 100644
--- a/projects-invent/utilities/kdialog/metadata.yaml
+++ b/projects-invent/utilities/kdialog/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDialog can be used to show nice dialog boxes from shell scripts
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
+identifier: kdialog
 name: KDialog
 projectpath: kde/applications/kdialog
 repoactive: true
-repopath: kdialog
-type: project
+repopath: /utilities/kdialog
diff --git a/projects-invent/utilities/keditbookmarks/metadata.yaml b/projects-invent/utilities/keditbookmarks/metadata.yaml
index 68f6d1e5..df22e972 100644
--- a/projects-invent/utilities/keditbookmarks/metadata.yaml
+++ b/projects-invent/utilities/keditbookmarks/metadata.yaml
@@ -1,11 +1,7 @@
 description: Bookmarks editor
 hasrepo: true
-icon: null
-members:
-- displayname: David Faure
-  username: dfaure
+identifier: keditbookmarks
 name: KEditBookmarks
 projectpath: kde/applications/keditbookmarks
 repoactive: true
-repopath: keditbookmarks
-type: project
+repopath: /utilities/keditbookmarks
diff --git a/projects-invent/utilities/keurocalc/metadata.yaml b/projects-invent/utilities/keurocalc/metadata.yaml
index f706b2f2..40750563 100644
--- a/projects-invent/utilities/keurocalc/metadata.yaml
+++ b/projects-invent/utilities/keurocalc/metadata.yaml
@@ -1,11 +1,7 @@
 description: Utility to handle currency conversions between European currencies
 hasrepo: true
-icon: null
-members:
-- displayname: "Éric Bischoff"
-  username: bischoff
+identifier: keurocalc
 name: KEuroCalc
 projectpath: extragear/utils/keurocalc
 repoactive: true
-repopath: keurocalc
-type: project
+repopath: /utilities/keurocalc
diff --git a/projects-invent/utilities/keysmith/metadata.yaml b/projects-invent/utilities/keysmith/metadata.yaml
index a67321bb..39542abf 100644
--- a/projects-invent/utilities/keysmith/metadata.yaml
+++ b/projects-invent/utilities/keysmith/metadata.yaml
@@ -1,11 +1,7 @@
 description: OTP client for Plasma Mobile and Desktop.
 hasrepo: true
-icon: null
-members:
-- displayname: Bhushan Shah
-  username: bshah
+identifier: keysmith
 name: Keysmith
 projectpath: extragear/utils/keysmith
 repoactive: true
-repopath: keysmith
-type: project
+repopath: /utilities/keysmith
diff --git a/projects-invent/utilities/kfind/metadata.yaml b/projects-invent/utilities/kfind/metadata.yaml
index b7b09718..15041584 100644
--- a/projects-invent/utilities/kfind/metadata.yaml
+++ b/projects-invent/utilities/kfind/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE file find utility
 hasrepo: true
-icon: null
-members:
-- displayname: Kai-Uwe Broulik
-  username: broulik
+identifier: kfind
 name: KFind
 projectpath: kde/applications/kfind
 repoactive: true
-repopath: kfind
-type: project
+repopath: /utilities/kfind
diff --git a/projects-invent/utilities/kfloppy/metadata.yaml b/projects-invent/utilities/kfloppy/metadata.yaml
index 678761af..b57664a2 100644
--- a/projects-invent/utilities/kfloppy/metadata.yaml
+++ b/projects-invent/utilities/kfloppy/metadata.yaml
@@ -1,14 +1,8 @@
 description: KFloppy is a utility that provides a straightforward graphical means
   to format 3.5" and 5.25" floppy disks.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Wolfgang Bauer
-  username: wbauer
+identifier: kfloppy
 name: KFloppy
 projectpath: kde/kdeutils/kfloppy
 repoactive: true
-repopath: kfloppy
-type: project
+repopath: /utilities/kfloppy
diff --git a/projects-invent/utilities/kgpg/metadata.yaml b/projects-invent/utilities/kgpg/metadata.yaml
index 31d32a47..7de5164a 100644
--- a/projects-invent/utilities/kgpg/metadata.yaml
+++ b/projects-invent/utilities/kgpg/metadata.yaml
@@ -1,11 +1,7 @@
 description: KGpg is a simple interface for GnuPG, a powerful encryption utility.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
+identifier: kgpg
 name: KGpg
 projectpath: kde/kdeutils/kgpg
 repoactive: true
-repopath: kgpg
-type: project
+repopath: /utilities/kgpg
diff --git a/projects-invent/utilities/kio-stash/metadata.yaml b/projects-invent/utilities/kio-stash/metadata.yaml
index 6873ec3f..1e48a148 100644
--- a/projects-invent/utilities/kio-stash/metadata.yaml
+++ b/projects-invent/utilities/kio-stash/metadata.yaml
@@ -1,11 +1,8 @@
-description: 'KIO Stash is a KIOSlave for making file selections in non-contiguous folder trees easier by using a virtual folder'
+description: KIO Stash is a KIOSlave for making file selections in non-contiguous
+  folder trees easier by using a virtual folder
 hasrepo: true
-icon: null
-members:
-- displayname: Arnav Dhamija
-  username: arnavdhamija
+identifier: kio-stash
 name: Utils
 projectpath: extragear/utils/kio-stash
 repoactive: true
-repopath: kio-stash
-type: project
+repopath: /utilities/kio-stash
diff --git a/projects-invent/utilities/kirogi/metadata.yaml b/projects-invent/utilities/kirogi/metadata.yaml
index 7bc1adb5..b5827f1b 100644
--- a/projects-invent/utilities/kirogi/metadata.yaml
+++ b/projects-invent/utilities/kirogi/metadata.yaml
@@ -1,11 +1,7 @@
 description: Ground control application for drones.
 hasrepo: true
-icon: null
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: kirogi
 name: Kirogi
 projectpath: playground/base/kirogi
 repoactive: true
-repopath: kirogi
-type: project
+repopath: /utilities/kirogi
diff --git a/projects-invent/utilities/klimbgrades/metadata.yaml b/projects-invent/utilities/klimbgrades/metadata.yaml
index 998cbc87..a48fc8fc 100644
--- a/projects-invent/utilities/klimbgrades/metadata.yaml
+++ b/projects-invent/utilities/klimbgrades/metadata.yaml
@@ -1,11 +1,7 @@
 description: Conversion utility for the difficulty rating of rock climbs
 hasrepo: true
-icon: null
-members:
-- displayname: Marco Martin
-  username: mart
+identifier: klimbgrades
 name: klimbgrades
 projectpath: playground/utils/klimbgrades
 repoactive: true
-repopath: klimbgrades
-type: project
+repopath: /utilities/klimbgrades
diff --git a/projects-invent/utilities/kmarkdownwebview/metadata.yaml b/projects-invent/utilities/kmarkdownwebview/metadata.yaml
index 27dc8df8..2764c979 100644
--- a/projects-invent/utilities/kmarkdownwebview/metadata.yaml
+++ b/projects-invent/utilities/kmarkdownwebview/metadata.yaml
@@ -1,11 +1,7 @@
 description: KPart for rendering Markdown content
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
+identifier: kmarkdownwebview
 name: KMarkdown Webview
 projectpath: extragear/utils/kmarkdownwebview
 repoactive: true
-repopath: kmarkdownwebview
-type: project
+repopath: /utilities/kmarkdownwebview
diff --git a/projects-invent/utilities/kongress/metadata.yaml b/projects-invent/utilities/kongress/metadata.yaml
index 2dbcfbc6..079b73fe 100644
--- a/projects-invent/utilities/kongress/metadata.yaml
+++ b/projects-invent/utilities/kongress/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kongress is a companion application for conferences
 hasrepo: true
-icon: null
-members:
-- displayname: Dimitris Kardarakos
-  username: dkardarakos
+identifier: kongress
 name: Kongress
 projectpath: playground/utils/kongress
 repoactive: true
-repopath: kongress
-type: project
+repopath: /utilities/kongress
diff --git a/projects-invent/utilities/konsole/metadata.yaml b/projects-invent/utilities/konsole/metadata.yaml
index fff8b501..99d662a7 100644
--- a/projects-invent/utilities/konsole/metadata.yaml
+++ b/projects-invent/utilities/konsole/metadata.yaml
@@ -1,21 +1,7 @@
 description: KDE's terminal emulator.
 hasrepo: true
-icon: null
-members:
-- displayname: Dirk Mueller
-  username: mueller
-- displayname: Albert Astals Cid
-  username: aacid
-- displayname: Ian Monroe
-  username: ianmonroe
-- displayname: Frank Reininghaus
-  username: freininghaus
-- displayname: Peter Penz
-  username: ppenz
-- displayname: Kurt Hindenburg
-  username: hindenburg
+identifier: konsole
 name: Konsole
 projectpath: kde/applications/konsole
 repoactive: true
-repopath: konsole
-type: project
+repopath: /utilities/konsole
diff --git a/projects-invent/utilities/kookbook/metadata.yaml b/projects-invent/utilities/kookbook/metadata.yaml
index 1362269e..2ecadc35 100644
--- a/projects-invent/utilities/kookbook/metadata.yaml
+++ b/projects-invent/utilities/kookbook/metadata.yaml
@@ -1,11 +1,7 @@
 description: Cookbook creator
 hasrepo: true
-icon: null
-members:
-- displayname: Sune Vuorela
-  username: sune
+identifier: kookbook
 name: Kookbook
 projectpath: playground/base/kookbook
 repoactive: true
-repopath: kookbook
-type: module
+repopath: /utilities/kookbook
diff --git a/projects-invent/utilities/kregexpeditor/metadata.yaml b/projects-invent/utilities/kregexpeditor/metadata.yaml
index 39b0710f..e9b43769 100644
--- a/projects-invent/utilities/kregexpeditor/metadata.yaml
+++ b/projects-invent/utilities/kregexpeditor/metadata.yaml
@@ -1,13 +1,7 @@
 description: KRegExpEditor is a GUI for creating and editing regular expressions.
 hasrepo: true
-icon: null
-members:
-- displayname: Jesper Pedersen
-  username: blackie
-- displayname: "Morten Sj\xF8gren"
-  username: sjogren
+identifier: kregexpeditor
 name: KRegExpEditor
 projectpath: playground/utils/kregexpeditor
 repoactive: true
-repopath: kregexpeditor
-type: project
+repopath: /utilities/kregexpeditor
diff --git a/projects-invent/utilities/krename/metadata.yaml b/projects-invent/utilities/krename/metadata.yaml
index 55ca808b..3d479b94 100644
--- a/projects-invent/utilities/krename/metadata.yaml
+++ b/projects-invent/utilities/krename/metadata.yaml
@@ -1,13 +1,7 @@
 description: Utility to handle specialised file renames
 hasrepo: true
-icon: null
-members:
-- displayname: Heiko Becker
-  username: heikobecker
-- displayname: Martin Sandsmark
-  username: sandsmark
+identifier: krename
 name: KRename
 projectpath: extragear/utils/krename
 repoactive: true
-repopath: krename
-type: project
+repopath: /utilities/krename
diff --git a/projects-invent/utilities/kronometer/metadata.yaml b/projects-invent/utilities/kronometer/metadata.yaml
index cdba57cd..bc9443fd 100644
--- a/projects-invent/utilities/kronometer/metadata.yaml
+++ b/projects-invent/utilities/kronometer/metadata.yaml
@@ -1,11 +1,7 @@
 description: A stopwatch application by KDE
 hasrepo: true
-icon: null
-members:
-- displayname: Elvis Angelaccio
-  username: elvisangelaccio
+identifier: kronometer
 name: Kronometer
 projectpath: extragear/utils/kronometer
 repoactive: true
-repopath: kronometer
-type: project
+repopath: /utilities/kronometer
diff --git a/projects-invent/utilities/krusader/metadata.yaml b/projects-invent/utilities/krusader/metadata.yaml
index 82c9b62d..f66c891c 100644
--- a/projects-invent/utilities/krusader/metadata.yaml
+++ b/projects-invent/utilities/krusader/metadata.yaml
@@ -8,14 +8,8 @@ description: 'Krusader is an advanced twin panel (commander style) file manager
   handle other KIO slaves such as smb or fish. It is completely customizable, very
   user friendly, fast and looks great on your desktop!'
 hasrepo: true
-icon: null
-members:
-- displayname: Gengis Dave
-  username: gengisdave
-- displayname: Simon Persson
-  username: persson
+identifier: krusader
 name: Krusader
 projectpath: extragear/utils/krusader
 repoactive: true
-repopath: krusader
-type: project
+repopath: /utilities/krusader
diff --git a/projects-invent/utilities/ksecrets/metadata.yaml b/projects-invent/utilities/ksecrets/metadata.yaml
index 601c486c..372b1b9d 100644
--- a/projects-invent/utilities/ksecrets/metadata.yaml
+++ b/projects-invent/utilities/ksecrets/metadata.yaml
@@ -1,14 +1,8 @@
 description: Here you'll find the code of the secrets management infrastructure for
   KDE. Please visit TechBase - see link below.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Valentin Rusu
-  username: vrusu
+identifier: ksecrets
 name: KSecretsService
 projectpath: playground/utils/ksecrets
 repoactive: true
-repopath: ksecrets
-type: project
+repopath: /utilities/ksecrets
diff --git a/projects-invent/utilities/kteatime/metadata.yaml b/projects-invent/utilities/kteatime/metadata.yaml
index 78da15e5..4a33f076 100644
--- a/projects-invent/utilities/kteatime/metadata.yaml
+++ b/projects-invent/utilities/kteatime/metadata.yaml
@@ -1,11 +1,7 @@
 description: KTeaTime is a handy timer for steeping tea.
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: kteatime
 name: KTeaTime
 projectpath: kde/kdeutils/kteatime
 repoactive: true
-repopath: kteatime
-type: project
+repopath: /utilities/kteatime
diff --git a/projects-invent/utilities/ktimer/metadata.yaml b/projects-invent/utilities/ktimer/metadata.yaml
index 06cd9eab..005a14d5 100644
--- a/projects-invent/utilities/ktimer/metadata.yaml
+++ b/projects-invent/utilities/ktimer/metadata.yaml
@@ -1,13 +1,7 @@
 description: KTimer is a little tool to execute programs after some time.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: A. Lynn Spehr
-  username: alspehr
+identifier: ktimer
 name: KTimer
 projectpath: kde/kdeutils/ktimer
 repoactive: true
-repopath: ktimer
-type: project
+repopath: /utilities/ktimer
diff --git a/projects-invent/utilities/ktrip/metadata.yaml b/projects-invent/utilities/ktrip/metadata.yaml
index 7e8d3a92..159b704b 100644
--- a/projects-invent/utilities/ktrip/metadata.yaml
+++ b/projects-invent/utilities/ktrip/metadata.yaml
@@ -1,11 +1,7 @@
 description: Public Transport Assistance for Mobile Devices
 hasrepo: true
-icon: null
-members:
-- displayname: Nicolas Fella
-  username: nicolasfella
+identifier: ktrip
 name: KTrip
 projectpath: extragear/utils/ktrip
 repoactive: true
-repopath: ktrip
-type: project
+repopath: /utilities/ktrip
diff --git a/projects-invent/utilities/kwalletmanager/metadata.yaml b/projects-invent/utilities/kwalletmanager/metadata.yaml
index bc5ac2dd..219c3f8f 100644
--- a/projects-invent/utilities/kwalletmanager/metadata.yaml
+++ b/projects-invent/utilities/kwalletmanager/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Wallet Manager is a tool to manage the passwords on your KDE system.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
-- displayname: Valentin Rusu
-  username: vrusu
+identifier: kwalletmanager
 name: KWalletManager
 projectpath: kde/kdeutils/kwalletmanager
 repoactive: true
-repopath: kwalletmanager
-type: project
+repopath: /utilities/kwalletmanager
diff --git a/projects-invent/utilities/mangonel/metadata.yaml b/projects-invent/utilities/mangonel/metadata.yaml
index dc082753..7ec8fed6 100644
--- a/projects-invent/utilities/mangonel/metadata.yaml
+++ b/projects-invent/utilities/mangonel/metadata.yaml
@@ -9,12 +9,8 @@ description: 'A simple and pretty application launcher.
 
   !https://i.imgur.com/O92D7a9.png!'
 hasrepo: true
-icon: mangonel
-members:
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: mangonel
 name: Mangonel application launcher
 projectpath: extragear/base/mangonel
 repoactive: true
-repopath: mangonel
-type: project
+repopath: /utilities/mangonel
diff --git a/projects-invent/utilities/metadata.yaml b/projects-invent/utilities/metadata.yaml
index 5595d7e0..bca78015 100644
--- a/projects-invent/utilities/metadata.yaml
+++ b/projects-invent/utilities/metadata.yaml
@@ -1,9 +1,7 @@
 description: ''
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: KDE Utils
 projectpath: kde/kdeutils
 repoactive: false
-repopath: null
-type: module
+repopath: /utilities
diff --git a/projects-invent/utilities/okteta/metadata.yaml b/projects-invent/utilities/okteta/metadata.yaml
index 709451a4..c35b6133 100644
--- a/projects-invent/utilities/okteta/metadata.yaml
+++ b/projects-invent/utilities/okteta/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE hex editor for viewing and editing the raw data of files.
 hasrepo: true
-icon: null
-members:
-- displayname: Friedrich W. H. Kossebau
-  username: kossebau
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: okteta
 name: Okteta
 projectpath: extragear/utils/okteta
 repoactive: true
-repopath: okteta
-type: project
+repopath: /utilities/okteta
diff --git a/projects-invent/utilities/plasma-mycroft/metadata.yaml b/projects-invent/utilities/plasma-mycroft/metadata.yaml
index 7965db25..5e85ba1c 100644
--- a/projects-invent/utilities/plasma-mycroft/metadata.yaml
+++ b/projects-invent/utilities/plasma-mycroft/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma integration of different Mycroft AI services.
 hasrepo: true
-icon: null
-members:
-- displayname: "Aditya Mehra"
-  username: adityam
-- displayname: "Aleix Pol"
-  username: apol
+identifier: plasma-mycroft
 name: Mycroft Plasma integration
 projectpath: extragear/utils/plasma-mycroft
 repoactive: true
-repopath: plasma-mycroft
-type: project
+repopath: /utilities/plasma-mycroft
diff --git a/projects-invent/utilities/print-manager/metadata.yaml b/projects-invent/utilities/print-manager/metadata.yaml
index ac9d891a..aed08d07 100644
--- a/projects-invent/utilities/print-manager/metadata.yaml
+++ b/projects-invent/utilities/print-manager/metadata.yaml
@@ -1,11 +1,7 @@
 description: A tool for managing print jobs and printers
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Nicoletti
-  username: dantti
+identifier: print-manager
 name: Print Manager
 projectpath: kde/kdeutils/print-manager
 repoactive: true
-repopath: print-manager
-type: project
+repopath: /utilities/print-manager
diff --git a/projects-invent/utilities/rsibreak/metadata.yaml b/projects-invent/utilities/rsibreak/metadata.yaml
index 244e2859..726f3bb0 100644
--- a/projects-invent/utilities/rsibreak/metadata.yaml
+++ b/projects-invent/utilities/rsibreak/metadata.yaml
@@ -1,12 +1,8 @@
 description: RSIBreak helps in preventing Repetitive Strain Injury by reminding you
   to take a break.
 hasrepo: true
-icon: null
-members:
-- displayname: Tom Albers
-  username: toma
+identifier: rsibreak
 name: RSIBreak
 projectpath: extragear/utils/rsibreak
 repoactive: true
-repopath: rsibreak
-type: project
+repopath: /utilities/rsibreak
diff --git a/projects-invent/utilities/sweeper/metadata.yaml b/projects-invent/utilities/sweeper/metadata.yaml
index 9854a584..83f7e167 100644
--- a/projects-invent/utilities/sweeper/metadata.yaml
+++ b/projects-invent/utilities/sweeper/metadata.yaml
@@ -1,11 +1,7 @@
 description: Sweeper helps to clean unwanted traces the user leaves on the system.
 hasrepo: true
-icon: null
-members:
-- displayname: Rolf Eike Beer
-  username: dakon
+identifier: sweeper
 name: Sweeper
 projectpath: kde/kdeutils/sweeper
 repoactive: true
-repopath: sweeper
-type: project
+repopath: /utilities/sweeper
diff --git a/projects-invent/utilities/symmy/metadata.yaml b/projects-invent/utilities/symmy/metadata.yaml
index c87f01c6..cefbc248 100644
--- a/projects-invent/utilities/symmy/metadata.yaml
+++ b/projects-invent/utilities/symmy/metadata.yaml
@@ -1,11 +1,7 @@
 description: GPG symmetric encryption frontend
 hasrepo: true
-icon: null
-members:
-- displayname: "Elvis Angelaccio"
-  username: "elvisangelaccio"
+identifier: symmy
 name: Symmy
 projectpath: extragear/utils/symmy
 repoactive: true
-repopath: symmy
-type: project
+repopath: /utilities/symmy
diff --git a/projects-invent/utilities/yakuake/metadata.yaml b/projects-invent/utilities/yakuake/metadata.yaml
index a8134ffc..94278bac 100644
--- a/projects-invent/utilities/yakuake/metadata.yaml
+++ b/projects-invent/utilities/yakuake/metadata.yaml
@@ -8,12 +8,8 @@ description: 'Yakuake is a drop-down terminal emulator based on KDE Konsole tech
 
   "QuickGit":https://quickgit.kde.org/?p=yakuake.git&a=summary'
 hasrepo: true
-icon: yakuake
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: yakuake
 name: Yakuake
 projectpath: kde/applications/yakuake
 repoactive: true
-repopath: yakuake
-type: project
+repopath: /utilities/yakuake
diff --git a/projects-invent/webapps/ocs-apiserver/metadata.yaml b/projects-invent/webapps/ocs-apiserver/metadata.yaml
index 85c0ee6e..3b6b7982 100644
--- a/projects-invent/webapps/ocs-apiserver/metadata.yaml
+++ b/projects-invent/webapps/ocs-apiserver/metadata.yaml
@@ -1,11 +1,7 @@
 description: Backend API server for the software store
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Kügler
-  username: sebas
+identifier: ocs-apiserver
 name: OCS API Server
 projectpath: playground/www/ocs-apiserver
 repoactive: true
-repopath: ocs-apiserver
-type: project
+repopath: /webapps/ocs-apiserver
diff --git a/projects-invent/webapps/ocs-cdn/metadata.yaml b/projects-invent/webapps/ocs-cdn/metadata.yaml
index cfb98a91..a1c2fa8f 100644
--- a/projects-invent/webapps/ocs-cdn/metadata.yaml
+++ b/projects-invent/webapps/ocs-cdn/metadata.yaml
@@ -1,11 +1,7 @@
 description: Content delivery network for the software store
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Kügler
-  username: sebas
+identifier: ocs-cdn
 name: OCS Content Distribution Network
 projectpath: playground/www/ocs-cdn
 repoactive: true
-repopath: ocs-cdn
-type: project
+repopath: /webapps/ocs-cdn
diff --git a/projects-invent/webapps/ocs-fileserver/metadata.yaml b/projects-invent/webapps/ocs-fileserver/metadata.yaml
index a417af9f..91248674 100644
--- a/projects-invent/webapps/ocs-fileserver/metadata.yaml
+++ b/projects-invent/webapps/ocs-fileserver/metadata.yaml
@@ -1,11 +1,7 @@
 description: File server for the software store
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Kügler
-  username: sebas
+identifier: ocs-fileserver
 name: OCS File Server
 projectpath: playground/www/ocs-fileserver
 repoactive: true
-repopath: ocs-fileserver
-type: project
+repopath: /webapps/ocs-fileserver
diff --git a/projects-invent/webapps/ocs-server/metadata.yaml b/projects-invent/webapps/ocs-server/metadata.yaml
index deabe916..f7fa8d97 100644
--- a/projects-invent/webapps/ocs-server/metadata.yaml
+++ b/projects-invent/webapps/ocs-server/metadata.yaml
@@ -1,16 +1,8 @@
 description: A web server which provides OCS (Open Collaboration Services) functionality,
   and a web demo client
 hasrepo: true
-icon: null
-members:
-- displayname: Francesco Wofford
-  username: francescowofford
-- displayname: Claudio Desideri
-  username: desideri
-- displayname: Dan Leinir Turthra Jensen
-  username: leinir
+identifier: ocs-server
 name: ocs-server
 projectpath: playground/www/ocs-server
 repoactive: true
-repopath: ocs-server
-type: project
+repopath: /webapps/ocs-server
diff --git a/projects-invent/webapps/ocs-webserver/metadata.yaml b/projects-invent/webapps/ocs-webserver/metadata.yaml
index d36d2338..949eb758 100644
--- a/projects-invent/webapps/ocs-webserver/metadata.yaml
+++ b/projects-invent/webapps/ocs-webserver/metadata.yaml
@@ -1,11 +1,7 @@
 description: Webserver for running a software store
 hasrepo: true
-icon: null
-members:
-- displayname: Sebastian Kügler
-  username: sebas
+identifier: ocs-webserver
 name: OCS Webserver
 projectpath: playground/www/ocs-webserver
 repoactive: true
-repopath: ocs-webserver
-type: project
+repopath: /webapps/ocs-webserver
diff --git a/projects-invent/websites/20years-kde-org/metadata.yaml b/projects-invent/websites/20years-kde-org/metadata.yaml
index 6318308c..099471d7 100644
--- a/projects-invent/websites/20years-kde-org/metadata.yaml
+++ b/projects-invent/websites/20years-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
-description: "The website for the book '20 years of KDE'"
+description: The website for the book '20 years of KDE'
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Andrade
-  username: sandroandrade
+identifier: websites-20years-kde-org
 name: 20 years of KDE book
 projectpath: websites/20years-kde-org
 repoactive: true
-repopath: websites/20years-kde-org
-type: module
+repopath: /websites/20years-kde-org
diff --git a/projects-invent/websites/accessibility-kde-org/metadata.yaml b/projects-invent/websites/accessibility-kde-org/metadata.yaml
index 7d6255c9..e6f02867 100644
--- a/projects-invent/websites/accessibility-kde-org/metadata.yaml
+++ b/projects-invent/websites/accessibility-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Accessibility Website sources for accessibility.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-accessibility-kde-org
 name: Accessibility Website
 projectpath: websites/accessibility-kde-org
 repoactive: false
-repopath: websites/accessibility-kde-org
-type: module
+repopath: /websites/accessibility-kde-org
diff --git a/projects-invent/websites/aether-drupal7/metadata.yaml b/projects-invent/websites/aether-drupal7/metadata.yaml
index 37bdff5a..4ba07ad3 100644
--- a/projects-invent/websites/aether-drupal7/metadata.yaml
+++ b/projects-invent/websites/aether-drupal7/metadata.yaml
@@ -1,11 +1,7 @@
 description: Aether theme for Drupal 7
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-aether-drupal7
 name: Drupal 7 Aether Theme
 projectpath: websites/aether-drupal7
 repoactive: false
-repopath: websites/aether-drupal7
-type: module
+repopath: /websites/aether-drupal7
diff --git a/projects-invent/websites/aether-mediawiki/metadata.yaml b/projects-invent/websites/aether-mediawiki/metadata.yaml
index 067a9d42..12f0243a 100644
--- a/projects-invent/websites/aether-mediawiki/metadata.yaml
+++ b/projects-invent/websites/aether-mediawiki/metadata.yaml
@@ -1,11 +1,7 @@
 description: Aether flavoured theme for Mediawiki
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-aether-mediawiki
 name: Mediawiki Aether Theme
 projectpath: websites/aether-mediawiki
 repoactive: false
-repopath: websites/aether-mediawiki
-type: module
+repopath: /websites/aether-mediawiki
diff --git a/projects-invent/websites/aether-sass/metadata.yaml b/projects-invent/websites/aether-sass/metadata.yaml
index 2dc1b4c9..22b4c36e 100644
--- a/projects-invent/websites/aether-sass/metadata.yaml
+++ b/projects-invent/websites/aether-sass/metadata.yaml
@@ -1,11 +1,7 @@
 description: Aether flavoured SASS for various websites
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-aether-sass
 name: Aether Theme SASS
 projectpath: websites/aether-sass
 repoactive: false
-repopath: websites/aether-sass
-type: module
+repopath: /websites/aether-sass
diff --git a/projects-invent/websites/aether-sphinx/metadata.yaml b/projects-invent/websites/aether-sphinx/metadata.yaml
index 63a4f0d9..409f14f5 100644
--- a/projects-invent/websites/aether-sphinx/metadata.yaml
+++ b/projects-invent/websites/aether-sphinx/metadata.yaml
@@ -1,11 +1,7 @@
 description: Aether theme for Sphinx
 hasrepo: true
-icon: null
-members:
-- displayname: Carson Black
-  username: cblack
+identifier: websites-aether-sphinx
 name: Sphinx Aether Theme
 projectpath: websites/aether-sphinx
 repoactive: true
-repopath: websites/aether-sphinx
-type: module
+repopath: /websites/aether-sphinx
diff --git a/projects-invent/websites/aether-wordpress/metadata.yaml b/projects-invent/websites/aether-wordpress/metadata.yaml
index ed0af933..15425b74 100644
--- a/projects-invent/websites/aether-wordpress/metadata.yaml
+++ b/projects-invent/websites/aether-wordpress/metadata.yaml
@@ -1,11 +1,7 @@
 description: Aether theme for Wordpress
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: websites-aether-wordpress
 name: Wordpress Aether Theme
 projectpath: websites/aether-wordpress
 repoactive: true
-repopath: websites/aether-wordpress
-type: module
+repopath: /websites/aether-wordpress
diff --git a/projects-invent/websites/akademy-badges/metadata.yaml b/projects-invent/websites/akademy-badges/metadata.yaml
index 76bbe1c5..5b4fdf3e 100644
--- a/projects-invent/websites/akademy-badges/metadata.yaml
+++ b/projects-invent/websites/akademy-badges/metadata.yaml
@@ -1,13 +1,7 @@
 description: Conference Badge Generation Tooling
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
-- displayname: Kenny Duffus
-  username: duffus
+identifier: akademy-badges
 name: Akademy Badge Generator
 projectpath: community/akademy-badges
 repoactive: true
-repopath: akademy-badges
-type: module
+repopath: /websites/akademy-badges
diff --git a/projects-invent/websites/akademy-checkin/metadata.yaml b/projects-invent/websites/akademy-checkin/metadata.yaml
index 0032111c..521e55c6 100644
--- a/projects-invent/websites/akademy-checkin/metadata.yaml
+++ b/projects-invent/websites/akademy-checkin/metadata.yaml
@@ -1,13 +1,7 @@
 description: Conference Check In Management System
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
-- displayname: Kenny Duffus
-  username: duffus
+identifier: akademy-checkin
 name: Akademy Check In Tools
 projectpath: community/akademy-checkin
 repoactive: true
-repopath: akademy-checkin
-type: module
+repopath: /websites/akademy-checkin
diff --git a/projects-invent/websites/akademy-registration/metadata.yaml b/projects-invent/websites/akademy-registration/metadata.yaml
index 1af4d300..53105a69 100644
--- a/projects-invent/websites/akademy-registration/metadata.yaml
+++ b/projects-invent/websites/akademy-registration/metadata.yaml
@@ -1,11 +1,7 @@
 description: Drupal6 module for the Akademy registration system.
 hasrepo: true
-icon: null
-members:
-- displayname: Marijn Kruisselbrink
-  username: mkruisselbrink
+identifier: websites-akademy-registration
 name: Akademy registration module
 projectpath: websites/akademy-registration
 repoactive: true
-repopath: websites/akademy-registration
-type: module
+repopath: /websites/akademy-registration
diff --git a/projects-invent/websites/akademy-schedule-kde-org/metadata.yaml b/projects-invent/websites/akademy-schedule-kde-org/metadata.yaml
index dc608256..f9c1b6ce 100644
--- a/projects-invent/websites/akademy-schedule-kde-org/metadata.yaml
+++ b/projects-invent/websites/akademy-schedule-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: The application which serves the akademy-schedule.kde.org website
 hasrepo: true
-icon: null
-members:
-- displayname: Lays Rodrigues
-  username: laysrodrigues
+identifier: websites-akademy-schedule-kde-org
 name: Akademy Schedule Website
 projectpath: websites/akademy-schedule-kde-org
 repoactive: true
-repopath: websites/akademy-schedule-kde-org
-type: module
+repopath: /websites/akademy-schedule-kde-org
diff --git a/projects-invent/websites/akademy2010-kde-org/metadata.yaml b/projects-invent/websites/akademy2010-kde-org/metadata.yaml
index 6bc3d2d8..746fa6e7 100644
--- a/projects-invent/websites/akademy2010-kde-org/metadata.yaml
+++ b/projects-invent/websites/akademy2010-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Static copy of the content of the Akademy 2010 website
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-akademy2010-kde-org
 name: Akademy 2010 Website
 projectpath: websites/akademy2010-kde-org
 repoactive: true
-repopath: websites/akademy2010-kde-org
-type: module
+repopath: /websites/akademy2010-kde-org
diff --git a/projects-invent/websites/akademy2012-kde-org/metadata.yaml b/projects-invent/websites/akademy2012-kde-org/metadata.yaml
index bd63c9e2..6a6c5ccd 100644
--- a/projects-invent/websites/akademy2012-kde-org/metadata.yaml
+++ b/projects-invent/websites/akademy2012-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Website of Akademy 2012
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Duffus
-  username: duffus
-- displayname: Kenny Coyle
-  username: kcoyle
+identifier: websites-akademy2012-kde-org
 name: Akademy 2012 Website
 projectpath: websites/akademy2012-kde-org
 repoactive: true
-repopath: websites/akademy2012-kde-org
-type: module
+repopath: /websites/akademy2012-kde-org
diff --git a/projects-invent/websites/apps-kde-org/metadata.yaml b/projects-invent/websites/apps-kde-org/metadata.yaml
index a5bbbf2c..0ba08307 100644
--- a/projects-invent/websites/apps-kde-org/metadata.yaml
+++ b/projects-invent/websites/apps-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Application which runs apps.kde.org
 hasrepo: true
-icon: null
+identifier: websites-apps-kde-org
 name: apps.kde.org api service
 projectpath: websites/apps-kde-org
 repoactive: false
-repopath: websites/apps-kde-org
-type: module
-members:
-- displayname: Boudhayan Gupta
-  username: bgupta
+repopath: /websites/apps-kde-org
diff --git a/projects-invent/websites/atelier-kde-org/metadata.yaml b/projects-invent/websites/atelier-kde-org/metadata.yaml
index fecb6b06..c4ea1584 100644
--- a/projects-invent/websites/atelier-kde-org/metadata.yaml
+++ b/projects-invent/websites/atelier-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: The application which serves the atelier.kde.org website
 hasrepo: true
-icon: null
-members:
-- displayname: Lays Rodrigues
-  username: laysrodrigues
+identifier: websites-atelier-kde-org
 name: Atelier Website
 projectpath: websites/atelier-kde-org
 repoactive: true
-repopath: websites/atelier-kde-org
-type: module
+repopath: /websites/atelier-kde-org
diff --git a/projects-invent/websites/autoconfig-kde-org/metadata.yaml b/projects-invent/websites/autoconfig-kde-org/metadata.yaml
index 85acc982..a7e5c32f 100644
--- a/projects-invent/websites/autoconfig-kde-org/metadata.yaml
+++ b/projects-invent/websites/autoconfig-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Automatic configuration metadata for kde.org services for external applications
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-autoconfig-kde-org
 name: Autoconfiguration metadata
 projectpath: websites/autoconfig-kde-org
 repoactive: false
-repopath: websites/autoconfig-kde-org
-type: module
+repopath: /websites/autoconfig-kde-org
diff --git a/projects-invent/websites/ballot-kde-org/metadata.yaml b/projects-invent/websites/ballot-kde-org/metadata.yaml
index 1a2e72bb..1da69e58 100644
--- a/projects-invent/websites/ballot-kde-org/metadata.yaml
+++ b/projects-invent/websites/ballot-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: An ugly, simple, and very secure voting system
 hasrepo: true
-icon: null
-members:
-- displayname: Jeff Mitchell
-  username: mitchell
+identifier: websites-ballot-kde-org
 name: Ballot
 projectpath: websites/ballot-kde-org
 repoactive: false
-repopath: websites/ballot-kde-org
-type: module
+repopath: /websites/ballot-kde-org
diff --git a/projects-invent/websites/br-qtcon-org/metadata.yaml b/projects-invent/websites/br-qtcon-org/metadata.yaml
index 006f3ac0..e67c7eba 100644
--- a/projects-invent/websites/br-qtcon-org/metadata.yaml
+++ b/projects-invent/websites/br-qtcon-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for QtCon Brazil
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Andrade
-  username: sandroandrade
+identifier: websites-br-qtcon-org
 name: QtCon Brazil Website
 projectpath: websites/br-qtcon-org
 repoactive: true
-repopath: websites/br-qtcon-org
-type: module
+repopath: /websites/br-qtcon-org
diff --git a/projects-invent/websites/bugs-kde-org/metadata.yaml b/projects-invent/websites/bugs-kde-org/metadata.yaml
index 73fcb0a9..9cca7589 100644
--- a/projects-invent/websites/bugs-kde-org/metadata.yaml
+++ b/projects-invent/websites/bugs-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Modified sources for the KDE Bug Tracking System (bugs.kde.org)
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-bugs-kde-org
 name: KDE Bug Tracking System
 projectpath: websites/bugs-kde-org
 repoactive: true
-repopath: websites/bugs-kde-org
-type: module
+repopath: /websites/bugs-kde-org
diff --git a/projects-invent/websites/buzz-kde-org/metadata.yaml b/projects-invent/websites/buzz-kde-org/metadata.yaml
index cfe7f35c..c6bb3a1f 100644
--- a/projects-invent/websites/buzz-kde-org/metadata.yaml
+++ b/projects-invent/websites/buzz-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Buzz.kde.org website content
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-buzz-kde-org
 name: Buzz Website Content
 projectpath: websites/buzz-kde-org
 repoactive: false
-repopath: websites/buzz-kde-org
-type: module
+repopath: /websites/buzz-kde-org
diff --git a/projects-invent/websites/calligra-org/metadata.yaml b/projects-invent/websites/calligra-org/metadata.yaml
index d42d9ac9..9e6a10f7 100644
--- a/projects-invent/websites/calligra-org/metadata.yaml
+++ b/projects-invent/websites/calligra-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for the Calligra Office Suite
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-calligra-org
 name: Calligra website
 projectpath: websites/calligra-org
 repoactive: true
-repopath: websites/calligra-org
-type: module
+repopath: /websites/calligra-org
diff --git a/projects-invent/websites/camp-kde-org/metadata.yaml b/projects-invent/websites/camp-kde-org/metadata.yaml
index 70d7ca54..7ec208c8 100644
--- a/projects-invent/websites/camp-kde-org/metadata.yaml
+++ b/projects-invent/websites/camp-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Files for the camp.kde.org web site
 hasrepo: true
-icon: null
-members:
-- displayname: Jeff Mitchell
-  username: mitchell
+identifier: websites-camp-kde-org
 name: Camp KDE web site
 projectpath: websites/camp-kde-org
 repoactive: true
-repopath: websites/camp-kde-org
-type: module
+repopath: /websites/camp-kde-org
diff --git a/projects-invent/websites/cantor-kde-org/metadata.yaml b/projects-invent/websites/cantor-kde-org/metadata.yaml
index fc8cb0a9..7c8303f3 100644
--- a/projects-invent/websites/cantor-kde-org/metadata.yaml
+++ b/projects-invent/websites/cantor-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for Cantor
 hasrepo: true
-icon: null
-members:
-- displayname: Filipe Saraiva
-  username: filipesaraiva
+identifier: websites-cantor-kde-org
 name: Cantor Website
 projectpath: websites/cantor-kde-org
 repoactive: false
-repopath: websites/cantor-kde-org
-type: module
+repopath: /websites/cantor-kde-org
diff --git a/projects-invent/websites/capacity-wordpress-integration/metadata.yaml b/projects-invent/websites/capacity-wordpress-integration/metadata.yaml
index fcc313b2..2b62b540 100644
--- a/projects-invent/websites/capacity-wordpress-integration/metadata.yaml
+++ b/projects-invent/websites/capacity-wordpress-integration/metadata.yaml
@@ -1,11 +1,8 @@
-description: Integration plugin for Wordpress allowing it to act as part of Capacity based sites
+description: Integration plugin for Wordpress allowing it to act as part of Capacity
+  based sites
 hasrepo: true
-icon: null
-members:
-- displayname: Ken Vermette
-  username: kvermette
+identifier: websites-capacity-wordpress-integration
 name: Capacity Integration for Wordpress
 projectpath: websites/capacity-wordpress-integration
 repoactive: true
-repopath: websites/capacity-wordpress-integration
-type: module
+repopath: /websites/capacity-wordpress-integration
diff --git a/projects-invent/websites/capacity/metadata.yaml b/projects-invent/websites/capacity/metadata.yaml
index 5c0bf06a..e02727f8 100644
--- a/projects-invent/websites/capacity/metadata.yaml
+++ b/projects-invent/websites/capacity/metadata.yaml
@@ -1,13 +1,7 @@
 description: PHP Application used as backend to display most of KDE's websites
 hasrepo: true
-icon: null
-members:
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: "Fr\xE9d\xE9ric Sheedy"
-  username: sheedy
+identifier: websites-capacity
 name: Capacity PHP Application
 projectpath: websites/capacity
 repoactive: true
-repopath: websites/capacity
-type: module
+repopath: /websites/capacity
diff --git a/projects-invent/websites/choqok-kde-org/metadata.yaml b/projects-invent/websites/choqok-kde-org/metadata.yaml
index df04db42..f2f7f765 100644
--- a/projects-invent/websites/choqok-kde-org/metadata.yaml
+++ b/projects-invent/websites/choqok-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Andrea Scarpino
-  username: scarpino
+identifier: websites-choqok-kde-org
 name: Choqok Website
 projectpath: websites/choqok-kde-org
 repoactive: true
-repopath: websites/choqok-kde-org
-type: module
+repopath: /websites/choqok-kde-org
diff --git a/projects-invent/websites/commit-digest-kde-org/metadata.yaml b/projects-invent/websites/commit-digest-kde-org/metadata.yaml
index b2540db4..9709ee7b 100644
--- a/projects-invent/websites/commit-digest-kde-org/metadata.yaml
+++ b/projects-invent/websites/commit-digest-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Static copy of the KDE Commit Digest
 hasrepo: true
-icon: null
-members:
-- displayname: Danny Allen
-  username: dannya
+identifier: websites-commit-digest-kde-org
 name: KDE Commit Digest
 projectpath: websites/commit-digest-kde-org
 repoactive: false
-repopath: websites/commit-digest-kde-org
-type: module
+repopath: /websites/commit-digest-kde-org
diff --git a/projects-invent/websites/conf-kde-in/metadata.yaml b/projects-invent/websites/conf-kde-in/metadata.yaml
index 2d8d1a2b..f135f119 100644
--- a/projects-invent/websites/conf-kde-in/metadata.yaml
+++ b/projects-invent/websites/conf-kde-in/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Sayak Banerjee
-  username: sayakb
-- displayname: Shantanu Tushar
-  username: shantanu
+identifier: websites-conf-kde-in
 name: KDE.in Conf website
 projectpath: websites/conf-kde-in
 repoactive: false
-repopath: websites/conf-kde-in
-type: module
+repopath: /websites/conf-kde-in
diff --git a/projects-invent/websites/conf-kde-org/metadata.yaml b/projects-invent/websites/conf-kde-org/metadata.yaml
index 83f9c6cc..b2cfb53f 100644
--- a/projects-invent/websites/conf-kde-org/metadata.yaml
+++ b/projects-invent/websites/conf-kde-org/metadata.yaml
@@ -1,14 +1,8 @@
 description: A conference management system, handling attendee registration and talk
   submission
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
-- displayname: Kenny Duffus
-  username: duffus
+identifier: websites-conf-kde-org
 name: KFrab
 projectpath: websites/conf-kde-org
 repoactive: true
-repopath: websites/conf-kde-org
-type: module
+repopath: /websites/conf-kde-org
diff --git a/projects-invent/websites/conf-qtcon-org/metadata.yaml b/projects-invent/websites/conf-qtcon-org/metadata.yaml
index 43641f3b..19fe3c25 100644
--- a/projects-invent/websites/conf-qtcon-org/metadata.yaml
+++ b/projects-invent/websites/conf-qtcon-org/metadata.yaml
@@ -1,9 +1,7 @@
 description: Static archive of the QtCon Conference Organisation system
 hasrepo: true
-icon: null
-members: []
+identifier: websites-conf-qtcon-org
 name: QtCon Conference Organisation
 projectpath: websites/conf-qtcon-org
 repoactive: true
-repopath: websites/conf-qtcon-org
-type: module
+repopath: /websites/conf-qtcon-org
diff --git a/projects-invent/websites/contents-neon-kde-org/metadata.yaml b/projects-invent/websites/contents-neon-kde-org/metadata.yaml
index 8e04f5de..ccfcb32f 100644
--- a/projects-invent/websites/contents-neon-kde-org/metadata.yaml
+++ b/projects-invent/websites/contents-neon-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: websites-contents-neon-kde-org
 name: Neon REST API for package contents queries
 projectpath: websites/contents-neon-kde-org
 repoactive: false
-repopath: websites/contents-neon-kde-org
-type: module
+repopath: /websites/contents-neon-kde-org
diff --git a/projects-invent/websites/cutehmi-kde-org/metadata.yaml b/projects-invent/websites/cutehmi-kde-org/metadata.yaml
index 26077dec..ac11d479 100644
--- a/projects-invent/websites/cutehmi-kde-org/metadata.yaml
+++ b/projects-invent/websites/cutehmi-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Resources for CuteHMI Website
 hasrepo: true
-icon: null
-members:
-- displayname: Michal Policht
-  username: mpolicht
+identifier: websites-cutehmi-kde-org
 name: CuteHMI Website
 projectpath: websites/cutehmi-kde-org
 repoactive: false
-repopath: websites/cutehmi-kde-org
-type: module
+repopath: /websites/cutehmi-kde-org
diff --git a/projects-invent/websites/desktopsummit-org/metadata.yaml b/projects-invent/websites/desktopsummit-org/metadata.yaml
index bae72dbb..25733c59 100644
--- a/projects-invent/websites/desktopsummit-org/metadata.yaml
+++ b/projects-invent/websites/desktopsummit-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Needed modules and themes for running the DesktopSummit website
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-desktopsummit-org
 name: DesktopSummit website
 projectpath: websites/desktopsummit-org
 repoactive: true
-repopath: websites/desktopsummit-org
-type: module
+repopath: /websites/desktopsummit-org
diff --git a/projects-invent/websites/digikam-org/metadata.yaml b/projects-invent/websites/digikam-org/metadata.yaml
index e6c7ad4d..db1bd676 100644
--- a/projects-invent/websites/digikam-org/metadata.yaml
+++ b/projects-invent/websites/digikam-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Infrastructure behind digikam.org. Uses the Hugo static site generator.
 hasrepo: true
-icon: null
-members:
-- displayname: Gilles Caulier
-  username: cgilles
+identifier: websites-digikam-org
 name: Digikam.org Website
 projectpath: websites/digikam-org
 repoactive: true
-repopath: websites/digikam-org
-type: module
+repopath: /websites/digikam-org
diff --git a/projects-invent/websites/discover-kde-org/metadata.yaml b/projects-invent/websites/discover-kde-org/metadata.yaml
index 9973910e..d0afe7f3 100644
--- a/projects-invent/websites/discover-kde-org/metadata.yaml
+++ b/projects-invent/websites/discover-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Drupal theme for Discover website
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-discover-kde-org
 name: Discover site theme
 projectpath: websites/discover-kde-org
 repoactive: false
-repopath: websites/discover-kde-org
-type: module
+repopath: /websites/discover-kde-org
diff --git a/projects-invent/websites/docs-kde-org/metadata.yaml b/projects-invent/websites/docs-kde-org/metadata.yaml
index 46f52331..d4847fa7 100644
--- a/projects-invent/websites/docs-kde-org/metadata.yaml
+++ b/projects-invent/websites/docs-kde-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: Scripts and other materials needed to support and operate docs.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Yuri Chornoivan
-  username: yurchor
-- displayname: "Burkhard L\xFCck"
-  username: lueck
-- displayname: Luigi Toscano
-  username: ltoscano
+identifier: websites-docs-kde-org
 name: docs.kde.org site infrastructure
 projectpath: websites/docs-kde-org
 repoactive: false
-repopath: websites/docs-kde-org
-type: module
+repopath: /websites/docs-kde-org
diff --git a/projects-invent/websites/download-kde-org/metadata.yaml b/projects-invent/websites/download-kde-org/metadata.yaml
index 75bf3295..571ec46f 100644
--- a/projects-invent/websites/download-kde-org/metadata.yaml
+++ b/projects-invent/websites/download-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Holds the configuration of MirrorBrain, templates, etc.
 hasrepo: true
-icon: null
-members:
-- displayname: Tom Albers
-  username: toma
+identifier: websites-download-kde-org
 name: download.kde.org website
 projectpath: websites/download-kde-org
 repoactive: false
-repopath: websites/download-kde-org
-type: module
+repopath: /websites/download-kde-org
diff --git a/projects-invent/websites/edu-kde-org/metadata.yaml b/projects-invent/websites/edu-kde-org/metadata.yaml
index 1fe08f67..69201519 100644
--- a/projects-invent/websites/edu-kde-org/metadata.yaml
+++ b/projects-invent/websites/edu-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Capacity source for edu.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Andreas Cord-Landwehr
-  username: cordlandwehr
+identifier: websites-edu-kde-org
 name: KDE Edu Website
 projectpath: websites/edu-kde-org
 repoactive: true
-repopath: websites/edu-kde-org
-type: module
+repopath: /websites/edu-kde-org
diff --git a/projects-invent/websites/ev-kde-org/metadata.yaml b/projects-invent/websites/ev-kde-org/metadata.yaml
index 37485c16..1b188115 100644
--- a/projects-invent/websites/ev-kde-org/metadata.yaml
+++ b/projects-invent/websites/ev-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: ev.kde.org website content
 hasrepo: true
-icon: null
-members:
-- displayname: "Nicol\xE1s Alvarez"
-  username: nalvarez
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-ev-kde-org
 name: ev.kde.org website
 projectpath: websites/ev-kde-org
 repoactive: false
-repopath: websites/ev-kde-org
-type: module
+repopath: /websites/ev-kde-org
diff --git a/projects-invent/websites/events-kde-org/metadata.yaml b/projects-invent/websites/events-kde-org/metadata.yaml
index 97e61a1d..21b83c0b 100644
--- a/projects-invent/websites/events-kde-org/metadata.yaml
+++ b/projects-invent/websites/events-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Conference and Sprint attendance management system.
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
-- displayname: Kenny Duffus
-  username: duffus
+identifier: websites-events-kde-org
 name: Event Registration System
 projectpath: websites/events-kde-org
 repoactive: true
-repopath: websites/events-kde-org
-type: module
+repopath: /websites/events-kde-org
diff --git a/projects-invent/websites/evolve-kde-org/metadata.yaml b/projects-invent/websites/evolve-kde-org/metadata.yaml
index 7cbdf2bc..b182365c 100644
--- a/projects-invent/websites/evolve-kde-org/metadata.yaml
+++ b/projects-invent/websites/evolve-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol Gonzalez
-  username: apol
+identifier: websites-evolve-kde-org
 name: Evolve website
 projectpath: websites/evolve-kde-org
 repoactive: false
-repopath: websites/evolve-kde-org
-type: module
+repopath: /websites/evolve-kde-org
diff --git a/projects-invent/websites/extensions-krita-org/metadata.yaml b/projects-invent/websites/extensions-krita-org/metadata.yaml
index 3b8ff0ee..bd1cd8cb 100644
--- a/projects-invent/websites/extensions-krita-org/metadata.yaml
+++ b/projects-invent/websites/extensions-krita-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Useful scripts used to power the extensions.krita.org website
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
-- displayname: Boudewijn Rempt
-  username: rempt
+identifier: websites-extensions-krita-org
 name: Krita Extensions
 projectpath: websites/extensions-krita-org
 repoactive: true
-repopath: websites/extensions-krita-org
-type: module
+repopath: /websites/extensions-krita-org
diff --git a/projects-invent/websites/falkon-org/metadata.yaml b/projects-invent/websites/falkon-org/metadata.yaml
index 42ca4405..c3a39cee 100644
--- a/projects-invent/websites/falkon-org/metadata.yaml
+++ b/projects-invent/websites/falkon-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Falkon.org website content
 hasrepo: true
-icon: null
-members:
-- displayname: David Rosca
-  username: drosca 
+identifier: websites-falkon-org
 name: Falkon.org website
 projectpath: websites/falkon-org
 repoactive: false
-repopath: websites/falkon-org
-type: module
+repopath: /websites/falkon-org
diff --git a/projects-invent/websites/forum-kde-org/metadata.yaml b/projects-invent/websites/forum-kde-org/metadata.yaml
index 8a8f32d7..4bc1c2e8 100644
--- a/projects-invent/websites/forum-kde-org/metadata.yaml
+++ b/projects-invent/websites/forum-kde-org/metadata.yaml
@@ -1,17 +1,7 @@
 description: KDE Community Forums version of phpBB.
 hasrepo: true
-icon: null
-members:
-- displayname: Luca Beltrame
-  username: lbeltrame
-- displayname: Sayak Banerjee
-  username: sayakb
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-forum-kde-org
 name: Forum (phpBB)
 projectpath: websites/forum-kde-org
 repoactive: true
-repopath: websites/forum-kde-org
-type: module
+repopath: /websites/forum-kde-org
diff --git a/projects-invent/websites/fr-kde-org/metadata.yaml b/projects-invent/websites/fr-kde-org/metadata.yaml
index 6d0ef7f9..e32c5ef0 100644
--- a/projects-invent/websites/fr-kde-org/metadata.yaml
+++ b/projects-invent/websites/fr-kde-org/metadata.yaml
@@ -1,21 +1,7 @@
 description: Data for fr.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: "Aur\xE9lien G\xE2teau"
-  username: gateau
-- displayname: Kevin Ottens
-  username: ervin
-- displayname: "S\xE9bastien Renard"
-  username: renard
-- displayname: Benjamin Port
-  username: bport
-- displayname: Jean-Nicolas Artaud
-  username: artaud
-- displayname: "Fr\xE9d\xE9ric Sheedy"
-  username: sheedy
+identifier: websites-fr-kde-org
 name: KDE Fr Website
 projectpath: websites/fr-kde-org
 repoactive: false
-repopath: websites/fr-kde-org
-type: module
+repopath: /websites/fr-kde-org
diff --git a/projects-invent/websites/freebsd-kde-org/metadata.yaml b/projects-invent/websites/freebsd-kde-org/metadata.yaml
index 2f450572..c393a632 100644
--- a/projects-invent/websites/freebsd-kde-org/metadata.yaml
+++ b/projects-invent/websites/freebsd-kde-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: Website of the KDE/FreeBSD initiative.
 hasrepo: true
-icon: null
-members:
-- displayname: Raphael Kubo da Costa
-  username: rkcosta
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: Alberto Villa
-  username: avilla
+identifier: websites-freebsd-kde-org
 name: KDE/FreeBSD website
 projectpath: websites/freebsd-kde-org
 repoactive: true
-repopath: websites/freebsd-kde-org
-type: module
+repopath: /websites/freebsd-kde-org
diff --git a/projects-invent/websites/fund-krita-org/metadata.yaml b/projects-invent/websites/fund-krita-org/metadata.yaml
index 45c7e1b9..63125531 100644
--- a/projects-invent/websites/fund-krita-org/metadata.yaml
+++ b/projects-invent/websites/fund-krita-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Infrastructure for the Krita Fund Site
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-fund-krita-org
 name: Krita Fund Website
 projectpath: websites/fund-krita-org
 repoactive: false
-repopath: websites/fund-krita-org
-type: module
+repopath: /websites/fund-krita-org
diff --git a/projects-invent/websites/games-kde-org/metadata.yaml b/projects-invent/websites/games-kde-org/metadata.yaml
index 1df3a9ff..7bf130ed 100644
--- a/projects-invent/websites/games-kde-org/metadata.yaml
+++ b/projects-invent/websites/games-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for KDE Games
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
+identifier: websites-games-kde-org
 name: KDE Games website
 projectpath: websites/games-kde-org
 repoactive: false
-repopath: websites/games-kde-org
-type: module
+repopath: /websites/games-kde-org
diff --git a/projects-invent/websites/gcompris-net/metadata.yaml b/projects-invent/websites/gcompris-net/metadata.yaml
index 88336acd..ad147ae9 100644
--- a/projects-invent/websites/gcompris-net/metadata.yaml
+++ b/projects-invent/websites/gcompris-net/metadata.yaml
@@ -1,15 +1,7 @@
 description: Website for the Educational Software GCompris
 hasrepo: true
-icon: null
-members:
-- displayname: Johnny Jazeix
-  username: jjazeix
-- displayname: Holger Kaelberer
-  username: hkaelberer
-- displayname: Bruno Coudoin
-  username: bcoudoin
+identifier: websites-gcompris-net
 name: GCompris website
 projectpath: websites/gcompris-net
 repoactive: true
-repopath: websites/gcompris-net
-type: module
+repopath: /websites/gcompris-net
diff --git a/projects-invent/websites/i-kaidan-im/metadata.yaml b/projects-invent/websites/i-kaidan-im/metadata.yaml
index 4b54be1b..e989fd9b 100644
--- a/projects-invent/websites/i-kaidan-im/metadata.yaml
+++ b/projects-invent/websites/i-kaidan-im/metadata.yaml
@@ -1,11 +1,7 @@
 description: Easy XMPP Invitation Landing Page for Kaidan
 hasrepo: true
-icon: null
-members:
-- displayname: Linus Jahn
-  username: lnj
+identifier: websites-i-kaidan-im
 name: i.kaidan.im
 projectpath: websites/i-kaidan-im
 repoactive: false
-repopath: websites/i-kaidan-im
-type: module
+repopath: /websites/i-kaidan-im
diff --git a/projects-invent/websites/identity-kde-org/metadata.yaml b/projects-invent/websites/identity-kde-org/metadata.yaml
index e265c0d4..584a3489 100644
--- a/projects-invent/websites/identity-kde-org/metadata.yaml
+++ b/projects-invent/websites/identity-kde-org/metadata.yaml
@@ -1,9 +1,7 @@
 description: Custom KDE application, codename Solena, which runs identity.kde.org
 hasrepo: true
-icon: null
-members: []
+identifier: websites-identity-kde-org
 name: Identity (Solena)
 projectpath: websites/identity-kde-org
 repoactive: true
-repopath: websites/identity-kde-org
-type: module
+repopath: /websites/identity-kde-org
diff --git a/projects-invent/websites/inqlude-data/metadata.yaml b/projects-invent/websites/inqlude-data/metadata.yaml
index 7a9d6e76..2c2e5f9f 100644
--- a/projects-invent/websites/inqlude-data/metadata.yaml
+++ b/projects-invent/websites/inqlude-data/metadata.yaml
@@ -1,11 +1,7 @@
 description: Library meta data for Inqlude, the Qt library archive
 hasrepo: true
-icon: null
-members:
-- displayname: Cornelius Schumacher
-  username: cschumac
+identifier: websites-inqlude-data
 name: Data for Qt library archive
 projectpath: websites/inqlude-data
 repoactive: false
-repopath: websites/inqlude-data
-type: module
+repopath: /websites/inqlude-data
diff --git a/projects-invent/websites/inqlude/metadata.yaml b/projects-invent/websites/inqlude/metadata.yaml
index 2317da8e..4ae108fe 100644
--- a/projects-invent/websites/inqlude/metadata.yaml
+++ b/projects-invent/websites/inqlude/metadata.yaml
@@ -1,11 +1,7 @@
 description: Tools for Inqlude, the Qt library archive
 hasrepo: true
-icon: null
-members:
-- displayname: Cornelius Schumacher
-  username: cschumac
+identifier: websites-inqlude
 name: Tools for Qt library archive
 projectpath: websites/inqlude
 repoactive: false
-repopath: websites/inqlude
-type: module
+repopath: /websites/inqlude
diff --git a/projects-invent/websites/jekyll-kde-theme/metadata.yaml b/projects-invent/websites/jekyll-kde-theme/metadata.yaml
index 4cb12581..2b6220db 100644
--- a/projects-invent/websites/jekyll-kde-theme/metadata.yaml
+++ b/projects-invent/websites/jekyll-kde-theme/metadata.yaml
@@ -1,11 +1,7 @@
 description: Jekyll theme for KDE websites
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-jekyll-kde-theme
 name: Jekyll KDE Theme
 projectpath: websites/jekyll-kde-theme
 repoactive: false
-repopath: websites/jekyll-kde-theme
-type: module
+repopath: /websites/jekyll-kde-theme
diff --git a/projects-invent/websites/jointhegame-kde-org/metadata.yaml b/projects-invent/websites/jointhegame-kde-org/metadata.yaml
index dc3ac222..cb6a2c16 100644
--- a/projects-invent/websites/jointhegame-kde-org/metadata.yaml
+++ b/projects-invent/websites/jointhegame-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Join The Game, KDE EV's website for individual membership program.
 hasrepo: true
-icon: null
-members:
-- displayname: Emil Sedgh
-  username: esedgh
+identifier: websites-jointhegame-kde-org
 name: Join The Game
 projectpath: websites/jointhegame-kde-org
 repoactive: true
-repopath: websites/jointhegame-kde-org
-type: module
+repopath: /websites/jointhegame-kde-org
diff --git a/projects-invent/websites/jp-kde-org/metadata.yaml b/projects-invent/websites/jp-kde-org/metadata.yaml
index d55d38d2..93b3cf1c 100644
--- a/projects-invent/websites/jp-kde-org/metadata.yaml
+++ b/projects-invent/websites/jp-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Japan local community website
 hasrepo: true
-icon: null
-members:
-- displayname: Jumpei Ogawa
-  username: jogawa
+identifier: websites-jp-kde-org
 name: Japan Community Website
 projectpath: websites/jp-kde-org
 repoactive: false
-repopath: websites/jp-kde-org
-type: module
+repopath: /websites/jp-kde-org
diff --git a/projects-invent/websites/juk-kde-org/metadata.yaml b/projects-invent/websites/juk-kde-org/metadata.yaml
index dcd8bf35..1d830bff 100644
--- a/projects-invent/websites/juk-kde-org/metadata.yaml
+++ b/projects-invent/websites/juk-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Repository for JuK Homepage
 hasrepo: true
-icon: null
-members:
-- displayname: Shubham Chaudhary
-  username: chaudhary
-- displayname: Michael Pyne
-  username: mpyne
+identifier: websites-juk-kde-org
 name: JuK Homepage
 projectpath: websites/juk-kde-org
 repoactive: true
-repopath: websites/juk-kde-org
-type: module
+repopath: /websites/juk-kde-org
diff --git a/projects-invent/websites/kaidan-im/metadata.yaml b/projects-invent/websites/kaidan-im/metadata.yaml
index a27c24b4..3b13da22 100644
--- a/projects-invent/websites/kaidan-im/metadata.yaml
+++ b/projects-invent/websites/kaidan-im/metadata.yaml
@@ -1,11 +1,7 @@
 description: www.kaidan.im website content
 hasrepo: true
-icon: null
-members:
-- displayname: Linus Jahn
-  username: lnj
+identifier: websites-kaidan-im
 name: www.kaidan.im website
 projectpath: websites/kaidan-im
 repoactive: false
-repopath: websites/kaidan-im
-type: module
+repopath: /websites/kaidan-im
diff --git a/projects-invent/websites/kate-editor-org/metadata.yaml b/projects-invent/websites/kate-editor-org/metadata.yaml
index 64c2a8e4..baeabda6 100644
--- a/projects-invent/websites/kate-editor-org/metadata.yaml
+++ b/projects-invent/websites/kate-editor-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for Kate Text Editor
 hasrepo: true
-icon: null
-members:
-- displayname: Christoph Cullmann
-  username: cullmann
+identifier: websites-kate-editor-org
 name: Kate Editor Website
 projectpath: websites/kate-editor-org
 repoactive: true
-repopath: websites/kate-editor-org
-type: module
+repopath: /websites/kate-editor-org
diff --git a/projects-invent/websites/kde-china-org/metadata.yaml b/projects-invent/websites/kde-china-org/metadata.yaml
index 392199aa..074a547a 100644
--- a/projects-invent/websites/kde-china-org/metadata.yaml
+++ b/projects-invent/websites/kde-china-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for KDE China
 hasrepo: true
-icon: null
-members:
-- displayname: Yunhe Guo
-  username: guoyunhe
+identifier: websites-kde-china-org
 name: KDE China website
 projectpath: websites/kde-china-org
 repoactive: false
-repopath: websites/kde-china-org
-type: module
+repopath: /websites/kde-china-org
diff --git a/projects-invent/websites/kde-in/metadata.yaml b/projects-invent/websites/kde-in/metadata.yaml
index 9806b1ff..d8680112 100644
--- a/projects-invent/websites/kde-in/metadata.yaml
+++ b/projects-invent/websites/kde-in/metadata.yaml
@@ -1,17 +1,7 @@
 description: KDE India community website powered by WordPress.
 hasrepo: true
-icon: null
-members:
-- displayname: Sayak Banerjee
-  username: sayakb
-- displayname: Pradeepto Bhattacharya
-  username: pradeepto
-- displayname: Nikhil Shantanu Marathe
-  username: nikhilm
-- displayname: Shantanu Tushar
-  username: shantanu
+identifier: websites-kde-in
 name: KDE India (WordPress)
 projectpath: websites/kde-in
 repoactive: true
-repopath: websites/kde-in
-type: module
+repopath: /websites/kde-in
diff --git a/projects-invent/websites/kde-org-announcements-releases/metadata.yaml b/projects-invent/websites/kde-org-announcements-releases/metadata.yaml
index e5d11d39..83d619b6 100644
--- a/projects-invent/websites/kde-org-announcements-releases/metadata.yaml
+++ b/projects-invent/websites/kde-org-announcements-releases/metadata.yaml
@@ -1,11 +1,7 @@
 description: Release Announcements for KDE.org
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-kde-org-announcements-releases
 name: KDE.org Release Announcements
 projectpath: websites/kde-org-announcements-releases
 repoactive: true
-repopath: websites/kde-org-announcements-releases
-type: module
+repopath: /websites/kde-org-announcements-releases
diff --git a/projects-invent/websites/kde-org-applications-extractor/metadata.yaml b/projects-invent/websites/kde-org-applications-extractor/metadata.yaml
index 669aab5b..7fe15ee6 100644
--- a/projects-invent/websites/kde-org-applications-extractor/metadata.yaml
+++ b/projects-invent/websites/kde-org-applications-extractor/metadata.yaml
@@ -1,11 +1,7 @@
 description: Appstream Metadata Extractor for Applications Subsite on KDE.org
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: websites-kde-org-applications-extractor
 name: Appstream Metadata Extractor for KDE.org
 projectpath: websites/kde-org-applications-extractor
 repoactive: true
-repopath: websites/kde-org-applications-extractor
-type: module
+repopath: /websites/kde-org-applications-extractor
diff --git a/projects-invent/websites/kde-org-applications/metadata.yaml b/projects-invent/websites/kde-org-applications/metadata.yaml
index fe658b07..ea16a9fb 100644
--- a/projects-invent/websites/kde-org-applications/metadata.yaml
+++ b/projects-invent/websites/kde-org-applications/metadata.yaml
@@ -1,11 +1,7 @@
 description: Applications Subsite for KDE.org
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: websites-kde-org-applications
 name: KDE.org Applications Subsite
 projectpath: websites/kde-org-applications
 repoactive: true
-repopath: websites/kde-org-applications
-type: module
+repopath: /websites/kde-org-applications
diff --git a/projects-invent/websites/kde-ru/metadata.yaml b/projects-invent/websites/kde-ru/metadata.yaml
index 25eee6d1..947ad432 100644
--- a/projects-invent/websites/kde-ru/metadata.yaml
+++ b/projects-invent/websites/kde-ru/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Russia website.
 hasrepo: true
-icon: null
-members:
-- displayname: Ilya Bizyaev
-  username: ilyabizyaev
-- displayname: Alexander Potashev
-  username: aspotashev
+identifier: websites-kde-ru
 name: KDE Russia
 projectpath: websites/kde-ru
 repoactive: true
-repopath: websites/kde-ru
-type: module
+repopath: /websites/kde-ru
diff --git a/projects-invent/websites/kdeconnect-kde-org/metadata.yaml b/projects-invent/websites/kdeconnect-kde-org/metadata.yaml
index 343abf7b..6438fd3f 100644
--- a/projects-invent/websites/kdeconnect-kde-org/metadata.yaml
+++ b/projects-invent/websites/kdeconnect-kde-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: Website for the KDE Connect project.
 hasrepo: true
-icon: null
-members:
-- displayname: Aleix Pol
-  username: apol
-- displayname: Nicolas Fella
-  username: nicolasfella
-- displayname: Albert Vaca Cintora
-  username: albertvaka
+identifier: websites-kdeconnect-kde-org
 name: KDE Connect Website
 projectpath: websites/kdeconnect-kde-org
 repoactive: false
-repopath: websites/kdeconnect-kde-org
-type: module
+repopath: /websites/kdeconnect-kde-org
diff --git a/projects-invent/websites/kdeitalia-it/metadata.yaml b/projects-invent/websites/kdeitalia-it/metadata.yaml
index da97c102..63960615 100644
--- a/projects-invent/websites/kdeitalia-it/metadata.yaml
+++ b/projects-invent/websites/kdeitalia-it/metadata.yaml
@@ -1,13 +1,7 @@
 description: KDE Italia Website
 hasrepo: true
-icon: null
-members:
-- displayname: Luigi Toscano
-  username: ltoscano
-- displayname: Carmine De Rosa
-  username: derosa
+identifier: websites-kdeitalia-it
 name: KDE Italia Website
 projectpath: websites/kdeitalia-it
 repoactive: true
-repopath: websites/kdeitalia-it
-type: module
+repopath: /websites/kdeitalia-it
diff --git a/projects-invent/websites/kdemail-net/metadata.yaml b/projects-invent/websites/kdemail-net/metadata.yaml
index cf385751..c636a831 100644
--- a/projects-invent/websites/kdemail-net/metadata.yaml
+++ b/projects-invent/websites/kdemail-net/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDEMail.net website content
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-kdemail-net
 name: KDEMail.net website
 projectpath: websites/kdemail-net
 repoactive: false
-repopath: websites/kdemail-net
-type: module
+repopath: /websites/kdemail-net
diff --git a/projects-invent/websites/kdesrc-build-kde-org/metadata.yaml b/projects-invent/websites/kdesrc-build-kde-org/metadata.yaml
index ebd418c5..4224a965 100644
--- a/projects-invent/websites/kdesrc-build-kde-org/metadata.yaml
+++ b/projects-invent/websites/kdesrc-build-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Content for kdesrc-build.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Michael Pyne
-  username: mpyne
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-kdesrc-build-kde-org
 name: kdesrc-build.kde.org website
 projectpath: websites/kdesrc-build-kde-org
 repoactive: false
-repopath: websites/kdesrc-build-kde-org
-type: module
+repopath: /websites/kdesrc-build-kde-org
diff --git a/projects-invent/websites/kdetalk-net/metadata.yaml b/projects-invent/websites/kdetalk-net/metadata.yaml
index 371ee497..5feca2c3 100644
--- a/projects-invent/websites/kdetalk-net/metadata.yaml
+++ b/projects-invent/websites/kdetalk-net/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDETalk.net website content
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-kdetalk-net
 name: KDETalk.net website
 projectpath: websites/kdetalk-net
 repoactive: false
-repopath: websites/kdetalk-net
-type: module
+repopath: /websites/kdetalk-net
diff --git a/projects-invent/websites/kid3-kde-org/metadata.yaml b/projects-invent/websites/kid3-kde-org/metadata.yaml
index 56e2ec5b..e86be536 100644
--- a/projects-invent/websites/kid3-kde-org/metadata.yaml
+++ b/projects-invent/websites/kid3-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kid3 Website
 hasrepo: true
-icon: null
-members:
-- displayname: Urs Fleisch
-  username: ufleisch
+identifier: websites-kid3-kde-org
 name: Kid3 Website
 projectpath: websites/kid3-kde-org
 repoactive: true
-repopath: websites/kid3-kde-org
-type: module
+repopath: /websites/kid3-kde-org
diff --git a/projects-invent/websites/kirogi-kde-org/metadata.yaml b/projects-invent/websites/kirogi-kde-org/metadata.yaml
index 8982aad0..c6dd1492 100644
--- a/projects-invent/websites/kirogi-kde-org/metadata.yaml
+++ b/projects-invent/websites/kirogi-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for Kirogi
 hasrepo: true
-icon: kirogi
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: websites-kirogi-kde-org
 name: Kirogi Website
 projectpath: websites/kirogi-kde-org
 repoactive: true
-repopath: websites/kirogi-kde-org
-type: module
+repopath: /websites/kirogi-kde-org
diff --git a/projects-invent/websites/kmymoney-org/metadata.yaml b/projects-invent/websites/kmymoney-org/metadata.yaml
index 7bc030fc..a6da6337 100644
--- a/projects-invent/websites/kmymoney-org/metadata.yaml
+++ b/projects-invent/websites/kmymoney-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: Website for KMyMoney
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Baumgart
-  username: tbaumgart
-- displayname: "Cristian One\u021B"
-  username: conet
-- displayname: Alvaro Soliverez
-  username: asoliverez
+identifier: websites-kmymoney-org
 name: KMyMoney website
 projectpath: websites/kmymoney-org
 repoactive: true
-repopath: websites/kmymoney-org
-type: module
+repopath: /websites/kmymoney-org
diff --git a/projects-invent/websites/konqueror-org/metadata.yaml b/projects-invent/websites/konqueror-org/metadata.yaml
index 0c7b9f7e..399af88f 100644
--- a/projects-invent/websites/konqueror-org/metadata.yaml
+++ b/projects-invent/websites/konqueror-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Konqueror.org website content
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-konqueror-org
 name: Konqueror.org website
 projectpath: websites/konqueror-org
 repoactive: false
-repopath: websites/konqueror-org
-type: module
+repopath: /websites/konqueror-org
diff --git a/projects-invent/websites/konsole-kde-org/metadata.yaml b/projects-invent/websites/konsole-kde-org/metadata.yaml
index 80d36c21..2ebe19d1 100644
--- a/projects-invent/websites/konsole-kde-org/metadata.yaml
+++ b/projects-invent/websites/konsole-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Konsole's website at konsole.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Kurt Hindenburg
-  username: hindenburg
+identifier: websites-konsole-kde-org
 name: Konsole website
 projectpath: websites/konsole-kde-org
 repoactive: true
-repopath: websites/konsole-kde-org
-type: module
+repopath: /websites/konsole-kde-org
diff --git a/projects-invent/websites/kontact-kde-org/metadata.yaml b/projects-invent/websites/kontact-kde-org/metadata.yaml
index dcf3d637..8b552f84 100644
--- a/projects-invent/websites/kontact-kde-org/metadata.yaml
+++ b/projects-invent/websites/kontact-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Kontact Promotional Website
 hasrepo: true
-icon: null
-members:
-- displayname: Daniel Vrátil
-  username: dvratil
+identifier: websites-kontact-kde-org
 name: Kontact Website
 projectpath: websites/kontact-kde-org
 repoactive: true
-repopath: websites/kontact-kde-org
-type: module
+repopath: /websites/kontact-kde-org
diff --git a/projects-invent/websites/konversation-kde-org/metadata.yaml b/projects-invent/websites/konversation-kde-org/metadata.yaml
index 22623a57..2975757f 100644
--- a/projects-invent/websites/konversation-kde-org/metadata.yaml
+++ b/projects-invent/websites/konversation-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: This holds the sources for the konversation.kde.org-website.
 hasrepo: true
-icon: konversation
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: websites-konversation-kde-org
 name: Konversation Website
 projectpath: websites/konversation-kde-org
 repoactive: true
-repopath: websites/konversation-kde-org
-type: module
+repopath: /websites/konversation-kde-org
diff --git a/projects-invent/websites/kphotoalbum-org/metadata.yaml b/projects-invent/websites/kphotoalbum-org/metadata.yaml
index ed3e09e5..e93d633d 100644
--- a/projects-invent/websites/kphotoalbum-org/metadata.yaml
+++ b/projects-invent/websites/kphotoalbum-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for KPhotoAlbum
 hasrepo: true
-icon: null
-members:
-- displayname: Tobias Leupold
-  username: tleupold
+identifier: websites-kphotoalbum-org
 name: KPhotoAlbum Website
 projectpath: websites/kphotoalbum-org
 repoactive: false
-repopath: websites/kphotoalbum-org
-type: module
+repopath: /websites/kphotoalbum-org
diff --git a/projects-invent/websites/krita-org-theme/metadata.yaml b/projects-invent/websites/krita-org-theme/metadata.yaml
index ad549db1..f7275424 100644
--- a/projects-invent/websites/krita-org-theme/metadata.yaml
+++ b/projects-invent/websites/krita-org-theme/metadata.yaml
@@ -1,11 +1,7 @@
 description: Theme for the Krita.org website, powered by Wordpress
 hasrepo: true
-icon: null
-members:
-- displayname: Scott Petrovic
-  username: scottpetrovic
+identifier: websites-krita-org-theme
 name: Krita.org website theme
 projectpath: websites/krita-org-theme
 repoactive: false
-repopath: websites/krita-org-theme
-type: module
+repopath: /websites/krita-org-theme
diff --git a/projects-invent/websites/krusader-org/metadata.yaml b/projects-invent/websites/krusader-org/metadata.yaml
index 063cba8e..513cea16 100644
--- a/projects-invent/websites/krusader-org/metadata.yaml
+++ b/projects-invent/websites/krusader-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Krusader Website
 hasrepo: true
-icon: null
-members:
-- displayname: Torbjörn Stabo
-  username: stabo
-- displayname: Alex Bikadorov
-  username: abikadorov
+identifier: websites-krusader-org
 name: Krusader Website
 projectpath: websites/krusader-org
 repoactive: false
-repopath: websites/krusader-org
-type: module
+repopath: /websites/krusader-org
diff --git a/projects-invent/websites/kube-kde-org/metadata.yaml b/projects-invent/websites/kube-kde-org/metadata.yaml
index 3a1da337..7f1b3549 100644
--- a/projects-invent/websites/kube-kde-org/metadata.yaml
+++ b/projects-invent/websites/kube-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Data and other utilities needed to run kube.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Christian Mollekopf
-  username: cmollekopf
+identifier: websites-kube-kde-org
 name: Kube Website
 projectpath: websites/kube-kde-org
 repoactive: true
-repopath: websites/kube-kde-org
-type: module
+repopath: /websites/kube-kde-org
diff --git a/projects-invent/websites/lakademy-kde-org/metadata.yaml b/projects-invent/websites/lakademy-kde-org/metadata.yaml
index 09468ff7..8f2427c1 100644
--- a/projects-invent/websites/lakademy-kde-org/metadata.yaml
+++ b/projects-invent/websites/lakademy-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: LAkademy website
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro S. Andrade
-  username: sandroandrade
+identifier: websites-lakademy-kde-org
 name: LAkademy.kde.org website
 projectpath: websites/lakademy-kde-org
 repoactive: false
-repopath: websites/lakademy-kde-org
-type: module
+repopath: /websites/lakademy-kde-org
diff --git a/projects-invent/websites/lists-kde-org/metadata.yaml b/projects-invent/websites/lists-kde-org/metadata.yaml
index d18f7c39..29bbbff7 100644
--- a/projects-invent/websites/lists-kde-org/metadata.yaml
+++ b/projects-invent/websites/lists-kde-org/metadata.yaml
@@ -1,12 +1,8 @@
 description: Necessary code to redirect people from lists.kde.org to appropriate mail
   archives
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-lists-kde-org
 name: lists.kde.org redirector
 projectpath: websites/lists-kde-org
 repoactive: false
-repopath: websites/lists-kde-org
-type: module
+repopath: /websites/lists-kde-org
diff --git a/projects-invent/websites/lokalize-kde-org/metadata.yaml b/projects-invent/websites/lokalize-kde-org/metadata.yaml
index 740787b1..58947d19 100644
--- a/projects-invent/websites/lokalize-kde-org/metadata.yaml
+++ b/projects-invent/websites/lokalize-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: Nick Shaforostoff
-  username: shaforo
+identifier: websites-lokalize-kde-org
 name: Lokalize website
 projectpath: websites/lokalize-kde-org
 repoactive: false
-repopath: websites/lokalize-kde-org
-type: module
+repopath: /websites/lokalize-kde-org
diff --git a/projects-invent/websites/manifesto-kde-org/metadata.yaml b/projects-invent/websites/manifesto-kde-org/metadata.yaml
index 5eaf5a16..1f25abee 100644
--- a/projects-invent/websites/manifesto-kde-org/metadata.yaml
+++ b/projects-invent/websites/manifesto-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Manifesto
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
+identifier: websites-manifesto-kde-org
 name: KDE Manifesto
 projectpath: websites/manifesto-kde-org
 repoactive: true
-repopath: websites/manifesto-kde-org
-type: module
+repopath: /websites/manifesto-kde-org
diff --git a/projects-invent/websites/marble-kde-org/metadata.yaml b/projects-invent/websites/marble-kde-org/metadata.yaml
index 1874bddd..33ccf355 100644
--- a/projects-invent/websites/marble-kde-org/metadata.yaml
+++ b/projects-invent/websites/marble-kde-org/metadata.yaml
@@ -1,17 +1,7 @@
 description: Contains the new website for Marble
 hasrepo: true
-icon: null
-members:
-- displayname: Torsten Rahn
-  username: rahn
-- displayname: "Dennis Nienh\xFCser"
-  username: nienhueser
-- displayname: "Utku Ayd\u0131n"
-  username: aydin
-- displayname: Bernhard Beschow
-  username: beschow
+identifier: websites-marble-kde-org
 name: Marble website
 projectpath: websites/marble-kde-org
 repoactive: true
-repopath: websites/marble-kde-org
-type: module
+repopath: /websites/marble-kde-org
diff --git a/projects-invent/websites/mediawiki-bugzilla/metadata.yaml b/projects-invent/websites/mediawiki-bugzilla/metadata.yaml
index d89024c1..0592e365 100644
--- a/projects-invent/websites/mediawiki-bugzilla/metadata.yaml
+++ b/projects-invent/websites/mediawiki-bugzilla/metadata.yaml
@@ -1,11 +1,7 @@
 description: Bugzilla plugin for MediaWiki
 hasrepo: true
-icon: null
-members:
-- displayname: Carl Schwan
-  username: carlschwan
+identifier: websites-mediawiki-bugzilla
 name: MediaWiki Bugzilla Plugin
 projectpath: websites/mediawiki-bugzilla
 repoactive: true
-repopath: websites/mediawiki-bugzilla
-type: module
+repopath: /websites/mediawiki-bugzilla
diff --git a/projects-invent/websites/mediawiki/metadata.yaml b/projects-invent/websites/mediawiki/metadata.yaml
index f715d96b..8fe58275 100644
--- a/projects-invent/websites/mediawiki/metadata.yaml
+++ b/projects-invent/websites/mediawiki/metadata.yaml
@@ -1,13 +1,7 @@
 description: Customized version of MediaWiki used by the KDE Wikis.
 hasrepo: true
-icon: null
-members:
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: Sayak Banerjee
-  username: sayakb
+identifier: websites-mediawiki
 name: KDE Wikis (MediaWiki)
 projectpath: websites/mediawiki
 repoactive: true
-repopath: websites/mediawiki
-type: module
+repopath: /websites/mediawiki
diff --git a/projects-invent/websites/metadata.yaml b/projects-invent/websites/metadata.yaml
index 64cd1fec..346cdf23 100644
--- a/projects-invent/websites/metadata.yaml
+++ b/projects-invent/websites/metadata.yaml
@@ -1,9 +1,7 @@
 description: Repositories which hold websites.
 hasrepo: false
-icon: null
-members: []
+identifier: null
 name: Websites
 projectpath: websites
 repoactive: false
-repopath: null
-type: component
+repopath: /websites
diff --git a/projects-invent/websites/minuet-kde-org/metadata.yaml b/projects-invent/websites/minuet-kde-org/metadata.yaml
index 093c9dfa..26e17dee 100644
--- a/projects-invent/websites/minuet-kde-org/metadata.yaml
+++ b/projects-invent/websites/minuet-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Minuet Website
 hasrepo: true
-icon: null
-members:
-- displayname: Sandro Andrade
-  username: sandroandrade
+identifier: websites-minuet-kde-org
 name: Minuet Website
 projectpath: websites/minuet-kde-org
 repoactive: false
-repopath: websites/minuet-kde-org
-type: module
+repopath: /websites/minuet-kde-org
diff --git a/projects-invent/websites/multimedia-kde-org/metadata.yaml b/projects-invent/websites/multimedia-kde-org/metadata.yaml
index d4006a7d..9eaa3753 100644
--- a/projects-invent/websites/multimedia-kde-org/metadata.yaml
+++ b/projects-invent/websites/multimedia-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Repository for the KDE Multimedia website
 hasrepo: true
-icon: null
-members:
-- displayname: Torrie Fischer
-  username: tdfischer
+identifier: websites-multimedia-kde-org
 name: KDE Multimedia website
 projectpath: websites/multimedia-kde-org
 repoactive: true
-repopath: websites/multimedia-kde-org
-type: module
+repopath: /websites/multimedia-kde-org
diff --git a/projects-invent/websites/my-kde-org/metadata.yaml b/projects-invent/websites/my-kde-org/metadata.yaml
index 63b122ab..9435ec26 100644
--- a/projects-invent/websites/my-kde-org/metadata.yaml
+++ b/projects-invent/websites/my-kde-org/metadata.yaml
@@ -1,9 +1,7 @@
 description: Unified Identity Management for KDE Websites
 hasrepo: true
-icon: null
-members: []
+identifier: websites-my-kde-org
 name: MyKDE
 projectpath: websites/my-kde-org
 repoactive: true
-repopath: websites/my-kde-org
-type: module
+repopath: /websites/my-kde-org
diff --git a/projects-invent/websites/necessitas-kde-org/metadata.yaml b/projects-invent/websites/necessitas-kde-org/metadata.yaml
index 31b6d48e..93a01833 100644
--- a/projects-invent/websites/necessitas-kde-org/metadata.yaml
+++ b/projects-invent/websites/necessitas-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Website for the Necessitas project (Qt on Android)
 hasrepo: true
-icon: null
-members:
-- displayname: BogDan Vatra
-  username: vatra
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-necessitas-kde-org
 name: Necessitas website
 projectpath: websites/necessitas-kde-org
 repoactive: true
-repopath: websites/necessitas-kde-org
-type: module
+repopath: /websites/necessitas-kde-org
diff --git a/projects-invent/websites/neon-kde-org/metadata.yaml b/projects-invent/websites/neon-kde-org/metadata.yaml
index 0ef942f7..bb35871e 100644
--- a/projects-invent/websites/neon-kde-org/metadata.yaml
+++ b/projects-invent/websites/neon-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website at neon.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: websites-neon-kde-org
 name: Neon Website
 projectpath: websites/neon-kde-org
 repoactive: false
-repopath: websites/neon-kde-org
-type: module
+repopath: /websites/neon-kde-org
diff --git a/projects-invent/websites/neverland/metadata.yaml b/projects-invent/websites/neverland/metadata.yaml
index bc7ff4c9..8cdb5a0b 100644
--- a/projects-invent/websites/neverland/metadata.yaml
+++ b/projects-invent/websites/neverland/metadata.yaml
@@ -7,20 +7,8 @@ description: 'Project Neverland is an attempt to create a simple and pleasant lo
   who we are and what we stand for. Promote our goods and services, and finally connect
   us all together into a happy loving family of friends :)'
 hasrepo: true
-icon: null
-members:
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: Eugene Trounev
-  username: trounev
-- displayname: "Fr\xE9d\xE9ric Sheedy"
-  username: sheedy
-- displayname: Mayank Madan
-  username: mayankmadan
-- displayname: Sayak Banerjee
-  username: sayakb
+identifier: websites-neverland
 name: Neverland
 projectpath: websites/neverland
 repoactive: false
-repopath: websites/neverland
-type: module
+repopath: /websites/neverland
diff --git a/projects-invent/websites/okular-kde-org/metadata.yaml b/projects-invent/websites/okular-kde-org/metadata.yaml
index 52cee252..3365415a 100644
--- a/projects-invent/websites/okular-kde-org/metadata.yaml
+++ b/projects-invent/websites/okular-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Okular website
 hasrepo: true
-icon: null
-members:
-- displayname: Albert Astals Cid
-  username: aacid
+identifier: websites-okular-kde-org
 name: Okular website
 projectpath: websites/okular-kde-org
 repoactive: true
-repopath: websites/okular-kde-org
-type: module
+repopath: /websites/okular-kde-org
diff --git a/projects-invent/websites/paste-kde-org/metadata.yaml b/projects-invent/websites/paste-kde-org/metadata.yaml
index 057cfbb6..dd24d1a7 100644
--- a/projects-invent/websites/paste-kde-org/metadata.yaml
+++ b/projects-invent/websites/paste-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE Pastebin, powered by the Sticky Notes pastebin engine.
 hasrepo: true
-icon: null
-members:
-- displayname: Sayak Banerjee
-  username: sayakb
+identifier: websites-paste-kde-org
 name: Pastebin
 projectpath: websites/paste-kde-org
 repoactive: true
-repopath: websites/paste-kde-org
-type: module
+repopath: /websites/paste-kde-org
diff --git a/projects-invent/websites/pe-kde-org/metadata.yaml b/projects-invent/websites/pe-kde-org/metadata.yaml
index d207abb9..23f3df29 100644
--- a/projects-invent/websites/pe-kde-org/metadata.yaml
+++ b/projects-invent/websites/pe-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for KDE Peru (pe.kde.org)
 hasrepo: true
-icon: null
-members:
-- displayname: Ronny  Yabar Aizcorbe
-  username: ronnyy
+identifier: websites-pe-kde-org
 name: KDE Peru website
 projectpath: websites/pe-kde-org
 repoactive: false
-repopath: websites/pe-kde-org
-type: module
+repopath: /websites/pe-kde-org
diff --git a/projects-invent/websites/peruse-kde-org/metadata.yaml b/projects-invent/websites/peruse-kde-org/metadata.yaml
index 2bd267fa..639069de 100644
--- a/projects-invent/websites/peruse-kde-org/metadata.yaml
+++ b/projects-invent/websites/peruse-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: The website for the Peruse reader application
 hasrepo: true
-icon: null
-members:
-- displayname: Dan Leinir Turthra Jensen
-  username: leinir
+identifier: websites-peruse-kde-org
 name: Peruse Reader Website
 projectpath: websites/peruse-kde-org
 repoactive: false
-repopath: websites/peruse-kde-org
-type: module
+repopath: /websites/peruse-kde-org
diff --git a/projects-invent/websites/phonon-kde-org/metadata.yaml b/projects-invent/websites/phonon-kde-org/metadata.yaml
index d7ad13d9..b4562f95 100644
--- a/projects-invent/websites/phonon-kde-org/metadata.yaml
+++ b/projects-invent/websites/phonon-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Phonon's website repository
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
-- displayname: Martin Tobias Holmedahl Sandsmark
-  username: sandsmark
+identifier: websites-phonon-kde-org
 name: Phonon Website
 projectpath: websites/phonon-kde-org
 repoactive: false
-repopath: websites/phonon-kde-org
-type: module
+repopath: /websites/phonon-kde-org
diff --git a/projects-invent/websites/planet-kde-org/metadata.yaml b/projects-invent/websites/planet-kde-org/metadata.yaml
index 8b7b93b2..d0329e6b 100644
--- a/projects-invent/websites/planet-kde-org/metadata.yaml
+++ b/projects-invent/websites/planet-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Planet KDE website code and configuration.
 hasrepo: true
-icon: null
-members:
-- displayname: Jonathan Riddell
-  username: jriddell
+identifier: websites-planet-kde-org
 name: Planet KDE
 projectpath: websites/planet-kde-org
 repoactive: true
-repopath: websites/planet-kde-org
-type: module
+repopath: /websites/planet-kde-org
diff --git a/projects-invent/websites/plasma-kde-org/metadata.yaml b/projects-invent/websites/plasma-kde-org/metadata.yaml
index 8a4c0f55..24f523ce 100644
--- a/projects-invent/websites/plasma-kde-org/metadata.yaml
+++ b/projects-invent/websites/plasma-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma's website repository
 hasrepo: true
-icon: null
-members:
-- displayname: Aaron J. Seigo
-  username: aseigo
-- displayname: Emil Sedgh
-  username: esedgh
+identifier: websites-plasma-kde-org
 name: Plasma website
 projectpath: websites/plasma-kde-org
 repoactive: false
-repopath: websites/plasma-kde-org
-type: module
+repopath: /websites/plasma-kde-org
diff --git a/projects-invent/websites/plasma-mobile-org/metadata.yaml b/projects-invent/websites/plasma-mobile-org/metadata.yaml
index 0b7f3ae0..d95ca8e4 100644
--- a/projects-invent/websites/plasma-mobile-org/metadata.yaml
+++ b/projects-invent/websites/plasma-mobile-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Plasma Mobile's website repository
 hasrepo: true
-icon: null
-members:
-- displayname: Bhushan Shah
-  username: bshah
-- displayname: Jonah Brüchert
-  username: jbbgameich
+identifier: websites-plasma-mobile-org
 name: Plasma Mobile website
 projectpath: websites/plasma-mobile-org
 repoactive: false
-repopath: websites/plasma-mobile-org
-type: module
+repopath: /websites/plasma-mobile-org
diff --git a/projects-invent/websites/product-screenshots/metadata.yaml b/projects-invent/websites/product-screenshots/metadata.yaml
index 5fe2008f..e6c20314 100644
--- a/projects-invent/websites/product-screenshots/metadata.yaml
+++ b/projects-invent/websites/product-screenshots/metadata.yaml
@@ -1,11 +1,8 @@
-description: Screenshots for the various applications and other products offered by the KDE Community, for use in software stores and websites.
+description: Screenshots for the various applications and other products offered by
+  the KDE Community, for use in software stores and websites.
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: websites-product-screenshots
 name: Product Screenshots for Promotional Use
 projectpath: websites/product-screenshots
 repoactive: false
-repopath: websites/product-screenshots
-type: module
+repopath: /websites/product-screenshots
diff --git a/projects-invent/websites/projects-kde-org/metadata.yaml b/projects-invent/websites/projects-kde-org/metadata.yaml
index 1684d50e..27af8473 100644
--- a/projects-invent/websites/projects-kde-org/metadata.yaml
+++ b/projects-invent/websites/projects-kde-org/metadata.yaml
@@ -1,9 +1,7 @@
 description: KDE's customized version of Redmine, which powers Projects.
 hasrepo: true
-icon: null
-members: []
+identifier: websites-projects-kde-org
 name: Projects (Redmine)
 projectpath: websites/projects-kde-org
 repoactive: true
-repopath: websites/projects-kde-org
-type: module
+repopath: /websites/projects-kde-org
diff --git a/projects-invent/websites/quality-calligra-org/metadata.yaml b/projects-invent/websites/quality-calligra-org/metadata.yaml
index 035e2f06..1e99aaaf 100644
--- a/projects-invent/websites/quality-calligra-org/metadata.yaml
+++ b/projects-invent/websites/quality-calligra-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Site providing quality statistics on calligra
 hasrepo: true
-icon: null
-members:
-- displayname: Cyrille Berger Skott
-  username: berger
+identifier: websites-quality-calligra-org
 name: Calligra Quality
 projectpath: websites/quality-calligra-org
 repoactive: true
-repopath: websites/quality-calligra-org
-type: module
+repopath: /websites/quality-calligra-org
diff --git a/projects-invent/websites/quality-kde-org/metadata.yaml b/projects-invent/websites/quality-kde-org/metadata.yaml
index 88987bfd..b3df4c57 100644
--- a/projects-invent/websites/quality-kde-org/metadata.yaml
+++ b/projects-invent/websites/quality-kde-org/metadata.yaml
@@ -2,14 +2,8 @@ description: Contains various tools that make up the KDE Quality Website. There
   a number of tools which take some common configuration options (and some uncommon
   ones) and which analyze and report on KDE source code.
 hasrepo: true
-icon: null
-members:
-- displayname: Alex Merry
-  username: alexmerry
-- displayname: Allen Winter
-  username: winterz
+identifier: websites-quality-kde-org
 name: KDE Quality Website Tools
 projectpath: websites/quality-kde-org
 repoactive: true
-repopath: websites/quality-kde-org
-type: module
+repopath: /websites/quality-kde-org
diff --git a/projects-invent/websites/quickgit-kde-org/metadata.yaml b/projects-invent/websites/quickgit-kde-org/metadata.yaml
index 1d9d2c06..a5263745 100644
--- a/projects-invent/websites/quickgit-kde-org/metadata.yaml
+++ b/projects-invent/websites/quickgit-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Quickgit Git repository browser. KDE Customised version of GitPHP.
 hasrepo: true
-icon: null
-members:
-- displayname: Eike Hein
-  username: hein
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-quickgit-kde-org
 name: KDE Quickgit (gitphp)
 projectpath: websites/quickgit-kde-org
 repoactive: true
-repopath: websites/quickgit-kde-org
-type: module
+repopath: /websites/quickgit-kde-org
diff --git a/projects-invent/websites/rekonq-kde-org/metadata.yaml b/projects-invent/websites/rekonq-kde-org/metadata.yaml
index 0b29b73e..2c018048 100644
--- a/projects-invent/websites/rekonq-kde-org/metadata.yaml
+++ b/projects-invent/websites/rekonq-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for rekonq - a web browser by KDE based on WebKit
 hasrepo: true
-icon: null
-members:
-- displayname: Andrea Diamantini
-  username: adjam
+identifier: websites-rekonq-kde-org
 name: Rekonq browser website
 projectpath: websites/rekonq-kde-org
 repoactive: true
-repopath: websites/rekonq-kde-org
-type: module
+repopath: /websites/rekonq-kde-org
diff --git a/projects-invent/websites/releases-neon-kde-org/metadata.yaml b/projects-invent/websites/releases-neon-kde-org/metadata.yaml
index c2447c71..7b3757ac 100644
--- a/projects-invent/websites/releases-neon-kde-org/metadata.yaml
+++ b/projects-invent/websites/releases-neon-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Neon releases metadata
 hasrepo: true
-icon: null
-members:
-- displayname: Harald Sitter
-  username: sitter
+identifier: websites-releases-neon-kde-org
 name: Neon Project releases
 projectpath: websites/releases-neon-kde-org
 repoactive: false
-repopath: websites/releases-neon-kde-org
-type: module
+repopath: /websites/releases-neon-kde-org
diff --git a/projects-invent/websites/reports-kde-org/metadata.yaml b/projects-invent/websites/reports-kde-org/metadata.yaml
index 2a4423c7..f2f8696e 100644
--- a/projects-invent/websites/reports-kde-org/metadata.yaml
+++ b/projects-invent/websites/reports-kde-org/metadata.yaml
@@ -1,12 +1,8 @@
 description: The website that generates and displays reports about KDE projects and
   their activity.
 hasrepo: true
-icon: null
-members:
-- displayname: Ahmed AbouElhamayed
-  username: ahmedabouelhamayed
+identifier: websites-reports-kde-org
 name: KDE Project Activity Reports
 projectpath: websites/reports-kde-org
 repoactive: true
-repopath: websites/reports-kde-org
-type: module
+repopath: /websites/reports-kde-org
diff --git a/projects-invent/websites/reservoir/metadata.yaml b/projects-invent/websites/reservoir/metadata.yaml
index 63d501ef..b4c3c9f6 100644
--- a/projects-invent/websites/reservoir/metadata.yaml
+++ b/projects-invent/websites/reservoir/metadata.yaml
@@ -1,11 +1,7 @@
 description: Web application meant as replacement for Capacity, serving KDE websites
 hasrepo: true
-icon: null
-members:
-- displayname: Ingo Malchow
-  username: imalchow
+identifier: websites-reservoir
 name: Reservoir
 projectpath: websites/reservoir
 repoactive: false
-repopath: websites/reservoir
-type: module
+repopath: /websites/reservoir
diff --git a/projects-invent/websites/rkward-kde-org/metadata.yaml b/projects-invent/websites/rkward-kde-org/metadata.yaml
index 3fd8402a..b905729d 100644
--- a/projects-invent/websites/rkward-kde-org/metadata.yaml
+++ b/projects-invent/websites/rkward-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: RKWard Project Website
 hasrepo: true
-icon: null
-members:
-- displayname: Thomas Friedrichsmeier
-  username: tfry
+identifier: websites-rkward-kde-org
 name: RKWard Website
 projectpath: websites/rkward-kde-org
 repoactive: true
-repopath: websites/rkward-kde-org
-type: module
+repopath: /websites/rkward-kde-org
diff --git a/projects-invent/websites/rolisteam-org/metadata.yaml b/projects-invent/websites/rolisteam-org/metadata.yaml
index 66d7f5fb..0fd44b74 100644
--- a/projects-invent/websites/rolisteam-org/metadata.yaml
+++ b/projects-invent/websites/rolisteam-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Rolisteam Website
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: websites-rolisteam-org
 name: Rolisteam Website
 projectpath: websites/rolisteam-org
 repoactive: false
-repopath: websites/rolisteam-org
-type: project
+repopath: /websites/rolisteam-org
diff --git a/projects-invent/websites/season-kde-org/metadata.yaml b/projects-invent/websites/season-kde-org/metadata.yaml
index 8e81e52f..686b0f96 100644
--- a/projects-invent/websites/season-kde-org/metadata.yaml
+++ b/projects-invent/websites/season-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: A utility to organize programs like Season of KDE. Codename Pandora.
 hasrepo: true
-icon: null
-members:
-- displayname: Sayak Banerjee
-  username: sayakb
+identifier: websites-season-kde-org
 name: KDE Student Programs
 projectpath: websites/season-kde-org
 repoactive: true
-repopath: websites/season-kde-org
-type: module
+repopath: /websites/season-kde-org
diff --git a/projects-invent/websites/simon-kde-org/metadata.yaml b/projects-invent/websites/simon-kde-org/metadata.yaml
index 83a76541..7a8c392d 100644
--- a/projects-invent/websites/simon-kde-org/metadata.yaml
+++ b/projects-invent/websites/simon-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Static copy of the Simon Drupal Website
 hasrepo: true
-icon: null
-members:
-- displayname: Mario Fux
-  username: fux
+identifier: websites-simon-kde-org
 name: Simon Website
 projectpath: websites/simon-kde-org
 repoactive: false
-repopath: websites/simon-kde-org
-type: module
+repopath: /websites/simon-kde-org
diff --git a/projects-invent/websites/solid-kde-org/metadata.yaml b/projects-invent/websites/solid-kde-org/metadata.yaml
index 0b95f56e..ccb0ce74 100644
--- a/projects-invent/websites/solid-kde-org/metadata.yaml
+++ b/projects-invent/websites/solid-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Solid's website repository
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
-- displayname: "\xC0lex Fiestas"
-  username: afiestas
+identifier: websites-solid-kde-org
 name: Solid website
 projectpath: websites/solid-kde-org
 repoactive: false
-repopath: websites/solid-kde-org
-type: module
+repopath: /websites/solid-kde-org
diff --git a/projects-invent/websites/sprint-kde-org/metadata.yaml b/projects-invent/websites/sprint-kde-org/metadata.yaml
index ad93da38..b4ae0316 100644
--- a/projects-invent/websites/sprint-kde-org/metadata.yaml
+++ b/projects-invent/websites/sprint-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: A web application to ease managing sprints
 hasrepo: true
-icon: null
-members:
-- displayname: Emil Sedgh
-  username: esedgh
+identifier: websites-sprint-kde-org
 name: Sprint planning web application
 projectpath: websites/sprint-kde-org
 repoactive: false
-repopath: websites/sprint-kde-org
-type: module
+repopath: /websites/sprint-kde-org
diff --git a/projects-invent/websites/sso-kde-org/metadata.yaml b/projects-invent/websites/sso-kde-org/metadata.yaml
index 32a8c916..a30b03fd 100644
--- a/projects-invent/websites/sso-kde-org/metadata.yaml
+++ b/projects-invent/websites/sso-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: Manages user identities for all KDE websites.
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
-- displayname: Sayak Banerjee
-  username: sayakb
+identifier: websites-sso-kde-org
 name: KDE SSO provider (Keychain)
 projectpath: websites/sso-kde-org
 repoactive: false
-repopath: websites/sso-kde-org
-type: module
+repopath: /websites/sso-kde-org
diff --git a/projects-invent/websites/sysadmin-kde-org-trellis/metadata.yaml b/projects-invent/websites/sysadmin-kde-org-trellis/metadata.yaml
index 4a73b814..10173e06 100644
--- a/projects-invent/websites/sysadmin-kde-org-trellis/metadata.yaml
+++ b/projects-invent/websites/sysadmin-kde-org-trellis/metadata.yaml
@@ -1,13 +1,7 @@
 description: Customised Trellis Desk instance used by KDE Sysadmin at https://sysadmin.kde.org/tickets/
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
-- displayname: Tom Albers
-  username: toma
+identifier: websites-sysadmin-kde-org-trellis
 name: Trellis Desk for KDE
 projectpath: websites/sysadmin-kde-org-trellis
 repoactive: true
-repopath: websites/sysadmin-kde-org-trellis
-type: module
+repopath: /websites/sysadmin-kde-org-trellis
diff --git a/projects-invent/websites/telemetry-krita-org/metadata.yaml b/projects-invent/websites/telemetry-krita-org/metadata.yaml
index a42dd996..ef0cbae7 100644
--- a/projects-invent/websites/telemetry-krita-org/metadata.yaml
+++ b/projects-invent/websites/telemetry-krita-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Telemetry Backend for Krita
 hasrepo: true
-icon: null
-members:
-- displayname: Alexey Kapustin
-  username: akapustin
+identifier: websites-telemetry-krita-org
 name: Krita Telemetry Backend
 projectpath: websites/telemetry-krita-org
 repoactive: false
-repopath: websites/telemetry-krita-org
-type: module
+repopath: /websites/telemetry-krita-org
diff --git a/projects-invent/websites/timeline-kde-org/metadata.yaml b/projects-invent/websites/timeline-kde-org/metadata.yaml
index 6d255a19..62549352 100644
--- a/projects-invent/websites/timeline-kde-org/metadata.yaml
+++ b/projects-invent/websites/timeline-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website hosted at timeline.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Camila San Martin Ayres
-  username: ayres
+identifier: websites-timeline-kde-org
 name: KDE Timeline website
 projectpath: websites/timeline-kde-org
 repoactive: false
-repopath: websites/timeline-kde-org
-type: module
+repopath: /websites/timeline-kde-org
diff --git a/projects-invent/websites/umbrello-kde-org/metadata.yaml b/projects-invent/websites/umbrello-kde-org/metadata.yaml
index a736de76..82df3860 100644
--- a/projects-invent/websites/umbrello-kde-org/metadata.yaml
+++ b/projects-invent/websites/umbrello-kde-org/metadata.yaml
@@ -1,17 +1,7 @@
 description: Website for Umbrello project
 hasrepo: true
-icon: null
-members:
-- displayname: Oliver Kellogg
-  username: okellogg
-- displayname: Jonathan Riddell
-  username: jriddell
-- displayname: Andi Fischer
-  username: fischer
-- displayname: Ralf Habacker
-  username: habacker
+identifier: websites-umbrello-kde-org
 name: Umbrello Website
 projectpath: websites/umbrello-kde-org
 repoactive: true
-repopath: websites/umbrello-kde-org
-type: module
+repopath: /websites/umbrello-kde-org
diff --git a/projects-invent/websites/utils-kde-org/metadata.yaml b/projects-invent/websites/utils-kde-org/metadata.yaml
index fbddc486..f1624587 100644
--- a/projects-invent/websites/utils-kde-org/metadata.yaml
+++ b/projects-invent/websites/utils-kde-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: utils.kde.org website
 hasrepo: true
-icon: null
-members:
-- displayname: Raphael Kubo da Costa
-  username: rkcosta
-- displayname: Ingo Malchow
-  username: imalchow
-- displayname: Rolf Eike Beer
-  username: dakon
+identifier: websites-utils-kde-org
 name: Utils
 projectpath: websites/utils-kde-org
 repoactive: true
-repopath: websites/utils-kde-org
-type: module
+repopath: /websites/utils-kde-org
diff --git a/projects-invent/websites/vdesign-kde-org/metadata.yaml b/projects-invent/websites/vdesign-kde-org/metadata.yaml
index 7259683c..57e83ff4 100644
--- a/projects-invent/websites/vdesign-kde-org/metadata.yaml
+++ b/projects-invent/websites/vdesign-kde-org/metadata.yaml
@@ -1,13 +1,7 @@
 description: ''
 hasrepo: true
-icon: null
-members:
-- displayname: "Elena Ram\xEDrez"
-  username: elenaramirez
-- displayname: Nuno Fernades Pinheiro
-  username: pinheiro
+identifier: websites-vdesign-kde-org
 name: Visual Design Group website
 projectpath: websites/vdesign-kde-org
 repoactive: false
-repopath: websites/vdesign-kde-org
-type: module
+repopath: /websites/vdesign-kde-org
diff --git a/projects-invent/websites/volunteers-akademy-kde-org/metadata.yaml b/projects-invent/websites/volunteers-akademy-kde-org/metadata.yaml
index 52c28fa2..7a7d46da 100644
--- a/projects-invent/websites/volunteers-akademy-kde-org/metadata.yaml
+++ b/projects-invent/websites/volunteers-akademy-kde-org/metadata.yaml
@@ -1,13 +1,8 @@
-description: Volunteer Management and Coordination System (originally from FOSDEM, customised for KDE)
+description: Volunteer Management and Coordination System (originally from FOSDEM,
+  customised for KDE)
 hasrepo: true
-icon: null
-members:
-- displayname: Kenny Coyle
-  username: kcoyle
-- displayname: Kenny Duffus
-  username: duffus
+identifier: websites-volunteers-akademy-kde-org
 name: Volunteer Management System
 projectpath: websites/volunteers-akademy-kde-org
 repoactive: true
-repopath: websites/volunteers-akademy-kde-org
-type: module
+repopath: /websites/volunteers-akademy-kde-org
diff --git a/projects-invent/websites/vvave-kde-org/metadata.yaml b/projects-invent/websites/vvave-kde-org/metadata.yaml
index 0004375f..c82df0db 100644
--- a/projects-invent/websites/vvave-kde-org/metadata.yaml
+++ b/projects-invent/websites/vvave-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Content for the Vvave Project Website
 hasrepo: true
-icon: null
-members:
-- displayname: Camilo Higuita
-  username: camiloh
+identifier: websites-vvave-kde-org
 name: Vvave Website
 projectpath: websites/vvave-kde-org
 repoactive: true
-repopath: websites/vvave-kde-org
-type: module
+repopath: /websites/vvave-kde-org
diff --git a/projects-invent/websites/vvave-stream-kde-org/metadata.yaml b/projects-invent/websites/vvave-stream-kde-org/metadata.yaml
index ba5a6057..8c6b699c 100644
--- a/projects-invent/websites/vvave-stream-kde-org/metadata.yaml
+++ b/projects-invent/websites/vvave-stream-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: User contributed content hub for Vvave
 hasrepo: true
-icon: null
-members:
-- displayname: Camilo Higuita
-  username: camiloh
+identifier: websites-vvave-stream-kde-org
 name: Vvave Content Interaction Portal
 projectpath: websites/vvave-stream-kde-org
 repoactive: true
-repopath: websites/vvave-stream-kde-org
-type: module
+repopath: /websites/vvave-stream-kde-org
diff --git a/projects-invent/websites/websvn-kde-org/metadata.yaml b/projects-invent/websites/websvn-kde-org/metadata.yaml
index adafc308..a99af06b 100644
--- a/projects-invent/websites/websvn-kde-org/metadata.yaml
+++ b/projects-invent/websites/websvn-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: KDE SVN repository browser.
 hasrepo: true
-icon: null
-members:
-- displayname: Tom Albers
-  username: toma
+identifier: websites-websvn-kde-org
 name: WebSVN (ViewVC)
 projectpath: websites/websvn-kde-org
 repoactive: true
-repopath: websites/websvn-kde-org
-type: module
+repopath: /websites/websvn-kde-org
diff --git a/projects-invent/websites/wiki-desktopsummit-org/metadata.yaml b/projects-invent/websites/wiki-desktopsummit-org/metadata.yaml
index 29953a53..f8d3f332 100644
--- a/projects-invent/websites/wiki-desktopsummit-org/metadata.yaml
+++ b/projects-invent/websites/wiki-desktopsummit-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Static copy of the DesktopSummit Wiki
 hasrepo: true
-icon: null
-members:
-- displayname: Ben Cooksley
-  username: bcooksley
+identifier: websites-wiki-desktopsummit-org
 name: DesktopSummit Wiki
 projectpath: websites/wiki-desktopsummit-org
 repoactive: true
-repopath: websites/wiki-desktopsummit-org
-type: module
+repopath: /websites/wiki-desktopsummit-org
diff --git a/projects-invent/websites/wiki-kde-org/metadata.yaml b/projects-invent/websites/wiki-kde-org/metadata.yaml
index 54cbafa4..8f619002 100644
--- a/projects-invent/websites/wiki-kde-org/metadata.yaml
+++ b/projects-invent/websites/wiki-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Wiki.kde.org landing site content
 hasrepo: true
-icon: null
-members:
-- displayname: Jeremy Whiting
-  username: whiting
+identifier: websites-wiki-kde-org
 name: Wiki.kde.org site content
 projectpath: websites/wiki-kde-org
 repoactive: false
-repopath: websites/wiki-kde-org
-type: module
+repopath: /websites/wiki-kde-org
diff --git a/projects-invent/websites/wiki-rolisteam-org/metadata.yaml b/projects-invent/websites/wiki-rolisteam-org/metadata.yaml
index 4ac06f98..d004c043 100644
--- a/projects-invent/websites/wiki-rolisteam-org/metadata.yaml
+++ b/projects-invent/websites/wiki-rolisteam-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Rolisteam Documentation (Wiki)
 hasrepo: true
-icon: null
-members:
-- displayname: Renaud Guezennec
-  username: renaudg
+identifier: websites-wiki-rolisteam-org
 name: Rolisteam Documentation
 projectpath: websites/wiki-rolisteam-org
 repoactive: false
-repopath: websites/wiki-rolisteam-org
-type: project
+repopath: /websites/wiki-rolisteam-org
diff --git a/projects-invent/websites/windows-kde-org/metadata.yaml b/projects-invent/websites/windows-kde-org/metadata.yaml
index 4e12a143..87ba4332 100644
--- a/projects-invent/websites/windows-kde-org/metadata.yaml
+++ b/projects-invent/websites/windows-kde-org/metadata.yaml
@@ -1,15 +1,7 @@
 description: Website for KDE Windows project
 hasrepo: true
-icon: null
-members:
-- displayname: Hannah von Reth
-  username: vonreth
-- displayname: Patrick Spendrin
-  username: sengels
-- displayname: Ralf Habacker
-  username: habacker
+identifier: websites-windows-kde-org
 name: KDE-Windows website
 projectpath: websites/windows-kde-org
 repoactive: true
-repopath: websites/windows-kde-org
-type: module
+repopath: /websites/windows-kde-org
diff --git a/projects-invent/websites/wordpress-custom-pages/metadata.yaml b/projects-invent/websites/wordpress-custom-pages/metadata.yaml
index c1f95c8d..7182490d 100644
--- a/projects-invent/websites/wordpress-custom-pages/metadata.yaml
+++ b/projects-invent/websites/wordpress-custom-pages/metadata.yaml
@@ -1,11 +1,7 @@
 description: Custom Page Support for KDE Websites using Wordpress
 hasrepo: true
-icon: null
-members:
-- displayname: Ken Vermette
-  username: kvermette
+identifier: websites-wordpress-custom-pages
 name: KDE Specific Pages for Wordpress
 projectpath: websites/wordpress-custom-pages
 repoactive: true
-repopath: websites/wordpress-custom-pages
-type: module
+repopath: /websites/wordpress-custom-pages
diff --git a/projects-invent/websites/wordpress-koan-theme/metadata.yaml b/projects-invent/websites/wordpress-koan-theme/metadata.yaml
index afeb40cf..1b27fd9e 100644
--- a/projects-invent/websites/wordpress-koan-theme/metadata.yaml
+++ b/projects-invent/websites/wordpress-koan-theme/metadata.yaml
@@ -1,9 +1,7 @@
 description: Customised Koan theme for Wordpress
 hasrepo: true
-icon: null
-members: []
+identifier: websites-wordpress-koan-theme
 name: Koan Wordpress Theme
 projectpath: websites/wordpress-koan-theme
 repoactive: true
-repopath: websites/wordpress-koan-theme
-type: module
+repopath: /websites/wordpress-koan-theme
diff --git a/projects-invent/websites/yakuake-kde-org/metadata.yaml b/projects-invent/websites/yakuake-kde-org/metadata.yaml
index 3ce6a07c..b34747b6 100644
--- a/projects-invent/websites/yakuake-kde-org/metadata.yaml
+++ b/projects-invent/websites/yakuake-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Website for Yakuake
 hasrepo: true
-icon: yakuake
-members:
-- displayname: Eike Hein
-  username: hein
+identifier: websites-yakuake-kde-org
 name: Yakuake Website
 projectpath: websites/yakuake-kde-org
 repoactive: true
-repopath: websites/yakuake-kde-org
-type: module
+repopath: /websites/yakuake-kde-org
diff --git a/projects-invent/websites/zanshin-kde-org/metadata.yaml b/projects-invent/websites/zanshin-kde-org/metadata.yaml
index 9ed259c4..6a86b52a 100644
--- a/projects-invent/websites/zanshin-kde-org/metadata.yaml
+++ b/projects-invent/websites/zanshin-kde-org/metadata.yaml
@@ -1,11 +1,7 @@
 description: Data and other utilities needed to run zanshin.kde.org
 hasrepo: true
-icon: null
-members:
-- displayname: Kevin Ottens
-  username: ervin
+identifier: websites-zanshin-kde-org
 name: Zanshin Website
 projectpath: websites/zanshin-kde-org
 repoactive: true
-repopath: websites/zanshin-kde-org
-type: module
+repopath: /websites/zanshin-kde-org
diff --git a/projects-invent/wikitolearn/wikitolearn-chapters-backend/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-chapters-backend/metadata.yaml
index 5a3d69d9..b798fc95 100644
--- a/projects-invent/wikitolearn/wikitolearn-chapters-backend/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-chapters-backend/metadata.yaml
@@ -1,11 +1,7 @@
 description: Chapters Backend for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Chapters Backend"
+identifier: wikitolearn-chapters-backend
+name: 'WikiToLearn: Chapters Backend'
 projectpath: playground/www/wikitolearn-chapters-backend
 repoactive: true
-repopath: wikitolearn-chapters-backend
-type: project
+repopath: /wikitolearn/wikitolearn-chapters-backend
diff --git a/projects-invent/wikitolearn/wikitolearn-course-midtier/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-course-midtier/metadata.yaml
index 9d56177b..ac27c2f5 100644
--- a/projects-invent/wikitolearn/wikitolearn-course-midtier/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-course-midtier/metadata.yaml
@@ -1,11 +1,7 @@
 description: Mid Tier Course Support for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Mid Tier Course"
+identifier: wikitolearn-course-midtier
+name: 'WikiToLearn: Mid Tier Course'
 projectpath: playground/www/wikitolearn-course-midtier
 repoactive: true
-repopath: wikitolearn-course-midtier
-type: project
+repopath: /wikitolearn/wikitolearn-course-midtier
diff --git a/projects-invent/wikitolearn/wikitolearn-courses-backend/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-courses-backend/metadata.yaml
index a38607eb..7ea5019d 100644
--- a/projects-invent/wikitolearn/wikitolearn-courses-backend/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-courses-backend/metadata.yaml
@@ -1,11 +1,7 @@
 description: Courses Backend for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Courses Backend"
+identifier: wikitolearn-courses-backend
+name: 'WikiToLearn: Courses Backend'
 projectpath: playground/www/wikitolearn-courses-backend
 repoactive: true
-repopath: wikitolearn-courses-backend
-type: project
+repopath: /wikitolearn/wikitolearn-courses-backend
diff --git a/projects-invent/wikitolearn/wikitolearn-frontend/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-frontend/metadata.yaml
index 20ea2128..a09e9085 100644
--- a/projects-invent/wikitolearn/wikitolearn-frontend/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-frontend/metadata.yaml
@@ -1,11 +1,7 @@
 description: Frontend for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Frontend"
+identifier: wikitolearn-frontend
+name: 'WikiToLearn: Frontend'
 projectpath: playground/www/wikitolearn-frontend
 repoactive: true
-repopath: wikitolearn-frontend
-type: project
+repopath: /wikitolearn/wikitolearn-frontend
diff --git a/projects-invent/wikitolearn/wikitolearn-offline-extension/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-offline-extension/metadata.yaml
index 34a39ba4..9a34515c 100644
--- a/projects-invent/wikitolearn/wikitolearn-offline-extension/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-offline-extension/metadata.yaml
@@ -1,11 +1,8 @@
-description: OfflineExtension is an extension for WikiToLearn that will add offline support to the current Wiki Editor.
+description: OfflineExtension is an extension for WikiToLearn that will add offline
+  support to the current Wiki Editor.
 hasrepo: true
-icon: null
-members:
-- displayname: "Srijan Agarwal"
-  username: srijancse
-name: "WikiToLearn: OfflineExtension"
+identifier: wikitolearn-offline-extension
+name: 'WikiToLearn: OfflineExtension'
 projectpath: playground/www/wikitolearn-offline-extension
 repoactive: true
-repopath: wikitolearn-offline-extension
-type: project
+repopath: /wikitolearn/wikitolearn-offline-extension
diff --git a/projects-invent/wikitolearn/wikitolearn-pages-backend/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-pages-backend/metadata.yaml
index 4cf81b73..17c2f3c9 100644
--- a/projects-invent/wikitolearn/wikitolearn-pages-backend/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-pages-backend/metadata.yaml
@@ -1,11 +1,7 @@
 description: Pages Backend for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Pages Backend"
+identifier: wikitolearn-pages-backend
+name: 'WikiToLearn: Pages Backend'
 projectpath: playground/www/wikitolearn-pages-backend
 repoactive: true
-repopath: wikitolearn-pages-backend
-type: project
+repopath: /wikitolearn/wikitolearn-pages-backend
diff --git a/projects-invent/wikitolearn/wikitolearn-pwa-gateway/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-pwa-gateway/metadata.yaml
index 5a45ccf3..f463b6ca 100644
--- a/projects-invent/wikitolearn/wikitolearn-pwa-gateway/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-pwa-gateway/metadata.yaml
@@ -1,11 +1,7 @@
 description: PWA Gateway for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: PWA Gateway"
+identifier: wikitolearn-pwa-gateway
+name: 'WikiToLearn: PWA Gateway'
 projectpath: playground/www/wikitolearn-pwa-gateway
 repoactive: true
-repopath: wikitolearn-pwa-gateway
-type: project
+repopath: /wikitolearn/wikitolearn-pwa-gateway
diff --git a/projects-invent/wikitolearn/wikitolearn-sdk/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-sdk/metadata.yaml
index 0c982a3a..19377c11 100644
--- a/projects-invent/wikitolearn/wikitolearn-sdk/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-sdk/metadata.yaml
@@ -1,11 +1,7 @@
 description: SDK for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: SDK"
+identifier: wikitolearn-sdk
+name: 'WikiToLearn: SDK'
 projectpath: playground/www/wikitolearn-sdk
 repoactive: true
-repopath: wikitolearn-sdk
-type: project
+repopath: /wikitolearn/wikitolearn-sdk
diff --git a/projects-invent/wikitolearn/wikitolearn-shared-services/metadata.yaml b/projects-invent/wikitolearn/wikitolearn-shared-services/metadata.yaml
index 7caf61a7..a7625302 100644
--- a/projects-invent/wikitolearn/wikitolearn-shared-services/metadata.yaml
+++ b/projects-invent/wikitolearn/wikitolearn-shared-services/metadata.yaml
@@ -1,11 +1,7 @@
 description: Shared Services for WikiToLearn
 hasrepo: true
-icon: null
-members:
-- displayname: "Alessandro Tundo"
-  username: atundo
-name: "WikiToLearn: Shared Services"
+identifier: wikitolearn-shared-services
+name: 'WikiToLearn: Shared Services'
 projectpath: playground/www/wikitolearn-shared-services
 repoactive: true
-repopath: wikitolearn-shared-services
-type: project
+repopath: /wikitolearn/wikitolearn-shared-services

commit ab69b69722307616298bc99ee86188a771e4af9b
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:48:41 2020 +0530

    This structure is now considered final

diff --git a/projects-invent/README b/projects-invent/README
deleted file mode 100644
index 3a2ee6c5..00000000
--- a/projects-invent/README
+++ /dev/null
@@ -1,8 +0,0 @@
-- find better naming for others/
-- find better naming for applications/
-- find better place for kde-vdg-extras *
-- find better place for oxygen-gtk *
-- find better place for smaragd *
-
-
-* currently in plasma/

commit d98d0b7172dd3aa7f7edf4ad314ea5e20ceb5dc2
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:35:28 2020 +0530

    move to unmaintained for now
    
    if wikitolearn folks are still using it, should be moved to the webapps

diff --git a/projects-invent/utilities/brooklyn/i18n.json b/projects-invent/unmaintained/brooklyn/i18n.json
similarity index 100%
rename from projects-invent/utilities/brooklyn/i18n.json
rename to projects-invent/unmaintained/brooklyn/i18n.json
diff --git a/projects-invent/utilities/brooklyn/metadata.yaml b/projects-invent/unmaintained/brooklyn/metadata.yaml
similarity index 100%
rename from projects-invent/utilities/brooklyn/metadata.yaml
rename to projects-invent/unmaintained/brooklyn/metadata.yaml

commit 18bb1d5419e96d1b214ef87c9ae35d8ab165159e
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:34:00 2020 +0530

    move release-buddy to unmaintained

diff --git a/projects-invent/utilities/release-buddy/i18n.json b/projects-invent/unmaintained/release-buddy/i18n.json
similarity index 100%
rename from projects-invent/utilities/release-buddy/i18n.json
rename to projects-invent/unmaintained/release-buddy/i18n.json
diff --git a/projects-invent/utilities/release-buddy/metadata.yaml b/projects-invent/unmaintained/release-buddy/metadata.yaml
similarity index 100%
rename from projects-invent/utilities/release-buddy/metadata.yaml
rename to projects-invent/unmaintained/release-buddy/metadata.yaml

commit 9a9bbcf72fee055051c37b6e3078bce2c6ed31ce
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:32:06 2020 +0530

    move kdiff3 to sdk

diff --git a/projects-invent/utilities/kdiff3/i18n.json b/projects-invent/sdk/kdiff3/i18n.json
similarity index 100%
rename from projects-invent/utilities/kdiff3/i18n.json
rename to projects-invent/sdk/kdiff3/i18n.json
diff --git a/projects-invent/utilities/kdiff3/metadata.yaml b/projects-invent/sdk/kdiff3/metadata.yaml
similarity index 100%
rename from projects-invent/utilities/kdiff3/metadata.yaml
rename to projects-invent/sdk/kdiff3/metadata.yaml

commit fd33275db3d43e186189bc2b0db676536cb9b893
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:31:30 2020 +0530

    move kdesrc-build to sdk

diff --git a/projects-invent/utilities/kdesrc-build/i18n.json b/projects-invent/sdk/kdesrc-build/i18n.json
similarity index 100%
rename from projects-invent/utilities/kdesrc-build/i18n.json
rename to projects-invent/sdk/kdesrc-build/i18n.json
diff --git a/projects-invent/utilities/kdesrc-build/metadata.yaml b/projects-invent/sdk/kdesrc-build/metadata.yaml
similarity index 100%
rename from projects-invent/utilities/kdesrc-build/metadata.yaml
rename to projects-invent/sdk/kdesrc-build/metadata.yaml

commit 676f70d5739d16076a2bd28efef7e1aa4bcfab07
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:22:38 2020 +0530

    move to unmaintained
    
    seems unused, and not active anymore

diff --git a/projects-invent/sdk/macports-kde/i18n.json b/projects-invent/unmaintained/macports-kde/i18n.json
similarity index 100%
rename from projects-invent/sdk/macports-kde/i18n.json
rename to projects-invent/unmaintained/macports-kde/i18n.json
diff --git a/projects-invent/sdk/macports-kde/metadata.yaml b/projects-invent/unmaintained/macports-kde/metadata.yaml
similarity index 100%
rename from projects-invent/sdk/macports-kde/metadata.yaml
rename to projects-invent/unmaintained/macports-kde/metadata.yaml

commit f960dadab00a8febacb34082f122b53dbf82359f
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:21:05 2020 +0530

    move cocoon and plasmate to unmaintained
    
    - cocoon seems still based on KDE4 in master branch
    - plasmate, no active commit/release from 2017

diff --git a/projects-invent/sdk/cocoon/i18n.json b/projects-invent/unmaintained/cocoon/i18n.json
similarity index 100%
rename from projects-invent/sdk/cocoon/i18n.json
rename to projects-invent/unmaintained/cocoon/i18n.json
diff --git a/projects-invent/sdk/cocoon/metadata.yaml b/projects-invent/unmaintained/cocoon/metadata.yaml
similarity index 100%
rename from projects-invent/sdk/cocoon/metadata.yaml
rename to projects-invent/unmaintained/cocoon/metadata.yaml
diff --git a/projects-invent/sdk/plasmate/i18n.json b/projects-invent/unmaintained/plasmate/i18n.json
similarity index 100%
rename from projects-invent/sdk/plasmate/i18n.json
rename to projects-invent/unmaintained/plasmate/i18n.json
diff --git a/projects-invent/sdk/plasmate/metadata.yaml b/projects-invent/unmaintained/plasmate/metadata.yaml
similarity index 100%
rename from projects-invent/sdk/plasmate/metadata.yaml
rename to projects-invent/unmaintained/plasmate/metadata.yaml

commit b6cb8282d8f64f7d5eb13c61811544e04f6441ab
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:15:00 2020 +0530

    move ring-kde to network

diff --git a/projects-invent/pim/ring-kde/i18n.json b/projects-invent/network/ring-kde/i18n.json
similarity index 100%
rename from projects-invent/pim/ring-kde/i18n.json
rename to projects-invent/network/ring-kde/i18n.json
diff --git a/projects-invent/pim/ring-kde/metadata.yaml b/projects-invent/network/ring-kde/metadata.yaml
similarity index 100%
rename from projects-invent/pim/ring-kde/metadata.yaml
rename to projects-invent/network/ring-kde/metadata.yaml

commit 97247cea2e3b3c75ba40b9688149168a6cc33cc8
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 12:03:55 2020 +0530

    this is more of historical then unmaintained

diff --git a/projects-invent/office/calligra-history/i18n.json b/projects-invent/historical/amarok-history/i18n.json
similarity index 100%
rename from projects-invent/office/calligra-history/i18n.json
rename to projects-invent/historical/amarok-history/i18n.json
diff --git a/projects-invent/unmaintained/amarok-history/metadata.yaml b/projects-invent/historical/amarok-history/metadata.yaml
similarity index 100%
rename from projects-invent/unmaintained/amarok-history/metadata.yaml
rename to projects-invent/historical/amarok-history/metadata.yaml
diff --git a/projects-invent/unmaintained/amarok-history/i18n.json b/projects-invent/historical/calligra-history/i18n.json
similarity index 100%
rename from projects-invent/unmaintained/amarok-history/i18n.json
rename to projects-invent/historical/calligra-history/i18n.json
diff --git a/projects-invent/office/calligra-history/metadata.yaml b/projects-invent/historical/calligra-history/metadata.yaml
similarity index 100%
rename from projects-invent/office/calligra-history/metadata.yaml
rename to projects-invent/historical/calligra-history/metadata.yaml

commit a858f44d78290083124f4cfee7c2d4623683becd
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 18:28:18 2020 +1200

    Eliminate synchrotron which is unmaintained

diff --git a/projects-invent/webapps/synchrotron-sources/i18n.json b/projects-invent/unmaintained/synchrotron-sources/i18n.json
similarity index 100%
rename from projects-invent/webapps/synchrotron-sources/i18n.json
rename to projects-invent/unmaintained/synchrotron-sources/i18n.json
diff --git a/projects-invent/webapps/synchrotron-sources/metadata.yaml b/projects-invent/unmaintained/synchrotron-sources/metadata.yaml
similarity index 100%
rename from projects-invent/webapps/synchrotron-sources/metadata.yaml
rename to projects-invent/unmaintained/synchrotron-sources/metadata.yaml
diff --git a/projects-invent/webapps/synchrotron/i18n.json b/projects-invent/unmaintained/synchrotron/i18n.json
similarity index 100%
rename from projects-invent/webapps/synchrotron/i18n.json
rename to projects-invent/unmaintained/synchrotron/i18n.json
diff --git a/projects-invent/webapps/synchrotron/metadata.yaml b/projects-invent/unmaintained/synchrotron/metadata.yaml
similarity index 100%
rename from projects-invent/webapps/synchrotron/metadata.yaml
rename to projects-invent/unmaintained/synchrotron/metadata.yaml

commit 855d5f738dcf8848ff1f9376c2a21a904f2eb8ed
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 18:28:00 2020 +1200

    Rename ocs/ category to webapps/

diff --git a/projects-invent/ocs/ocs-apiserver/i18n.json b/projects-invent/webapps/ocs-apiserver/i18n.json
similarity index 100%
rename from projects-invent/ocs/ocs-apiserver/i18n.json
rename to projects-invent/webapps/ocs-apiserver/i18n.json
diff --git a/projects-invent/ocs/ocs-apiserver/metadata.yaml b/projects-invent/webapps/ocs-apiserver/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/ocs-apiserver/metadata.yaml
rename to projects-invent/webapps/ocs-apiserver/metadata.yaml
diff --git a/projects-invent/ocs/ocs-cdn/i18n.json b/projects-invent/webapps/ocs-cdn/i18n.json
similarity index 100%
rename from projects-invent/ocs/ocs-cdn/i18n.json
rename to projects-invent/webapps/ocs-cdn/i18n.json
diff --git a/projects-invent/ocs/ocs-cdn/metadata.yaml b/projects-invent/webapps/ocs-cdn/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/ocs-cdn/metadata.yaml
rename to projects-invent/webapps/ocs-cdn/metadata.yaml
diff --git a/projects-invent/ocs/ocs-fileserver/i18n.json b/projects-invent/webapps/ocs-fileserver/i18n.json
similarity index 100%
rename from projects-invent/ocs/ocs-fileserver/i18n.json
rename to projects-invent/webapps/ocs-fileserver/i18n.json
diff --git a/projects-invent/ocs/ocs-fileserver/metadata.yaml b/projects-invent/webapps/ocs-fileserver/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/ocs-fileserver/metadata.yaml
rename to projects-invent/webapps/ocs-fileserver/metadata.yaml
diff --git a/projects-invent/ocs/ocs-server/i18n.json b/projects-invent/webapps/ocs-server/i18n.json
similarity index 100%
rename from projects-invent/ocs/ocs-server/i18n.json
rename to projects-invent/webapps/ocs-server/i18n.json
diff --git a/projects-invent/ocs/ocs-server/metadata.yaml b/projects-invent/webapps/ocs-server/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/ocs-server/metadata.yaml
rename to projects-invent/webapps/ocs-server/metadata.yaml
diff --git a/projects-invent/ocs/ocs-webserver/i18n.json b/projects-invent/webapps/ocs-webserver/i18n.json
similarity index 100%
rename from projects-invent/ocs/ocs-webserver/i18n.json
rename to projects-invent/webapps/ocs-webserver/i18n.json
diff --git a/projects-invent/ocs/ocs-webserver/metadata.yaml b/projects-invent/webapps/ocs-webserver/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/ocs-webserver/metadata.yaml
rename to projects-invent/webapps/ocs-webserver/metadata.yaml
diff --git a/projects-invent/ocs/synchrotron-sources/i18n.json b/projects-invent/webapps/synchrotron-sources/i18n.json
similarity index 100%
rename from projects-invent/ocs/synchrotron-sources/i18n.json
rename to projects-invent/webapps/synchrotron-sources/i18n.json
diff --git a/projects-invent/ocs/synchrotron-sources/metadata.yaml b/projects-invent/webapps/synchrotron-sources/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/synchrotron-sources/metadata.yaml
rename to projects-invent/webapps/synchrotron-sources/metadata.yaml
diff --git a/projects-invent/ocs/synchrotron/i18n.json b/projects-invent/webapps/synchrotron/i18n.json
similarity index 100%
rename from projects-invent/ocs/synchrotron/i18n.json
rename to projects-invent/webapps/synchrotron/i18n.json
diff --git a/projects-invent/ocs/synchrotron/metadata.yaml b/projects-invent/webapps/synchrotron/metadata.yaml
similarity index 100%
rename from projects-invent/ocs/synchrotron/metadata.yaml
rename to projects-invent/webapps/synchrotron/metadata.yaml

commit 98d6ff962fa2a08d5e37ab1d7c96583fb63553a4
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 18:07:28 2020 +1200

    This hasn't had any activity for years

diff --git a/projects-invent/network/wicd-kde/i18n.json b/projects-invent/unmaintained/wicd-kde/i18n.json
similarity index 100%
rename from projects-invent/network/wicd-kde/i18n.json
rename to projects-invent/unmaintained/wicd-kde/i18n.json
diff --git a/projects-invent/network/wicd-kde/metadata.yaml b/projects-invent/unmaintained/wicd-kde/metadata.yaml
similarity index 100%
rename from projects-invent/network/wicd-kde/metadata.yaml
rename to projects-invent/unmaintained/wicd-kde/metadata.yaml

commit 6c5eace45c8de3a1eac079225733a65afc566145
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 18:04:08 2020 +1200

    Eliminate more dead projects

diff --git a/projects-invent/multimedia/bangarang/i18n.json b/projects-invent/unmaintained/bangarang/i18n.json
similarity index 100%
rename from projects-invent/multimedia/bangarang/i18n.json
rename to projects-invent/unmaintained/bangarang/i18n.json
diff --git a/projects-invent/multimedia/bangarang/metadata.yaml b/projects-invent/unmaintained/bangarang/metadata.yaml
similarity index 100%
rename from projects-invent/multimedia/bangarang/metadata.yaml
rename to projects-invent/unmaintained/bangarang/metadata.yaml
diff --git a/projects-invent/multimedia/jungle/i18n.json b/projects-invent/unmaintained/jungle/i18n.json
similarity index 100%
rename from projects-invent/multimedia/jungle/i18n.json
rename to projects-invent/unmaintained/jungle/i18n.json
diff --git a/projects-invent/multimedia/jungle/metadata.yaml b/projects-invent/unmaintained/jungle/metadata.yaml
similarity index 100%
rename from projects-invent/multimedia/jungle/metadata.yaml
rename to projects-invent/unmaintained/jungle/metadata.yaml

commit 898b475742aeb4bf78eb2d7b20564cd892c14bb0
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:49:09 2020 +1200

    Eliminate kreenshot-editor which appears to be unmaintained

diff --git a/projects-invent/graphics/kreenshot-editor/i18n.json b/projects-invent/unmaintained/kreenshot-editor/i18n.json
similarity index 100%
rename from projects-invent/graphics/kreenshot-editor/i18n.json
rename to projects-invent/unmaintained/kreenshot-editor/i18n.json
diff --git a/projects-invent/graphics/kreenshot-editor/metadata.yaml b/projects-invent/unmaintained/kreenshot-editor/metadata.yaml
similarity index 100%
rename from projects-invent/graphics/kreenshot-editor/metadata.yaml
rename to projects-invent/unmaintained/kreenshot-editor/metadata.yaml

commit 5a19dd78656d9f529f4fdafff6263cb17b8b8e25
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:44:48 2020 +1200

    Move kqtquickcharts to libraries

diff --git a/projects-invent/education/kqtquickcharts/i18n.json b/projects-invent/libraries/kqtquickcharts/i18n.json
similarity index 100%
rename from projects-invent/education/kqtquickcharts/i18n.json
rename to projects-invent/libraries/kqtquickcharts/i18n.json
diff --git a/projects-invent/education/kqtquickcharts/metadata.yaml b/projects-invent/libraries/kqtquickcharts/metadata.yaml
similarity index 100%
rename from projects-invent/education/kqtquickcharts/metadata.yaml
rename to projects-invent/libraries/kqtquickcharts/metadata.yaml

commit 0b942522bd405a2b4e2414054b4567c7eec20518
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:41:43 2020 +1200

    Eliminate now empty applications/ category

diff --git a/projects-invent/applications/metadata.yaml b/projects-invent/applications/metadata.yaml
deleted file mode 100644
index 821c51e3..00000000
--- a/projects-invent/applications/metadata.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-description: ''
-hasrepo: false
-icon: null
-members: []
-name: KDE Applications
-projectpath: kde/applications
-repoactive: false
-repopath: null
-type: module

commit ce021d9f1bc3f6ed4e45a3bdc42d1932aea9cbb6
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:41:18 2020 +1200

    Transfer remaining items in applications/ to utilities/

diff --git a/projects-invent/applications/atcore-cli/i18n.json b/projects-invent/utilities/atcore-cli/i18n.json
similarity index 100%
rename from projects-invent/applications/atcore-cli/i18n.json
rename to projects-invent/utilities/atcore-cli/i18n.json
diff --git a/projects-invent/applications/atcore-cli/metadata.yaml b/projects-invent/utilities/atcore-cli/metadata.yaml
similarity index 100%
rename from projects-invent/applications/atcore-cli/metadata.yaml
rename to projects-invent/utilities/atcore-cli/metadata.yaml
diff --git a/projects-invent/applications/atelier/i18n.json b/projects-invent/utilities/atelier/i18n.json
similarity index 100%
rename from projects-invent/applications/atelier/i18n.json
rename to projects-invent/utilities/atelier/i18n.json
diff --git a/projects-invent/applications/atelier/metadata.yaml b/projects-invent/utilities/atelier/metadata.yaml
similarity index 100%
rename from projects-invent/applications/atelier/metadata.yaml
rename to projects-invent/utilities/atelier/metadata.yaml
diff --git a/projects-invent/applications/kirogi/i18n.json b/projects-invent/utilities/kirogi/i18n.json
similarity index 100%
rename from projects-invent/applications/kirogi/i18n.json
rename to projects-invent/utilities/kirogi/i18n.json
diff --git a/projects-invent/applications/kirogi/metadata.yaml b/projects-invent/utilities/kirogi/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kirogi/metadata.yaml
rename to projects-invent/utilities/kirogi/metadata.yaml
diff --git a/projects-invent/applications/kookbook/i18n.json b/projects-invent/utilities/kookbook/i18n.json
similarity index 100%
rename from projects-invent/applications/kookbook/i18n.json
rename to projects-invent/utilities/kookbook/i18n.json
diff --git a/projects-invent/applications/kookbook/metadata.yaml b/projects-invent/utilities/kookbook/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kookbook/metadata.yaml
rename to projects-invent/utilities/kookbook/metadata.yaml

commit ae64a0e022fb6ca65e577e241ad5984f43243bae
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:38:38 2020 +1200

    Move Dolphin and KHelpCenter to system

diff --git a/projects-invent/applications/dolphin/i18n.json b/projects-invent/system/dolphin/i18n.json
similarity index 100%
rename from projects-invent/applications/dolphin/i18n.json
rename to projects-invent/system/dolphin/i18n.json
diff --git a/projects-invent/applications/dolphin/metadata.yaml b/projects-invent/system/dolphin/metadata.yaml
similarity index 100%
rename from projects-invent/applications/dolphin/metadata.yaml
rename to projects-invent/system/dolphin/metadata.yaml
diff --git a/projects-invent/applications/khelpcenter/i18n.json b/projects-invent/system/khelpcenter/i18n.json
similarity index 100%
rename from projects-invent/applications/khelpcenter/i18n.json
rename to projects-invent/system/khelpcenter/i18n.json
diff --git a/projects-invent/applications/khelpcenter/metadata.yaml b/projects-invent/system/khelpcenter/metadata.yaml
similarity index 100%
rename from projects-invent/applications/khelpcenter/metadata.yaml
rename to projects-invent/system/khelpcenter/metadata.yaml

commit e04ab2d8c10f6d028d729a0cf72862241e235e78
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:29:02 2020 +1200

    Eliminate kapa due to lack of activity

diff --git a/projects-invent/applications/kapa/i18n.json b/projects-invent/unmaintained/kapa/i18n.json
similarity index 100%
rename from projects-invent/applications/kapa/i18n.json
rename to projects-invent/unmaintained/kapa/i18n.json
diff --git a/projects-invent/applications/kapa/metadata.yaml b/projects-invent/unmaintained/kapa/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kapa/metadata.yaml
rename to projects-invent/unmaintained/kapa/metadata.yaml

commit 2e79120229433309638ef28eb263e6a7a0b723ea
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:24:02 2020 +1200

    Move various items in applications/ to more relevant homes

diff --git a/projects-invent/applications/baloo-widgets/i18n.json b/projects-invent/libraries/baloo-widgets/i18n.json
similarity index 100%
rename from projects-invent/applications/baloo-widgets/i18n.json
rename to projects-invent/libraries/baloo-widgets/i18n.json
diff --git a/projects-invent/applications/baloo-widgets/metadata.yaml b/projects-invent/libraries/baloo-widgets/metadata.yaml
similarity index 100%
rename from projects-invent/applications/baloo-widgets/metadata.yaml
rename to projects-invent/libraries/baloo-widgets/metadata.yaml
diff --git a/projects-invent/applications/kdialog/i18n.json b/projects-invent/network/konqueror/i18n.json
similarity index 100%
rename from projects-invent/applications/kdialog/i18n.json
rename to projects-invent/network/konqueror/i18n.json
diff --git a/projects-invent/applications/konqueror/metadata.yaml b/projects-invent/network/konqueror/metadata.yaml
similarity index 100%
rename from projects-invent/applications/konqueror/metadata.yaml
rename to projects-invent/network/konqueror/metadata.yaml
diff --git a/projects-invent/applications/kate/i18n.json b/projects-invent/utilities/kate/i18n.json
similarity index 100%
rename from projects-invent/applications/kate/i18n.json
rename to projects-invent/utilities/kate/i18n.json
diff --git a/projects-invent/applications/kate/metadata.yaml b/projects-invent/utilities/kate/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kate/metadata.yaml
rename to projects-invent/utilities/kate/metadata.yaml
diff --git a/projects-invent/applications/keditbookmarks/i18n.json b/projects-invent/utilities/kdialog/i18n.json
similarity index 100%
rename from projects-invent/applications/keditbookmarks/i18n.json
rename to projects-invent/utilities/kdialog/i18n.json
diff --git a/projects-invent/applications/kdialog/metadata.yaml b/projects-invent/utilities/kdialog/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kdialog/metadata.yaml
rename to projects-invent/utilities/kdialog/metadata.yaml
diff --git a/projects-invent/applications/kfind/i18n.json b/projects-invent/utilities/keditbookmarks/i18n.json
similarity index 100%
rename from projects-invent/applications/kfind/i18n.json
rename to projects-invent/utilities/keditbookmarks/i18n.json
diff --git a/projects-invent/applications/keditbookmarks/metadata.yaml b/projects-invent/utilities/keditbookmarks/metadata.yaml
similarity index 100%
rename from projects-invent/applications/keditbookmarks/metadata.yaml
rename to projects-invent/utilities/keditbookmarks/metadata.yaml
diff --git a/projects-invent/applications/konqueror/i18n.json b/projects-invent/utilities/kfind/i18n.json
similarity index 100%
rename from projects-invent/applications/konqueror/i18n.json
rename to projects-invent/utilities/kfind/i18n.json
diff --git a/projects-invent/applications/kfind/metadata.yaml b/projects-invent/utilities/kfind/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kfind/metadata.yaml
rename to projects-invent/utilities/kfind/metadata.yaml
diff --git a/projects-invent/applications/konsole/i18n.json b/projects-invent/utilities/konsole/i18n.json
similarity index 100%
rename from projects-invent/applications/konsole/i18n.json
rename to projects-invent/utilities/konsole/i18n.json
diff --git a/projects-invent/applications/konsole/metadata.yaml b/projects-invent/utilities/konsole/metadata.yaml
similarity index 100%
rename from projects-invent/applications/konsole/metadata.yaml
rename to projects-invent/utilities/konsole/metadata.yaml
diff --git a/projects-invent/applications/yakuake/i18n.json b/projects-invent/utilities/yakuake/i18n.json
similarity index 100%
rename from projects-invent/applications/yakuake/i18n.json
rename to projects-invent/utilities/yakuake/i18n.json
diff --git a/projects-invent/applications/yakuake/metadata.yaml b/projects-invent/utilities/yakuake/metadata.yaml
similarity index 100%
rename from projects-invent/applications/yakuake/metadata.yaml
rename to projects-invent/utilities/yakuake/metadata.yaml

commit a8032114fe7f9e878157994a7609fdf3be28154d
Author: Ben Cooksley <bcooksley at kde.org>
Date:   Sat May 16 17:22:19 2020 +1200

    Move kcwsh to unmaintained as discussed with Hannah

diff --git a/projects-invent/applications/kcwsh/i18n.json b/projects-invent/unmaintained/kcwsh/i18n.json
similarity index 100%
rename from projects-invent/applications/kcwsh/i18n.json
rename to projects-invent/unmaintained/kcwsh/i18n.json
diff --git a/projects-invent/applications/kcwsh/metadata.yaml b/projects-invent/unmaintained/kcwsh/metadata.yaml
similarity index 100%
rename from projects-invent/applications/kcwsh/metadata.yaml
rename to projects-invent/unmaintained/kcwsh/metadata.yaml

commit fb3af6fdbd2a3b7b32588ebddd6ff342cec36dd4
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 10:17:07 2020 +0530

    introduce new documentation category
    
    this will keep mostly all documentation for various projects

diff --git a/projects-invent/graphics/digikam-doc/i18n.json b/projects-invent/documentation/digikam-doc/i18n.json
similarity index 100%
rename from projects-invent/graphics/digikam-doc/i18n.json
rename to projects-invent/documentation/digikam-doc/i18n.json
diff --git a/projects-invent/graphics/digikam-doc/metadata.yaml b/projects-invent/documentation/digikam-doc/metadata.yaml
similarity index 100%
rename from projects-invent/graphics/digikam-doc/metadata.yaml
rename to projects-invent/documentation/digikam-doc/metadata.yaml
diff --git a/projects-invent/websites/docs-krita-org/i18n.json b/projects-invent/documentation/docs-krita-org/i18n.json
similarity index 100%
rename from projects-invent/websites/docs-krita-org/i18n.json
rename to projects-invent/documentation/docs-krita-org/i18n.json
diff --git a/projects-invent/websites/docs-krita-org/metadata.yaml b/projects-invent/documentation/docs-krita-org/metadata.yaml
similarity index 100%
rename from projects-invent/websites/docs-krita-org/metadata.yaml
rename to projects-invent/documentation/docs-krita-org/metadata.yaml
diff --git a/projects-invent/sdk/kf5book/i18n.json b/projects-invent/documentation/docs-plasma-mobile-org/i18n.json
similarity index 100%
rename from projects-invent/sdk/kf5book/i18n.json
rename to projects-invent/documentation/docs-plasma-mobile-org/i18n.json
diff --git a/projects-invent/websites/docs-plasma-mobile-org/metadata.yaml b/projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml
similarity index 100%
rename from projects-invent/websites/docs-plasma-mobile-org/metadata.yaml
rename to projects-invent/documentation/docs-plasma-mobile-org/metadata.yaml
diff --git a/projects-invent/websites/docs-plasma-mobile-org/i18n.json b/projects-invent/documentation/hig-kde-org/i18n.json
similarity index 100%
rename from projects-invent/websites/docs-plasma-mobile-org/i18n.json
rename to projects-invent/documentation/hig-kde-org/i18n.json
diff --git a/projects-invent/websites/hig-kde-org/metadata.yaml b/projects-invent/documentation/hig-kde-org/metadata.yaml
similarity index 100%
rename from projects-invent/websites/hig-kde-org/metadata.yaml
rename to projects-invent/documentation/hig-kde-org/metadata.yaml
diff --git a/projects-invent/websites/hig-kde-org/i18n.json b/projects-invent/documentation/kf5book/i18n.json
similarity index 100%
rename from projects-invent/websites/hig-kde-org/i18n.json
rename to projects-invent/documentation/kf5book/i18n.json
diff --git a/projects-invent/sdk/kf5book/metadata.yaml b/projects-invent/documentation/kf5book/metadata.yaml
similarity index 100%
rename from projects-invent/sdk/kf5book/metadata.yaml
rename to projects-invent/documentation/kf5book/metadata.yaml
diff --git a/projects-invent/websites/openraster-org/i18n.json b/projects-invent/documentation/openraster-org/i18n.json
similarity index 100%
rename from projects-invent/websites/openraster-org/i18n.json
rename to projects-invent/documentation/openraster-org/i18n.json
diff --git a/projects-invent/websites/openraster-org/metadata.yaml b/projects-invent/documentation/openraster-org/metadata.yaml
similarity index 100%
rename from projects-invent/websites/openraster-org/metadata.yaml
rename to projects-invent/documentation/openraster-org/metadata.yaml

commit 8f16185d25ca5ec2e751dff597ed58a01e33d8f4
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 10:11:29 2020 +0530

    Drop the others/kde-edu-courses and move to unmaintained
    
    If this is used in production, we can move it to education at later
    stage, but so far there was no indication of it being used

diff --git a/projects-invent/others/kde-edu-courses/metadata.yaml b/projects-invent/others/kde-edu-courses/metadata.yaml
deleted file mode 100644
index f57d8c37..00000000
--- a/projects-invent/others/kde-edu-courses/metadata.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-description: ''
-hasrepo: false
-icon: null
-members: []
-name: KDE Edu Courses
-projectpath: others/kde-edu-courses
-repoactive: false
-repopath: null
-type: module
diff --git a/projects-invent/others/kde-edu-courses/kig-data/i18n.json b/projects-invent/unmaintained/kig-data/i18n.json
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kig-data/i18n.json
rename to projects-invent/unmaintained/kig-data/i18n.json
diff --git a/projects-invent/others/kde-edu-courses/kig-data/metadata.yaml b/projects-invent/unmaintained/kig-data/metadata.yaml
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kig-data/metadata.yaml
rename to projects-invent/unmaintained/kig-data/metadata.yaml
diff --git a/projects-invent/others/kde-edu-courses/kturtle-data/i18n.json b/projects-invent/unmaintained/kturtle-data/i18n.json
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kturtle-data/i18n.json
rename to projects-invent/unmaintained/kturtle-data/i18n.json
diff --git a/projects-invent/others/kde-edu-courses/kturtle-data/metadata.yaml b/projects-invent/unmaintained/kturtle-data/metadata.yaml
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kturtle-data/metadata.yaml
rename to projects-invent/unmaintained/kturtle-data/metadata.yaml
diff --git a/projects-invent/others/kde-edu-courses/kvtml-data/i18n.json b/projects-invent/unmaintained/kvtml-data/i18n.json
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kvtml-data/i18n.json
rename to projects-invent/unmaintained/kvtml-data/i18n.json
diff --git a/projects-invent/others/kde-edu-courses/kvtml-data/metadata.yaml b/projects-invent/unmaintained/kvtml-data/metadata.yaml
similarity index 100%
rename from projects-invent/others/kde-edu-courses/kvtml-data/metadata.yaml
rename to projects-invent/unmaintained/kvtml-data/metadata.yaml

commit efbf9dc9871f7b9c88d1a57c8e3825a95d5cbb74
Author: Bhushan Shah <bhush94 at gmail.com>
Date:   Sat May 16 10:07:54 2020 +0530

    move bindings to libraries
    
    we want to avoid having a categories for 3 repositories

diff --git a/projects-invent/bindings/kross-interpreters/i18n.json b/projects-invent/libraries/kross-interpreters/i18n.json
similarity index 100%
rename from projects-invent/bindings/kross-interpreters/i18n.json
rename to projects-invent/libraries/kross-interpreters/i18n.json
diff --git a/projects-invent/bindings/kross-interpreters/metadata.yaml b/projects-invent/libraries/kross-interpreters/metadata.yaml
similarity index 100%
rename from projects-invent/bindings/kross-interpreters/metadata.yaml
rename to projects-invent/libraries/kross-interpreters/metadata.yaml
diff --git a/projects-invent/bindings/pykde5/i18n.json b/projects-invent/libraries/pykde5/i18n.json
similarity index 100%
rename from projects-invent/bindings/pykde5/i18n.json
rename to projects-invent/libraries/pykde5/i18n.json
diff --git a/projects-invent/bindings/pykde5/metadata.yaml b/projects-invent/libraries/pykde5/metadata.yaml
similarity index 100%
rename from projects-invent/bindings/pykde5/metadata.yaml
rename to projects-invent/libraries/pykde5/metadata.yaml
diff --git a/projects-invent/bindings/twine2/i18n.json b/projects-invent/libraries/twine2/i18n.json
similarity index 100%
rename from projects-invent/bindings/twine2/i18n.json
rename to projects-invent/libraries/twine2/i18n.json
diff --git a/projects-invent/bindings/twine2/metadata.yaml b/projects-invent/libraries/twine2/metadata.yaml
similarity index 100%
rename from projects-invent/bindings/twine2/metadata.yaml
rename to projects-invent/libraries/twine2/metadata.yaml



More information about the neon-notifications mailing list