diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..aa1150672422c49128f521786f8a5747d6063dc8
--- /dev/null
+++ b/example/CMakeLists.txt
@@ -0,0 +1,9 @@
+project(example)
+cmake_minimum_required(VERSION 3.17 FATAL_ERROR)
+
+find_package(CUDAToolkit REQUIRED)
+find_package(cudawrappers REQUIRED)
+find_package(libtcc REQUIRED)
+
+add_executable(${PROJECT_NAME} example.cpp)
+target_link_libraries(${PROJECT_NAME} tcc cudawrappers::cu cudawrappers::nvrtc)
\ No newline at end of file
diff --git a/example/example.cpp b/example/example.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..10e5660ae2689b0a37c1df29cf085d99a994561b
--- /dev/null
+++ b/example/example.cpp
@@ -0,0 +1,21 @@
+#include <iostream>
+
+#include <cudawrappers/cu.hpp>
+#include <libtcc/Correlator.h>
+
+#define NR_BITS 8
+#define NR_CHANNELS 480
+#define NR_POLARIZATIONS 2
+#define NR_SAMPLES_PER_CHANNEL 3072
+#define NR_RECEIVERS 576
+#define NR_RECEIVERS_PER_BLOCK 64
+
+int main(int argc, char *argv[]) {
+  cu::init();
+  cu::Device device(0);
+  cu::Context context(0, device);
+  context.setCurrent();
+  tcc::Correlator correlator(NR_BITS, NR_RECEIVERS, NR_CHANNELS,
+                             NR_SAMPLES_PER_CHANNEL, NR_POLARIZATIONS,
+                             NR_RECEIVERS_PER_BLOCK);
+}
\ No newline at end of file