diff --git a/GUI/CMakeLists.txt b/GUI/CMakeLists.txt
index 023ef1f045403210872636d5c084eb2c26c8ef9d..330fcf14a8e84ab9b02f1ff4161024ae933a7419 100644
--- a/GUI/CMakeLists.txt
+++ b/GUI/CMakeLists.txt
@@ -19,7 +19,6 @@ set(include_dirs
     ${CMAKE_CURRENT_SOURCE_DIR}/InfoWidgets
     ${CMAKE_CURRENT_SOURCE_DIR}/Items
     ${CMAKE_CURRENT_SOURCE_DIR}/Mapper
-    ${CMAKE_CURRENT_SOURCE_DIR}/Project
     ${CMAKE_CURRENT_SOURCE_DIR}/Session
     ${CMAKE_CURRENT_SOURCE_DIR}/mainwindow
     ${CMAKE_CURRENT_SOURCE_DIR}/utils
diff --git a/GUI/Items/projectmanager.cpp b/GUI/Items/projectmanager.cpp
index 0acaae2a3d406be8f13a5a29b670e5d7f6eaacc8..adefd73607975eaede19f26779f36bbc54ea72eb 100644
--- a/GUI/Items/projectmanager.cpp
+++ b/GUI/Items/projectmanager.cpp
@@ -17,8 +17,8 @@
 #include "GUI/Application/GlobalSettings.h"
 #include "GUI/InfoWidgets/ProjectLoadProblemDialog.h"
 #include "GUI/Models/Data/ApplicationModels.h"
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/mainwindow/SaveService.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include "GUI/mainwindow/newprojectdialog.h"
diff --git a/GUI/Items/projectmanager.h b/GUI/Items/projectmanager.h
index a971a272186b9be45cc7164b041237419a03e0e0..857c0d497afa6101eebfbef216079a26ff66f39e 100644
--- a/GUI/Items/projectmanager.h
+++ b/GUI/Items/projectmanager.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_ITEMS_PROJECTMANAGER_H
 #define BORNAGAIN_GUI_ITEMS_PROJECTMANAGER_H
 
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include <QObject>
 #include <QStringList>
 
diff --git a/GUI/Project/LinkInstrumentManager.cpp b/GUI/Models/Project/LinkInstrumentManager.cpp
similarity index 97%
rename from GUI/Project/LinkInstrumentManager.cpp
rename to GUI/Models/Project/LinkInstrumentManager.cpp
index ffd659fe21f208b01efd9156cf0e2e1b177ad10c..d5b93bcc19f7ab4697c72e826137033511935d66 100644
--- a/GUI/Project/LinkInstrumentManager.cpp
+++ b/GUI/Models/Project/LinkInstrumentManager.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/LinkInstrumentManager.cpp
+//! @file      GUI/Models/Project/LinkInstrumentManager.cpp
 //! @brief     Implements class LinkInstrumentManager
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Project/LinkInstrumentManager.h"
+#include "GUI/Models/Project/LinkInstrumentManager.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Models/Data/RealDataModel.h"
diff --git a/GUI/Project/LinkInstrumentManager.h b/GUI/Models/Project/LinkInstrumentManager.h
similarity index 88%
rename from GUI/Project/LinkInstrumentManager.h
rename to GUI/Models/Project/LinkInstrumentManager.h
index a6b03dab7bef16b4af0c92204c6f15d778cd4a89..11ae07ab5c868073c349f71a1fe0110660b1937a 100644
--- a/GUI/Project/LinkInstrumentManager.h
+++ b/GUI/Models/Project/LinkInstrumentManager.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/LinkInstrumentManager.h
+//! @file      GUI/Models/Project/LinkInstrumentManager.h
 //! @brief     Defines class LinkInstrumentManager
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
-#define BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
+#ifndef BORNAGAIN_GUI_MODELS_PROJECT_LINKINSTRUMENTMANAGER_H
+#define BORNAGAIN_GUI_MODELS_PROJECT_LINKINSTRUMENTMANAGER_H
 
 #include <QList>
 #include <QObject>
@@ -52,4 +52,4 @@ private:
     RealDataModel* m_realDataModel;
 };
 
-#endif // BORNAGAIN_GUI_PROJECT_LINKINSTRUMENTMANAGER_H
+#endif // BORNAGAIN_GUI_MODELS_PROJECT_LINKINSTRUMENTMANAGER_H
diff --git a/GUI/Project/OutputDataIOHistory.cpp b/GUI/Models/Project/OutputDataIOHistory.cpp
similarity index 97%
rename from GUI/Project/OutputDataIOHistory.cpp
rename to GUI/Models/Project/OutputDataIOHistory.cpp
index 8dfe83cc3dac5aed4ebab8645e3891072bf59e3f..35ccfadd4376aa2d194ed4142b41690d5493bef2 100644
--- a/GUI/Project/OutputDataIOHistory.cpp
+++ b/GUI/Models/Project/OutputDataIOHistory.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/OutputDataIOHistory.cpp
+//! @file      GUI/Models/Project/OutputDataIOHistory.cpp
 //! @brief     Defines OutputDataIOHistory classes
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Project/OutputDataIOHistory.h"
+#include "GUI/Models/Project/OutputDataIOHistory.h"
 #include "Base/Utils/Assert.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/SaveLoadInterface.h"
diff --git a/GUI/Project/OutputDataIOHistory.h b/GUI/Models/Project/OutputDataIOHistory.h
similarity index 90%
rename from GUI/Project/OutputDataIOHistory.h
rename to GUI/Models/Project/OutputDataIOHistory.h
index ccf9f969393b9d845d34a7c8d09596f040c3111e..89bf9c42dc14510df19b9b9f0c2267b5340351b3 100644
--- a/GUI/Project/OutputDataIOHistory.h
+++ b/GUI/Models/Project/OutputDataIOHistory.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/OutputDataIOHistory.h
+//! @file      GUI/Models/Project/OutputDataIOHistory.h
 //! @brief     Defines OutputDataIOHistory classes
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOHISTORY_H
-#define BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOHISTORY_H
+#ifndef BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOHISTORY_H
+#define BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOHISTORY_H
 
 #include <QDateTime>
 #include <QMap>
@@ -80,4 +80,4 @@ private:
     QMap<QString, OutputDataDirHistory> m_dir_history;
 };
 
-#endif // BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOHISTORY_H
+#endif // BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOHISTORY_H
diff --git a/GUI/Project/OutputDataIOService.cpp b/GUI/Models/Project/OutputDataIOService.cpp
similarity index 96%
rename from GUI/Project/OutputDataIOService.cpp
rename to GUI/Models/Project/OutputDataIOService.cpp
index b352df937643890970340a87955fece79e98f32f..2b0e8eb5f225234ca1e04e008439bb795f23f99f 100644
--- a/GUI/Project/OutputDataIOService.cpp
+++ b/GUI/Models/Project/OutputDataIOService.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/OutputDataIOService.cpp
+//! @file      GUI/Models/Project/OutputDataIOService.cpp
 //! @brief     Implements class OutputDataIOService
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,11 +12,11 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Project/OutputDataIOService.h"
+#include "GUI/Models/Project/OutputDataIOService.h"
 #include "GUI/Items/JobItem.h"
 #include "GUI/Items/ModelPath.h"
 #include "GUI/Models/Data/ApplicationModels.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/MessageService.h"
 #include "GUI/utils/SaveLoadInterface.h"
 #include <QFile>
diff --git a/GUI/Project/OutputDataIOService.h b/GUI/Models/Project/OutputDataIOService.h
similarity index 84%
rename from GUI/Project/OutputDataIOService.h
rename to GUI/Models/Project/OutputDataIOService.h
index 0234ee1d4df3b842d1fdbbdbf45cb37668552980..c45e5fc3c949daa0f0226755805da69cbb9f087a 100644
--- a/GUI/Project/OutputDataIOService.h
+++ b/GUI/Models/Project/OutputDataIOService.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/OutputDataIOService.h
+//! @file      GUI/Models/Project/OutputDataIOService.h
 //! @brief     Defines class OutputDataIOService
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
-#define BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
+#ifndef BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOSERVICE_H
+#define BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOSERVICE_H
 
-#include "GUI/Project/OutputDataIOHistory.h"
+#include "GUI/Models/Project/OutputDataIOHistory.h"
 #include <QObject>
 
 class ApplicationModels;
@@ -49,4 +49,4 @@ private:
     ApplicationModels* m_applicationModels;
 };
 
-#endif // BORNAGAIN_GUI_PROJECT_OUTPUTDATAIOSERVICE_H
+#endif // BORNAGAIN_GUI_MODELS_PROJECT_OUTPUTDATAIOSERVICE_H
diff --git a/GUI/Project/ProjectUtils.cpp b/GUI/Models/Project/ProjectUtils.cpp
similarity index 90%
rename from GUI/Project/ProjectUtils.cpp
rename to GUI/Models/Project/ProjectUtils.cpp
index b57f1c80d000343e0e9c88669af2b65d5f1fe94b..f86b266648bceceb447a6b69867258b668476ea6 100644
--- a/GUI/Project/ProjectUtils.cpp
+++ b/GUI/Models/Project/ProjectUtils.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/ProjectUtils.cpp
+//! @file      GUI/Models/Project/ProjectUtils.cpp
 //! @brief     Implements ProjectUtils namespace
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include <QFileInfo>
 
 QString GUI::Project::Utils::projectName(const QString& projectFileName)
diff --git a/GUI/Project/ProjectUtils.h b/GUI/Models/Project/ProjectUtils.h
similarity index 88%
rename from GUI/Project/ProjectUtils.h
rename to GUI/Models/Project/ProjectUtils.h
index 1ce08899cccc511aac3f9c39a05597222015820a..4794e8671f0ee2b9a24ab765ec65e145f57e508c 100644
--- a/GUI/Project/ProjectUtils.h
+++ b/GUI/Models/Project/ProjectUtils.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/ProjectUtils.h
+//! @file      GUI/Models/Project/ProjectUtils.h
 //! @brief     Defines namespace GUI::Project::Utils
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_PROJECT_PROJECTUTILS_H
-#define BORNAGAIN_GUI_PROJECT_PROJECTUTILS_H
+#ifndef BORNAGAIN_GUI_MODELS_PROJECT_PROJECTUTILS_H
+#define BORNAGAIN_GUI_MODELS_PROJECT_PROJECTUTILS_H
 
 #include <QString>
 
@@ -44,4 +44,4 @@ bool hasAutosavedData(const QString& projectFileName);
 
 } // namespace GUI::Project::Utils
 
-#endif // BORNAGAIN_GUI_PROJECT_PROJECTUTILS_H
+#endif // BORNAGAIN_GUI_MODELS_PROJECT_PROJECTUTILS_H
diff --git a/GUI/Project/projectdocument.cpp b/GUI/Models/Project/projectdocument.cpp
similarity index 97%
rename from GUI/Project/projectdocument.cpp
rename to GUI/Models/Project/projectdocument.cpp
index 21569a85554a42b68c4e877a96eefe63f58c4f3a..516f161825f46de539a83807364655175761dbf8 100644
--- a/GUI/Project/projectdocument.cpp
+++ b/GUI/Models/Project/projectdocument.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/projectdocument.cpp
+//! @file      GUI/Models/Project/projectdocument.cpp
 //! @brief     Implements class ProjectDocument
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Models/Data/DocumentModel.h"
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Project/LinkInstrumentManager.h"
-#include "GUI/Project/OutputDataIOService.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/LinkInstrumentManager.h"
+#include "GUI/Models/Project/OutputDataIOService.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/Helpers.h"
 #include "GUI/utils/MessageService.h"
diff --git a/GUI/Project/projectdocument.h b/GUI/Models/Project/projectdocument.h
similarity index 94%
rename from GUI/Project/projectdocument.h
rename to GUI/Models/Project/projectdocument.h
index 2ebc08b95e7a09014381b9d5ed416db78a92e9f7..de633b63b00ed17b52d97040c0a954499a830926 100644
--- a/GUI/Project/projectdocument.h
+++ b/GUI/Models/Project/projectdocument.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Project/projectdocument.h
+//! @file      GUI/Models/Project/projectdocument.h
 //! @brief     Defines class ProjectDocument
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_PROJECT_PROJECTDOCUMENT_H
-#define BORNAGAIN_GUI_PROJECT_PROJECTDOCUMENT_H
+#ifndef BORNAGAIN_GUI_MODELS_PROJECT_PROJECTDOCUMENT_H
+#define BORNAGAIN_GUI_MODELS_PROJECT_PROJECTDOCUMENT_H
 
 #include "GUI/Models/Data/ApplicationModels.h"
 #include <QObject>
@@ -139,4 +139,4 @@ inline ProjectDocument::Functionalities toFunctionalities(const QVariant& v)
         v.value<ProjectDocument::Functionalities::Int>());
 }
 
-#endif // BORNAGAIN_GUI_PROJECT_PROJECTDOCUMENT_H
+#endif // BORNAGAIN_GUI_MODELS_PROJECT_PROJECTDOCUMENT_H
diff --git a/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp b/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
index dab781eeb5e41aa09695e84d91e17f5bb5740851..623e20780c89c65372632d76a0448e36038a2416 100644
--- a/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
+++ b/GUI/Views/ImportDataWidgets/RealDataPropertiesWidget.cpp
@@ -16,8 +16,8 @@
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/LinkInstrumentManager.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/LinkInstrumentManager.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include <QComboBox>
 #include <QLabel>
diff --git a/GUI/Views/InstrumentWidgets/InstrumentListView.cpp b/GUI/Views/InstrumentWidgets/InstrumentListView.cpp
index a0e6829c1077ceebf125785124d547db5b8b5388..3a6772e5ed559693ee4aafdce1f9d2d9eae000c0 100644
--- a/GUI/Views/InstrumentWidgets/InstrumentListView.cpp
+++ b/GUI/Views/InstrumentWidgets/InstrumentListView.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/InstrumentWidgets/InstrumentListView.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Session/SessionData.h"
 #include "GUI/Views/InstrumentWidgets/InstrumentLibraryEditor.h"
 #include "GUI/Views/InstrumentWidgets/InstrumentListModel.h"
diff --git a/GUI/Views/InstrumentWidgets/InstrumentView.cpp b/GUI/Views/InstrumentWidgets/InstrumentView.cpp
index 53e8ab8fdb28f639174438d93a67dd520ad938bc..b805a09425dbde7fd0eeef1a7565d155e9b46142 100644
--- a/GUI/Views/InstrumentWidgets/InstrumentView.cpp
+++ b/GUI/Views/InstrumentWidgets/InstrumentView.cpp
@@ -16,7 +16,7 @@
 #include "GUI/CommonWidgets/StyledToolBar.h"
 #include "GUI/Items/InstrumentItems.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/InstrumentWidgets/InstrumentEditor.h"
 #include "GUI/Views/InstrumentWidgets/InstrumentListView.h"
 #include <QBoxLayout>
diff --git a/GUI/Views/MaterialEditor/MaterialEditorDialog.cpp b/GUI/Views/MaterialEditor/MaterialEditorDialog.cpp
index a34144c229e641ca0090f3de6d4ad10d728b3f0a..0a455ec85991607fff6bb7f6bcd3e774745c89b6 100644
--- a/GUI/Views/MaterialEditor/MaterialEditorDialog.cpp
+++ b/GUI/Views/MaterialEditor/MaterialEditorDialog.cpp
@@ -21,7 +21,7 @@
 #include "GUI/Models/Material/MaterialModel.h"
 #include "GUI/Models/Material/MaterialModelStore.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/MaterialEditor/MaterialEditorModel.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include "GUI/utils/GUIHelpers.h"
diff --git a/GUI/Views/SampleDesigner/DesignerScene.cpp b/GUI/Views/SampleDesigner/DesignerScene.cpp
index f5da0b6631610fd6b84e8b8674d4be84af0cee2f..c708653ce371ceeff721f55ec589d8243696b568 100644
--- a/GUI/Views/SampleDesigner/DesignerScene.cpp
+++ b/GUI/Views/SampleDesigner/DesignerScene.cpp
@@ -25,7 +25,7 @@
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
 #include "GUI/Models/Sample/GUIExamplesFactory.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/SampleDesigner/DesignerMimeData.h"
 #include "GUI/Views/SampleDesigner/LayerView.h"
 #include "GUI/Views/SampleDesigner/MultiLayerView.h"
diff --git a/GUI/Views/Toplevel/ImportDataView.cpp b/GUI/Views/Toplevel/ImportDataView.cpp
index 26c5a6575bb5154c2236f04193a06a2ed596a9f5..9659bf847a0aab44d43f9557300d4bdcf4ef79dc 100644
--- a/GUI/Views/Toplevel/ImportDataView.cpp
+++ b/GUI/Views/Toplevel/ImportDataView.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/Toplevel/ImportDataView.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Models/Data/RealDataModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/ImportDataWidgets/RealDataSelectorWidget.h"
 #include "GUI/mainwindow/mainwindow.h"
 #include "GUI/utils/mainwindow_constants.h"
diff --git a/GUI/Views/Toplevel/ProjectSettingsView.cpp b/GUI/Views/Toplevel/ProjectSettingsView.cpp
index 1f98b377b770ae13d99b73258e1702dc0f049571..88a51dbbfec538d653c1ffb0e99bb14387af1c48 100644
--- a/GUI/Views/Toplevel/ProjectSettingsView.cpp
+++ b/GUI/Views/Toplevel/ProjectSettingsView.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/utils/qstringutils.h"
 #include "ui_ProjectSettingsView.h"
diff --git a/GUI/Views/Toplevel/ProjectSettingsView.h b/GUI/Views/Toplevel/ProjectSettingsView.h
index 74bec93f37f6e8370bfb935b737581dceb433479..0918fe9fdaac24a7a92c5aa6456338d9b56b9226 100644
--- a/GUI/Views/Toplevel/ProjectSettingsView.h
+++ b/GUI/Views/Toplevel/ProjectSettingsView.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_VIEWS_TOPLEVEL_PROJECTSETTINGSVIEW_H
 #define BORNAGAIN_GUI_VIEWS_TOPLEVEL_PROJECTSETTINGSVIEW_H
 
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include <QWidget>
 
 namespace Ui {
diff --git a/GUI/Views/Toplevel/SampleView.cpp b/GUI/Views/Toplevel/SampleView.cpp
index 94784e6d83938e08281fb67fea53014e51f0ab14..c788711576073f8f5b3cb2d06e002d3fe122ecf3 100644
--- a/GUI/Views/Toplevel/SampleView.cpp
+++ b/GUI/Views/Toplevel/SampleView.cpp
@@ -16,7 +16,7 @@
 #include "GUI/CommonWidgets/DocksController.h"
 #include "GUI/Items/MultiLayerItem.h"
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/SampleDesigner/DesignerScene.h"
 #include "GUI/Views/SampleDesigner/DesignerView.h"
 #include "GUI/Views/SampleDesigner/LayerOrientedSampleEditor.h"
diff --git a/GUI/Views/Toplevel/SimulationView.cpp b/GUI/Views/Toplevel/SimulationView.cpp
index 6334493db455cb71e9fd2a7b4eecfe573a181016..0023cdd81af3acee67bddc68d8f52b4975b0ccbf 100644
--- a/GUI/Views/Toplevel/SimulationView.cpp
+++ b/GUI/Views/Toplevel/SimulationView.cpp
@@ -27,7 +27,7 @@
 #include "GUI/Models/Job/JobModel.h"
 #include "GUI/Models/Sample/SampleModel.h"
 #include "GUI/Models/Sample/SampleValidator.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/Views/SampleDesigner/GroupBoxCollapser.h"
 #include "GUI/Views/SimulationWidgets/PythonScriptWidget.h"
 #include "GUI/mainwindow/mainwindow.h"
diff --git a/GUI/mainwindow/AutosaveController.cpp b/GUI/mainwindow/AutosaveController.cpp
index e5ac7e6c2476a91ddb4fcb97ab258032d67e5b53..52d4833811910902f360fa430166280764188280 100644
--- a/GUI/mainwindow/AutosaveController.cpp
+++ b/GUI/mainwindow/AutosaveController.cpp
@@ -14,8 +14,8 @@
 
 #include "GUI/mainwindow/AutosaveController.h"
 #include "GUI/CommonWidgets/UpdateTimer.h"
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include <QDir>
 
 namespace {
diff --git a/GUI/mainwindow/PyImportAssistant.cpp b/GUI/mainwindow/PyImportAssistant.cpp
index 1d9a970960d43fa5b238b9bd8e4e8528f26d492f..0886033870caee9e6fded8a8eb6519747a90b28b 100644
--- a/GUI/mainwindow/PyImportAssistant.cpp
+++ b/GUI/mainwindow/PyImportAssistant.cpp
@@ -24,7 +24,7 @@
 #include "GUI/Items/projectmanager.h"
 #include "GUI/Models/Data/GUIObjectBuilder.h"
 #include "GUI/Models/Sample/GUIDomainSampleVisitor.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/GUIHelpers.h"
 #include "GUI/utils/Helpers.h"
 #include "Sample/Multilayer/MultiLayer.h"
diff --git a/GUI/mainwindow/SaveService.cpp b/GUI/mainwindow/SaveService.cpp
index 54219729be7c1c59d13df2d79e35df155971c27d..caffc8e8afecd039a9aa3f633692ecaa2c16db0d 100644
--- a/GUI/mainwindow/SaveService.cpp
+++ b/GUI/mainwindow/SaveService.cpp
@@ -14,8 +14,8 @@
 
 #include "GUI/mainwindow/SaveService.h"
 #include "Base/Utils/Assert.h"
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/mainwindow/AutosaveController.h"
 #include "GUI/mainwindow/SaveThread.h"
 #include "GUI/utils/Error.h"
diff --git a/GUI/mainwindow/SaveThread.cpp b/GUI/mainwindow/SaveThread.cpp
index b99ea795f2fb2427e1b4f5067b49f252675760cb..796548688d0dca6b472035cff8bb76f6f3942fd5 100644
--- a/GUI/mainwindow/SaveThread.cpp
+++ b/GUI/mainwindow/SaveThread.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/mainwindow/SaveThread.h"
 #include "Base/Utils/Assert.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 
 SaveThread::SaveThread(QObject* parent) : QThread(parent), m_document(nullptr) {}
 
diff --git a/GUI/mainwindow/newprojectdialog.cpp b/GUI/mainwindow/newprojectdialog.cpp
index d376827e0782816e317c52b898fbf2e2c914d844..567549b836a65f4314decbc828c2f41d29f71624 100644
--- a/GUI/mainwindow/newprojectdialog.cpp
+++ b/GUI/mainwindow/newprojectdialog.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/mainwindow/newprojectdialog.h"
 #include "GUI/Application/GlobalSettings.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include <QFileDialog>
 #include <QGroupBox>
 #include <QLabel>
diff --git a/Tests/Unit/GUI/TestDataItemViews.cpp b/Tests/Unit/GUI/TestDataItemViews.cpp
index 744463ba495c9d0b227010819a9e2bc66f29d0d3..42bb25b752e24bc7356030a9cb72210755132322 100644
--- a/Tests/Unit/GUI/TestDataItemViews.cpp
+++ b/Tests/Unit/GUI/TestDataItemViews.cpp
@@ -5,7 +5,7 @@
 #include "GUI/Models/Data/DataPropertyContainer.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Group/ComboProperty.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/MessageService.h"
 #include "Tests/GTestWrapper/google_test.h"
diff --git a/Tests/Unit/GUI/TestLinkInstrument.cpp b/Tests/Unit/GUI/TestLinkInstrument.cpp
index 5b477a67da0b422baa71a17a3a1fa0ecff336f90..695c6d55365fe84f37ab1a48ca2ca30822b37dc2 100644
--- a/Tests/Unit/GUI/TestLinkInstrument.cpp
+++ b/Tests/Unit/GUI/TestLinkInstrument.cpp
@@ -5,8 +5,8 @@
 #include "GUI/Items/RectangularDetectorItem.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/LinkInstrumentManager.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/LinkInstrumentManager.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
 #include <QSignalSpy>
diff --git a/Tests/Unit/GUI/TestOutputDataIOService.cpp b/Tests/Unit/GUI/TestOutputDataIOService.cpp
index 18576c5d4cfee66146cc58e6e57b27348a4dcf90..b6c0e0561843f275d9f7c81e2400ca652458f01b 100644
--- a/Tests/Unit/GUI/TestOutputDataIOService.cpp
+++ b/Tests/Unit/GUI/TestOutputDataIOService.cpp
@@ -9,8 +9,8 @@
 #include "GUI/Models/Data/ImportDataInfo.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Project/OutputDataIOService.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/OutputDataIOService.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/Error.h"
 #include "GUI/utils/Helpers.h"
 #include "Tests/GTestWrapper/google_test.h"
diff --git a/Tests/Unit/GUI/TestProjectDocument.cpp b/Tests/Unit/GUI/TestProjectDocument.cpp
index 980bdaa711d53506fe635b156700d3ff8b86c7d2..e7544b4bc93d9ffb9ccf827ede0da99f01721031 100644
--- a/Tests/Unit/GUI/TestProjectDocument.cpp
+++ b/Tests/Unit/GUI/TestProjectDocument.cpp
@@ -5,8 +5,8 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/utils/Helpers.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
diff --git a/Tests/Unit/GUI/TestProjectUtils.cpp b/Tests/Unit/GUI/TestProjectUtils.cpp
index 19680662b928ff541859630c5b81738747031f64..1c32ea0b191ef96dee1bee598bcf50509314392d 100644
--- a/Tests/Unit/GUI/TestProjectUtils.cpp
+++ b/Tests/Unit/GUI/TestProjectUtils.cpp
@@ -1,5 +1,5 @@
 #include "GUI/Items/ItemFileNameUtils.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/Error.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Utils.h"
diff --git a/Tests/Unit/GUI/TestSaveService.cpp b/Tests/Unit/GUI/TestSaveService.cpp
index 28eb5bdcfbedcba5ef621dbad9d84dc242704721..4a61dbc8a68327d7031eded7f057da090450f156 100644
--- a/Tests/Unit/GUI/TestSaveService.cpp
+++ b/Tests/Unit/GUI/TestSaveService.cpp
@@ -5,8 +5,8 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Project/ProjectUtils.h"
-#include "GUI/Project/projectdocument.h"
+#include "GUI/Models/Project/ProjectUtils.h"
+#include "GUI/Models/Project/projectdocument.h"
 #include "GUI/mainwindow/AutosaveController.h"
 #include "GUI/mainwindow/SaveService.h"
 #include "GUI/utils/Error.h"
diff --git a/Tests/Unit/GUI/TestSavingSpecularData.cpp b/Tests/Unit/GUI/TestSavingSpecularData.cpp
index 6cb7181ec6f84a05c14b3c3e0ce6254d8b87de49..1ad97d8d93b72b27e0c1dea08837c76a58cd54f7 100644
--- a/Tests/Unit/GUI/TestSavingSpecularData.cpp
+++ b/Tests/Unit/GUI/TestSavingSpecularData.cpp
@@ -12,8 +12,8 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Project/OutputDataIOService.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/OutputDataIOService.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/Error.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
diff --git a/Tests/Unit/GUI/Utils.cpp b/Tests/Unit/GUI/Utils.cpp
index 29191e0961f179a7209513a86edd151c33f30351..7d7c4819078c3c91be5f1b958d2ac07117a0a169 100644
--- a/Tests/Unit/GUI/Utils.cpp
+++ b/Tests/Unit/GUI/Utils.cpp
@@ -18,7 +18,7 @@
 #include "Device/Histo/IntensityDataIOFactory.h"
 #include "GUI/Items/RealDataItem.h"
 #include "GUI/Items/SessionModel.h"
-#include "GUI/Project/ProjectUtils.h"
+#include "GUI/Models/Project/ProjectUtils.h"
 #include "GUI/utils/Error.h"
 #include <QDir>