diff --git a/include/c11log/common.h b/include/c11log/common.h
new file mode 100644
index 0000000000000000000000000000000000000000..a33730f77665b610008d3c6b8807f8a583c0e521
--- /dev/null
+++ b/include/c11log/common.h
@@ -0,0 +1,27 @@
+#pragma once
+
+namespace c11log
+{
+
+using log_clock = std::chrono::system_clock;
+namespace level
+{
+typedef enum
+{
+    TRACE,
+    DEBUG,
+    INFO,
+    WARNING,
+    ERROR,
+    CRITICAL,
+    FATAL,
+    NONE = 99
+} level_enum;
+
+static const char* level_names[] { "trace", "debug", "info", "warning", "error", "critical", "fatal" };
+inline const char* to_str(c11log::level::level_enum l)
+{
+    return level_names[l];
+}
+} //level
+} //c11log
diff --git a/include/c11log/details/factory.h b/include/c11log/factory.h
similarity index 100%
rename from include/c11log/details/factory.h
rename to include/c11log/factory.h