diff --git a/.env b/.env
new file mode 100644
index 0000000..52ab7eb
--- /dev/null
+++ b/.env
@@ -0,0 +1 @@
+FEITCSI_VERSION=1.1.0
\ No newline at end of file
diff --git a/Makefile b/Makefile
index e1828d2..1ebfe47 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,8 @@
+include .env
+
+# Variables
+CDEFS += -DFEITCSI_VERSION="\"${FEITCSI_VERSION}"\"
+
# Target
BIN_DIR = bin
BIN = $(BIN_DIR)/app
@@ -19,7 +24,7 @@ INCLUDE_LIB_DIRS =
INCLUDE_LIB = $(foreach includedir,$(INCLUDE_LIB_DIRS),-L$(includedir))
# Set compiler, preprocesor and linker flags
-CXXFLAGS += -g -O3 -Wall -std=c++17 $(INCLUDE)
+CXXFLAGS += -g -O3 -Wall -std=c++17 $(CDEFS) $(INCLUDE)
CPPFLAGS += `pkg-config --cflags gtkmm-3.0 libnl-3.0 libnl-genl-3.0 libpcap`
LDFLAGS += $(INCLUDE_LIB)
LDLIBS += `pkg-config --libs gtkmm-3.0 libnl-3.0 libnl-genl-3.0 libpcap`
diff --git a/include/Arguments.h b/include/Arguments.h
new file mode 100644
index 0000000..1e28396
--- /dev/null
+++ b/include/Arguments.h
@@ -0,0 +1,98 @@
+/*
+ * FeitCSI is the tool for extracting CSI information from supported intel NICs.
+ * Copyright (C) 2024 Miroslav Hutar.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef ARGUMENTS_PARSER_H
+#define ARGUMENTS_PARSER_H
+
+#include
+#include
+#include