diff --git a/Toolbox.ts b/Toolbox.ts
new file mode 100644
index 0000000000000000000000000000000000000000..3ab7a19edabdf47bf80a8932c5e082701fac5e2e
--- /dev/null
+++ b/Toolbox.ts
@@ -0,0 +1,44 @@
+class Toolbox {
+    private static _instance: Toolbox;
+
+    private constructor() { }
+
+    public static get instance(): Toolbox {
+        if ( !Toolbox._instance ) {
+            Toolbox._instance = new Toolbox();
+        }
+
+        return Toolbox._instance;
+    }
+
+    public randomString(length: number) {
+        let result = '';
+        let characters = 'abcdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789';
+        let charactersLength = characters.length;
+        for ( let i = 0 ; i < length ; i++ ) {
+            result += characters.charAt(Math.floor(Math.random() * charactersLength));
+        }
+        return result;
+    }
+
+    public capitalizingFirstLetter(word: string): string {
+        return word.charAt(0).toUpperCase() + word.slice(1);
+    }
+
+    public capitalizeName(name: string) {
+        return name.trim().replace(/(?:^|\s|-)\S/g, s => s.toUpperCase());
+    }
+
+    public formatHour(hour: string): string {
+        let hourElements = hour.split(':');
+
+        return hourElements[0] + 'h' + hourElements[1];
+    }
+
+    public async sleep(ms: number) {
+        await new Promise(r => setTimeout(r, ms));
+    }
+}
+
+
+export default Toolbox.instance;