diff --git a/geissonator/LICENSE b/geissonator/LICENSE
new file mode 100644
index 0000000..cf1ab25
--- /dev/null
+++ b/geissonator/LICENSE
@@ -0,0 +1,24 @@
+This is free and unencumbered software released into the public domain.
+
+Anyone is free to copy, modify, publish, use, compile, sell, or
+distribute this software, either in source code form or as a compiled
+binary, for any purpose, commercial or non-commercial, and by any
+means.
+
+In jurisdictions that recognize copyright laws, the author or authors
+of this software dedicate any and all copyright interest in the
+software to the public domain. We make this dedication for the benefit
+of the public at large and to the detriment of our heirs and
+successors. We intend this dedication to be an overt act of
+relinquishment in perpetuity of all present and future rights to this
+software under copyright law.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+For more information, please refer to <http://unlicense.org>
diff --git a/geissonator/format-yaml b/geissonator/format-yaml
new file mode 100644
index 0000000..2ad8ddc
--- /dev/null
+++ b/geissonator/format-yaml
@@ -0,0 +1,16 @@
+#!/usr/bin/python3
+
+# Copyright 2019 IBM Corp.
+
+import yaml
+from argparse import ArgumentParser
+
+if __name__ == '__main__':
+    # A simple program to ensure proper indents of input yaml file
+    parser = ArgumentParser(description="YAML formatter")
+    parser.add_argument('-f', '--file', dest='file_yaml',
+                        help='yaml file to format')
+    args = parser.parse_args()
+
+    print(yaml.dump(yaml.load(open(args.file_yaml),
+                              Loader=yaml.FullLoader), indent=4))
