diff --git a/CMakeLists.txt b/CMakeLists.txt
index d59130262522285af073eee386d6272221f3d838..aa0ad581dd257609e2d9a920190dcadd571245f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -68,6 +68,7 @@ add_library(common_lib STATIC ${COMMON_SOURCES})
 
 target_include_directories(common_lib PUBLIC
     ${CMAKE_CURRENT_SOURCE_DIR}/src           # For src/*.h if needed
+    ${CMAKE_CURRENT_SOURCE_DIR}/src/settings           # For src/*.h if needed
     /usr/local/cuda/include                   # CUDA include directory
     ${OPENGL_INCLUDE_DIRS}
     ${GLEW_INCLUDE_DIRS}
diff --git a/src/Camera.cpp b/src/Camera.cpp
index 7437fafe7f7ec86a42ff218ea69e9fef19beea77..eab52c4e2ce340f50730fe8e740d07357c3620f3 100644
--- a/src/Camera.cpp
+++ b/src/Camera.cpp
@@ -1,5 +1,5 @@
 // Camera.cpp
-#include "Camera.h"
+#include "include/Camera.h"
 #include <cstdio>
 #include <cstdlib>
 
diff --git a/src/GUI_fluid_sim.cpp b/src/GUI_fluid_sim.cpp
index 22b212b5bbbf247a9184ce7d0a3a96753c94fe3b..5ffb22f2f225857965bbe3cf8a5589f6b6c6a5d5 100644
--- a/src/GUI_fluid_sim.cpp
+++ b/src/GUI_fluid_sim.cpp
@@ -16,10 +16,10 @@
 #include "imgui_impl_glfw.h"     // Use the GLFW backend
 #include "imgui_impl_opengl3.h"  // Use the OpenGL3 backend
 
-#include "PCISPH_sim.h" // Header for CUDA function declarations
-#include "spawn_particles.h"
-#include "Camera.h"
-#include "constants.h"
+#include "include/PCISPH_sim.h" // Header for CUDA function declarations
+#include "include/spawn_particles.h"
+#include "include/Camera.h"
+#include "settings/constants.h"
 
 #define MAIN
 #include "VectorUtils4.h"
diff --git a/src/Camera.h b/src/include/Camera.h
similarity index 100%
rename from src/Camera.h
rename to src/include/Camera.h
diff --git a/src/PCISPH_sim.h b/src/include/PCISPH_sim.h
similarity index 100%
rename from src/PCISPH_sim.h
rename to src/include/PCISPH_sim.h
diff --git a/src/spawn_particles.h b/src/include/spawn_particles.h
similarity index 100%
rename from src/spawn_particles.h
rename to src/include/spawn_particles.h
diff --git a/src/itterative_PCISPH.cu b/src/itterative_PCISPH.cu
index 6ab2f69723b038957fd576160b2da81bfd250284..f4cc0bb7950643832e26b09fdf443af19a730fd9 100644
--- a/src/itterative_PCISPH.cu
+++ b/src/itterative_PCISPH.cu
@@ -1,7 +1,7 @@
 // kernels_cuda_pcisph.cu
 
-#include "PCISPH_sim.h"
-#include "constants.h"
+#include "include/PCISPH_sim.h"
+#include "settings/constants.h"
 #include "include/float3_helper_math.h"
 #include <cuda_runtime.h>
 #include <cuda_gl_interop.h>
diff --git a/src/constants.h b/src/settings/constants.h
similarity index 100%
rename from src/constants.h
rename to src/settings/constants.h
diff --git a/src/spawn_particles.cpp b/src/spawn_particles.cpp
index e44807043c604579f1ad03170d2b0811b9e73353..98ddfaffd985d144f856f1d66b21cb6987f0e51a 100644
--- a/src/spawn_particles.cpp
+++ b/src/spawn_particles.cpp
@@ -1,5 +1,5 @@
 // spawn_particles.cpp
-#include "spawn_particles.h"
+#include "include/spawn_particles.h"
 #include "constants.h"
 
 #include <cmath>          // For std::pow