aboutsummaryrefslogtreecommitdiff
path: root/script/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'script/helpers')
-rw-r--r--script/helpers/function_helpers67
-rw-r--r--script/helpers/text_helpers32
2 files changed, 99 insertions, 0 deletions
diff --git a/script/helpers/function_helpers b/script/helpers/function_helpers
new file mode 100644
index 0000000..388fa67
--- /dev/null
+++ b/script/helpers/function_helpers
@@ -0,0 +1,67 @@
+#!/usr/bin/env bash
+
+# This file contains a set of functions used as helpers
+# for various tasks. Read the examples for each one for
+# more information. Feel free to put any additional helper
+# functions you may need for your app
+
+
+# Returns true if the command $1 is not found
+# example:
+# if command_not_found "yarn"; then
+# echo "no yarn"
+# fi
+command_not_found() {
+ ! command -v $1 > /dev/null
+ return $?
+}
+
+# Returns true if the command $1 is not running
+# You must supply the full command to check as an argument
+# example:
+# if command_not_running "redis-cli ping"; then
+# print_error "Redis is not running"
+# fi
+command_not_running() {
+ $1
+ if [ $? -ne 0 ]; then
+ true
+ else
+ false
+ fi
+}
+
+# Returns true if the OS is macOS
+# example:
+# if is_mac; then
+# echo "do mac stuff"
+# fi
+is_mac() {
+ if [[ "$OSTYPE" == "darwin"* ]]; then
+ true
+ else
+ false
+ fi
+}
+
+# Returns true if the OS is linux based
+# example:
+# if is_linux; then
+# echo "do linux stuff"
+# fi
+is_linux() {
+ if [[ "$OSTYPE" == "linux"* ]]; then
+ true
+ else
+ false
+ fi
+}
+
+# Prints error and exit.
+# example:
+# print_error "Redis is not running. Run it with some_command"
+print_error() {
+ printf "${BOLD_RED_COLOR}There is a problem with your system setup:\n\n"
+ printf "${BOLD_RED_COLOR}$1 \n\n" | indent
+ exit 1
+}
diff --git a/script/helpers/text_helpers b/script/helpers/text_helpers
new file mode 100644
index 0000000..34b77a8
--- /dev/null
+++ b/script/helpers/text_helpers
@@ -0,0 +1,32 @@
+#!/usr/bin/env bash
+
+# This file contains a set of functions used to format text,
+# and make printing text a little easier. Feel free to put
+# any additional functions you need for formatting your shell
+# output text.
+
+# Colors
+BOLD_RED_COLOR="\e[1m\e[31m"
+
+# Indents the text 2 spaces
+# example:
+# printf "Hello" | indent
+indent() {
+ while read LINE; do
+ echo " $LINE" || true
+ done
+}
+
+# Prints out an arrow to your custom notice
+# example:
+# notice "Installing new magic"
+notice() {
+ printf "\n▸ $1\n"
+}
+
+# Prints out a check mark and Done.
+# example:
+# print_done
+print_done() {
+ printf "✔ Done\n" | indent
+}