diff --git a/.gitignore b/.gitignore
index ef18ef29c682c0c471e5ecc4c974c7f9fe602763..c970c0ef7370d24590b25d9e42386114300323f3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,5 +21,8 @@ dist
 htmlcov
 coverage.xml                
 
+# cmake
+CMakeUserPresets.json
+
 # scratch
 scratch
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bab7c8fd4560a1c0e8359d6ba0cb4e7307468d02..f02698b2367f48d4ba691fe4eb82bb4d86451eab 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,9 @@
 cmake_minimum_required( VERSION 3.24 )
 project ( sfg-walberla )
 
-SET ( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake )
+option( SFG_WALBERLA_BUILD_EXAMPLES "Build sfg-walberla's examples" OFF )
+
+list (APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake )
 find_package( PystencilsSfg REQUIRED )
 
 add_library( sfg_walberla INTERFACE )
@@ -17,3 +19,7 @@ target_link_libraries(
     INTERFACE
     core stencil domain_decomposition blockforest field
 )
+
+if( ${SFG_WALBERLA_BUILD_EXAMPLES} )
+    add_subdirectory( examples )
+endif()
\ No newline at end of file
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..4b5db3b76b7a52820daf841c285ac8cc65d77167
--- /dev/null
+++ b/examples/CMakeLists.txt
@@ -0,0 +1,8 @@
+include(FetchContent)
+
+FetchContent_Declare(
+    walberla
+    GIT_REPOSITORY https://i10git.cs.fau.de/walberla/walberla.git
+)
+
+FetchContent_MakeAvailable(walberla)