diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..dedd3c7
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,16 @@
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+indent_size = 4
+indent_style = space
+insert_final_newline = false
+max_line_length = 120
+tab_width = 4
+
+[{*.yaml,*.yml}]
+indent_size = 2
+
+[{*.kt,*.kts}]
+ij_kotlin_packages_to_use_import_on_demand = org.junit.jupiter.api,aws.sdk.kotlin.services.s3,kotlinx.coroutines,java.io,ziputils
\ No newline at end of file
diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
new file mode 100644
index 0000000..2b63946
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
\ No newline at end of file
diff --git a/README.md b/README.md
index 77764dd..6109775 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,64 @@ an AWS S3 bucket.
This tool is released as a JAR in the [release page](https://git.koval.net/cyclane/teamcity-executors-test-task/releases).
Use `java -jar .jar --help` for more detailed usage instructions.
+### --help
+```
+Usage: s3backup-tool [] []...
+
+ A simple AWS S3 backup tool. This tool assumes credentials are properly configured using aws-cli.
+
+Options:
+ -h, --help Show this message and exit
+
+Commands:
+ create Create a backup of a file or directory.
+ restore Restore a backup from AWS S3.
+ restore-file Restore a single file from a backup from AWS S3.
+```
+
+#### Subcommands
+```
+Usage: s3backup-tool create []