diff --git a/GUI/Model/Project/ProjectDocument.cpp b/GUI/Model/Project/ProjectDocument.cpp
index 6320400356fd964fe3cf6ef598b747d9a4f6ef9e..2bbb13c7010b2c24106c93202e8d606c67af7989 100644
--- a/GUI/Model/Project/ProjectDocument.cpp
+++ b/GUI/Model/Project/ProjectDocument.cpp
@@ -91,14 +91,14 @@ QString ProjectDocument::userExportDir() const
 QString ProjectDocument::projectFullPath() const
 {
     if (!projectName().isEmpty())
-        return projectDir() + "/" + projectName() + GUI::Project::Util::projectFileExtension;
+        return projectDir() + "/" + projectName() + GUI::Util::Project::projectFileExtension;
     return "";
 }
 
 void ProjectDocument::setProjectFullPath(const QString& fullPath)
 {
-    setProjectName(GUI::Project::Util::projectName(fullPath));
-    setProjectDir(GUI::Project::Util::projectDir(fullPath));
+    setProjectName(GUI::Util::Project::projectName(fullPath));
+    setProjectDir(GUI::Util::Project::projectDir(fullPath));
 }
 
 InstrumentsSet* ProjectDocument::instrumentModel()
@@ -146,10 +146,10 @@ void ProjectDocument::saveProjectFileWithData(const QString& projectPullPath)
     writeProject(&file);
     file.close();
 
-    m_job_model.writeDatafiles(GUI::Project::Util::projectDir(projectPullPath));
-    m_real_model.writeDatafiles(GUI::Project::Util::projectDir(projectPullPath));
+    m_job_model.writeDatafiles(GUI::Util::Project::projectDir(projectPullPath));
+    m_real_model.writeDatafiles(GUI::Util::Project::projectDir(projectPullPath));
 
-    const bool autoSave = GUI::Project::Util::isAutosave(projectPullPath);
+    const bool autoSave = GUI::Util::Project::isAutosave(projectPullPath);
     if (!autoSave) {
         setProjectFullPath(projectPullPath);
         clearModified();
@@ -175,8 +175,8 @@ ProjectDocument::ReadResult ProjectDocument::loadProjectFileWithData(const QStri
         if (result == ReadResult::error)
             return result;
 
-        m_job_model.readDatafiles(GUI::Project::Util::projectDir(projectPullPath), &messageService);
-        m_real_model.readDatafiles(GUI::Project::Util::projectDir(projectPullPath),
+        m_job_model.readDatafiles(GUI::Util::Project::projectDir(projectPullPath), &messageService);
+        m_real_model.readDatafiles(GUI::Util::Project::projectDir(projectPullPath),
                                    &messageService);
 
         if (!messageService.warnings().empty())
diff --git a/GUI/Model/Project/ProjectUtil.cpp b/GUI/Model/Project/ProjectUtil.cpp
index 73654cf560d0dae91b414455a3d335673f6eb591..1d49e668b7d841e7ba366eee6000c013bcc348c1 100644
--- a/GUI/Model/Project/ProjectUtil.cpp
+++ b/GUI/Model/Project/ProjectUtil.cpp
@@ -3,7 +3,7 @@
 //  BornAgain: simulate and fit reflection and scattering
 //
 //! @file      GUI/Model/Project/ProjectUtil.cpp
-//! @brief     Implements namespace GUI::Project::Util.
+//! @brief     Implements namespace GUI::Util::Project.
 //!
 //! @homepage  http://www.bornagainproject.org
 //! @license   GNU General Public License v3 or higher (see COPYING)
@@ -15,37 +15,37 @@
 #include "GUI/Model/Project/ProjectUtil.h"
 #include <QFileInfo>
 
-QString GUI::Project::Util::projectName(const QString& projectFullPath)
+QString GUI::Util::Project::projectName(const QString& projectFullPath)
 {
     return QFileInfo(projectFullPath).baseName();
 }
 
-QString GUI::Project::Util::projectDir(const QString& projectFullPath)
+QString GUI::Util::Project::projectDir(const QString& projectFullPath)
 {
     return QFileInfo(projectFullPath).path();
 }
 
-QString GUI::Project::Util::autosaveSubdir()
+QString GUI::Util::Project::autosaveSubdir()
 {
     return "autosave";
 }
 
-QString GUI::Project::Util::autosaveDir(const QString& projectFullPath)
+QString GUI::Util::Project::autosaveDir(const QString& projectFullPath)
 {
     return projectDir(projectFullPath) + "/" + autosaveSubdir();
 }
 
-QString GUI::Project::Util::autosaveFullPath(const QString& projectFullPath)
+QString GUI::Util::Project::autosaveFullPath(const QString& projectFullPath)
 {
     return autosaveDir(projectFullPath) + "/" + projectName(projectFullPath) + projectFileExtension;
 }
 
-bool GUI::Project::Util::hasAutosavedData(const QString& projectFullPath)
+bool GUI::Util::Project::hasAutosavedData(const QString& projectFullPath)
 {
     return QFile::exists(projectFullPath) && QFile::exists(autosaveFullPath(projectFullPath));
 }
 
-bool GUI::Project::Util::isAutosave(const QString& projectFullPath)
+bool GUI::Util::Project::isAutosave(const QString& projectFullPath)
 {
     return projectFullPath.contains(autosaveSubdir());
 }
diff --git a/GUI/Model/Project/ProjectUtil.h b/GUI/Model/Project/ProjectUtil.h
index 9105f1dbdca31524db8c2eabd6aa7b28b374a747..8cad117185437475e5c969b40332f01c4cd7ad32 100644
--- a/GUI/Model/Project/ProjectUtil.h
+++ b/GUI/Model/Project/ProjectUtil.h
@@ -3,7 +3,7 @@
 //  BornAgain: simulate and fit reflection and scattering
 //
 //! @file      GUI/Model/Project/ProjectUtil.h
-//! @brief     Declares namespace GUI::Project::Util.
+//! @brief     Declares namespace GUI::Util::Project.
 //!
 //! @homepage  http://www.bornagainproject.org
 //! @license   GNU General Public License v3 or higher (see COPYING)
@@ -19,7 +19,7 @@
 
 //! Defines convenience function for project manager and document.
 
-namespace GUI::Project::Util {
+namespace GUI::Util::Project {
 
 inline constexpr const char* projectFileExtension{".ba"};
 
@@ -47,6 +47,6 @@ bool hasAutosavedData(const QString& projectFullPath);
 //! Returns true if path leads to the autosave subdirectory.
 bool isAutosave(const QString& projectFullPath);
 
-} // namespace GUI::Project::Util
+} // namespace GUI::Util::Project
 
 #endif // BORNAGAIN_GUI_MODEL_PROJECT_PROJECTUTIL_H
diff --git a/GUI/View/Manager/AutosaveController.cpp b/GUI/View/Manager/AutosaveController.cpp
index 3323e3d9315715475f1f5b5ce0438090377c4873..0c7863f9325975e0e56c4d3577176007bf1cdb32 100644
--- a/GUI/View/Manager/AutosaveController.cpp
+++ b/GUI/View/Manager/AutosaveController.cpp
@@ -64,7 +64,7 @@ void AutosaveController::setAutosaveTime(int timerInterval)
 QString AutosaveController::autosaveDir() const
 {
     if (m_document && m_document->hasValidNameAndPath())
-        return GUI::Project::Util::autosaveDir(m_document->projectFullPath());
+        return GUI::Util::Project::autosaveDir(m_document->projectFullPath());
 
     return "";
 }
@@ -72,7 +72,7 @@ QString AutosaveController::autosaveDir() const
 QString AutosaveController::autosaveFullPath() const
 {
     if (m_document && m_document->hasValidNameAndPath())
-        return GUI::Project::Util::autosaveFullPath(m_document->projectFullPath());
+        return GUI::Util::Project::autosaveFullPath(m_document->projectFullPath());
 
     return "";
 }
@@ -112,8 +112,8 @@ bool AutosaveController::assureAutoSaveDirExists() const
 {
     if (m_document && m_document->hasValidNameAndPath()) {
         const QDir projectDir = m_document->projectDir();
-        if (projectDir.exists() && !projectDir.exists(GUI::Project::Util::autosaveSubdir()))
-            projectDir.mkdir(GUI::Project::Util::autosaveSubdir());
+        if (projectDir.exists() && !projectDir.exists(GUI::Util::Project::autosaveSubdir()))
+            projectDir.mkdir(GUI::Util::Project::autosaveSubdir());
 
         return QDir(autosaveDir()).exists();
     }
diff --git a/GUI/View/Manager/NewProjectDialog.cpp b/GUI/View/Manager/NewProjectDialog.cpp
index 4277bb772f98e3d6053317738d87e4fc2b6ef166..aa6c0225f871387823af4be30f3b7147f51f04e1 100644
--- a/GUI/View/Manager/NewProjectDialog.cpp
+++ b/GUI/View/Manager/NewProjectDialog.cpp
@@ -100,7 +100,7 @@ void NewProjectDialog::setWorkingDirectory(const QString& text)
 QString NewProjectDialog::getProjectFileName() const
 {
     QString projectDir = getWorkingDirectory() + QString("/") + getProjectName();
-    QString projectFile = getProjectName() + GUI::Project::Util::projectFileExtension;
+    QString projectFile = getProjectName() + GUI::Util::Project::projectFileExtension;
     return projectDir + QString("/") + projectFile;
 }
 
diff --git a/GUI/View/Manager/ProjectManager.cpp b/GUI/View/Manager/ProjectManager.cpp
index 3fc49212fbb52c8f68ef9ef5cc57655f328e3fc6..486980915b53272b754304cf12bee7a93cba4ef6 100644
--- a/GUI/View/Manager/ProjectManager.cpp
+++ b/GUI/View/Manager/ProjectManager.cpp
@@ -251,8 +251,8 @@ bool ProjectManager::saveProject(QString projectPullPath)
     if (projectPullPath.isEmpty())
         return false;
 
-    gDoc->setProjectName(GUI::Project::Util::projectName(projectPullPath));
-    gDoc->setProjectDir(GUI::Project::Util::projectDir(projectPullPath));
+    gDoc->setProjectName(GUI::Util::Project::projectName(projectPullPath));
+    gDoc->setProjectDir(GUI::Util::Project::projectDir(projectPullPath));
 
     try {
         gDoc->saveProjectFileWithData(projectPullPath);
@@ -288,7 +288,7 @@ void ProjectManager::openProject(QString projectPullPath)
         return;
 
     if (projectPullPath.isEmpty()) {
-        const QString ext = QString(GUI::Project::Util::projectFileExtension);
+        const QString ext = QString(GUI::Util::Project::projectFileExtension);
         projectPullPath = QFileDialog::getOpenFileName(
             GUI::Global::mainWindow, "Open project file", workingDirectory(),
             "BornAgain project Files (*" + ext + ")", nullptr,
@@ -348,8 +348,8 @@ ProjectDocument::ReadResult ProjectManager::loadProject(const QString& fullPathA
 {
     auto readResult = ProjectDocument::ReadResult::ok;
 
-    const bool useAutosave = GUI::Project::Util::hasAutosavedData(fullPathAndName);
-    const QString autosaveFullPath = GUI::Project::Util::autosaveFullPath(fullPathAndName);
+    const bool useAutosave = GUI::Util::Project::hasAutosavedData(fullPathAndName);
+    const QString autosaveFullPath = GUI::Util::Project::autosaveFullPath(fullPathAndName);
     if (qApp)
         QApplication::setOverrideCursor(Qt::WaitCursor);
     if (useAutosave && restoreProjectDialog(fullPathAndName, autosaveFullPath)) {
@@ -441,7 +441,7 @@ bool ProjectManager::restoreProjectDialog(const QString& projectFileName,
 
     QString message = QString("Project '%1' contains autosaved data.\n\n"
                               "Project saved at %2\nAutosave from %3")
-                          .arg(GUI::Project::Util::projectName(projectFileName))
+                          .arg(GUI::Util::Project::projectName(projectFileName))
                           .arg(lmProject)
                           .arg(lmAutoSave);
 
diff --git a/Tests/Unit/GUI/TestAutosaveController.cpp b/Tests/Unit/GUI/TestAutosaveController.cpp
index 54013afc87c227a38462d08e3c91b05b95af9d77..8c0c815ea551722484884b2a89e4449749f0f287 100644
--- a/Tests/Unit/GUI/TestAutosaveController.cpp
+++ b/Tests/Unit/GUI/TestAutosaveController.cpp
@@ -32,7 +32,7 @@ TEST_F(TestAutosaveController, autoSaveController)
 {
     const QString projectDir("autoSaveController");
     UTest::GUI::create_dir(projectDir);
-    const QString ext = QString(GUI::Project::Util::projectFileExtension);
+    const QString ext = QString(GUI::Util::Project::projectFileExtension);
     const QString projectFileName(projectDir + "/document" + ext);
 
     const int autosave_time(100);
@@ -105,7 +105,7 @@ TEST_F(TestAutosaveController, autosaveEnabled)
     QApplication::setOrganizationName("BornAgain"); // autosave to directory ~/.config/BornAgain
     const QString projectDir("autosaveEnabled");
     UTest::GUI::create_dir(projectDir);
-    const QString ext = QString(GUI::Project::Util::projectFileExtension);
+    const QString ext = QString(GUI::Util::Project::projectFileExtension);
     const QString projectFileName(projectDir + "/document" + ext);
 
     std::unique_ptr<ProjectManager> manager(new ProjectManager(nullptr));
diff --git a/Tests/Unit/GUI/TestProjectDocument.cpp b/Tests/Unit/GUI/TestProjectDocument.cpp
index 92c5ba5351b0fade6b07bf499b0cb229cadc2df5..f161c592801333ff16225b7e256cc4456402e9bf 100644
--- a/Tests/Unit/GUI/TestProjectDocument.cpp
+++ b/Tests/Unit/GUI/TestProjectDocument.cpp
@@ -28,7 +28,7 @@ TEST_F(TestProjectDocument, projectDocument)
 {
     const QString projectDir("projectDocument");
     UTest::GUI::create_dir(projectDir);
-    const QString ext = QString(GUI::Project::Util::projectFileExtension);
+    const QString ext = QString(GUI::Util::Project::projectFileExtension);
     const QString projectFileName(projectDir + "/document" + ext);
 
     ProjectDocument document;
@@ -71,7 +71,7 @@ TEST_F(TestProjectDocument, projectDocumentWithData)
 {
     const QString projectDir("projectDocumentWithData");
     UTest::GUI::create_dir(projectDir);
-    const QString ext = QString(GUI::Project::Util::projectFileExtension);
+    const QString ext = QString(GUI::Util::Project::projectFileExtension);
 
     ProjectDocument document;
     auto* instrument = document.instrumentModel()->addInstrumentItem<GISASInstrumentItem>();
@@ -101,7 +101,7 @@ TEST_F(TestProjectDocument, failingProjectSave)
 {
     const QString projectDir("failingSaveService");
     // do NOT create dir in order to force saving to fail
-    const QString ext = QString(GUI::Project::Util::projectFileExtension);
+    const QString ext = QString(GUI::Util::Project::projectFileExtension);
     const QString projectFileName(projectDir + "/document" + ext);
 
     std::unique_ptr<ProjectDocument> document(new ProjectDocument);