Added CMake and TravisCI
diff --git a/.gitignore b/.gitignore
index 259148f..03cb7bf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,3 +30,10 @@
 *.exe
 *.out
 *.app
+
+# Build Folders
+build
+dist
+
+# Coveralls repo token
+.coveralls.yml
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..fa7015e
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,20 @@
+#########################
+# project configuration #
+#########################
+
+language: cpp
+
+# dist: trusty
+
+compiler:
+  - gcc
+before_install:
+  - pip install --user cpp-coveralls
+script:
+  - mkdir -p build && cd build
+  - cmake .. && cmake --build . --config Release -- -j4
+  - ctest -C Release -V
+  - cd ..
+#  - ./configure --enable-gcov && make && make check
+#after_success:
+#  - coveralls --exclude lib --exclude tests --gcov-options '\-lp'
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..6aff159
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,38 @@
+cmake_minimum_required(VERSION 3.1)
+
+##
+## PROJECT
+## name and version
+##
+project(inja)
+
+##
+## OPTIONS
+##
+option(BUILD_UNIT_TESTS "Build the unit tests" ON)
+
+##
+## CONFIGURATION
+##
+set(CMAKE_CXX_STANDARD 14)
+set(INJA_SOURCE_DIR src/)
+set(INJA_HEADER_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dist)
+
+##
+## TESTS
+## create and configure the unit test target
+##
+if(BUILD_UNIT_TESTS)
+    enable_testing()
+    # include_directories(${NLOHMANN_JSON_SOURCE_DIR})
+    add_subdirectory(test)
+endif()
+
+##
+## INSTALL
+## install header files, generate and install cmake config files for find_package()
+##
+install(
+    DIRECTORY ${INJA_SOURCE_DIR}
+    DESTINATION ${INJA_HEADER_INSTALL_DIR}
+)
diff --git a/README.md b/README.md
index 7ac3a85..70ed4e5 100644
--- a/README.md
+++ b/README.md
@@ -2,5 +2,7 @@
 
 A Template Engine for Modern C++
 
+[![Build Status](https://travis-ci.org/pantor/inja.svg?branch=master)](https://travis-ci.org/pantor/inja)
+[![Coverage Status](https://img.shields.io/coveralls/pantor/inja.svg)](https://coveralls.io/r/pantor/inja)
 [![Github Issues](https://img.shields.io/github/issues/pantor/inja.svg)](http://github.com/pantor/inja/issues)
 [![GitHub License](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/pantor/inja/master/LICENSE.MIT)
\ No newline at end of file
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
new file mode 100644
index 0000000..1c85a5f
--- /dev/null
+++ b/test/CMakeLists.txt
@@ -0,0 +1,13 @@
+# Prepare "Catch" library for other executables
+set(CATCH_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty)
+add_library(Catch INTERFACE)
+target_include_directories(Catch INTERFACE ${CATCH_INCLUDE_DIR})
+
+set(UNITTEST_TARGET_NAME "inja_unit")
+set(TEST_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/test.cpp)
+add_executable(${UNITTEST_TARGET_NAME} ${TEST_SOURCES})
+target_link_libraries(${UNITTEST_TARGET_NAME} Catch)
+
+add_test(NAME "${UNITTEST_TARGET_NAME}_default"
+	COMMAND ${UNITTEST_TARGET_NAME}
+)
\ No newline at end of file
diff --git a/test/src/test b/test/src/test
deleted file mode 100755
index edd1af8..0000000
--- a/test/src/test
+++ /dev/null
Binary files differ