diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..b521ff5
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,62 @@
+message ("-------------------------------------------")
+message ("-       setting up nixview build          -")
+message ("-------------------------------------------")
+
+cmake_minimum_required ( VERSION 3.7 )
+set ( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake" )
+
+project( recorder VERSION 0.1.0 LANGUAGES CXX )
+
+configure_file( recorder_config.h.in rutorial_config.h )
+
+include_directories (${CMAKE_BINARY_DIR})
+
+set( CMAKE_CXX_STANDARD 11 )
+set( CMAKE_CXX_STANDARD_REQUIRED ON )
+
+########################################
+# Qt5
+message ("=> finding qt modules ...")
+
+find_package (Qt5 COMPONENTS Widgets Core Gui REQUIRED)
+find_package (Qt5PrintSupport QUIET)
+
+include_directories (BEFORE
+  ${Qt5Core_INCLUDE_DIRS}
+  ${Qt5Widgets_INCLUDE_DIRS}
+  ${Qt5Gui_INCLUDE_DIRS}
+  ${Qt5PrintSupport_INCLUDE_DIRS})
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+set (CMAKE_INCLUDE_CURRENT_DIR ON)
+add_definitions (${Qt5Core_DEFINITIONS})
+file (GLOB RECORDER_RES *.qrc)
+QT5_ADD_RESOURCES (RECORDER_RES_SOURCES ${RECORDER_RES})
+
+########################################
+# NIX
+message ("=> finding nix ...")
+find_package (NIX REQUIRED)
+include_directories (AFTER ${NIX_INCLUDE_DIR})
+
+#######################################
+# Pylon
+include_directories ( AFTER "/opt/pylon5/include" )
+file (GLOB PYLON_LIBRARIES "/opt/pylon5/lib64/*.so")
+
+file (GLOB RECORDER_SOURCES *.cpp)
+file (GLOB RECORDER_INCLUDES *.hpp) 
+
+
+add_executable ( recorder ${RECORDER_SOURCES} ${RECORDER_INCLUDES} ${RECORDER_RES_SOURCES} )
+target_include_directories ( recorder PUBLIC "${PROJECT_BINARY_DIR}" )  
+target_link_libraries ( recorder Qt5::PrintSupport Qt5::Core Qt5::Widgets Qt5::Gui ${NIX_LIBRARIES} ${PYLON_LIBRARIES})
+
+# QT5_WRAP_UI (NIXVIEW_UI_HDRS ${NIXVIEW_UI})
+
+
+
+
+
diff --git a/cmake/FindNIX.cmake b/cmake/FindNIX.cmake
new file mode 100644
index 0000000..543564b
--- /dev/null
+++ b/cmake/FindNIX.cmake
@@ -0,0 +1,30 @@
+# - Try to find NIX
+# Once done this will define
+#  NIX_FOUND - System has Nix
+#  NIX_INCLUDE_DIRS - The Nix include directories
+#  NIX_LIBRARIES - The libraries needed to use Nix
+
+
+find_path(NIX_INCLUDE_DIR nix.hpp
+    HINTS $ENV{NIX_ROOT}/include
+    /usr/local/include
+    /usr/include
+    PATH_SUFFIXES nix)
+
+find_library(NIX_LIBRARY NAMES nix libnix
+  HINTS ${NIX_INCLUDE_DIR}/../lib
+  HINTS ${NIX_INCLUDE_DIR}/../build
+  /usr/local/lib
+  /usr/lib)
+
+set(NIX_LIBRARIES ${NIX_LIBRARY})
+set(NIX_INCLUDE_DIRS ${NIX_INCLUDE_DIR})
+
+include(FindPackageHandleStandardArgs)
+# handle the QUIETLY and REQUIRED arguments and set NIX_FOUND to TRUE
+# if all listed variables are TRUE
+find_package_handle_standard_args(Nix DEFAULT_MSG
+  NIX_LIBRARY NIX_INCLUDE_DIR)
+
+mark_as_advanced(NIX_INCLUDE_DIR NIX_LIBRARY)
+