diff --git a/docs/.vuepress/components/BmcToasts.vue b/docs/.vuepress/components/BmcToasts.vue
new file mode 100644
index 0000000..15a480f
--- /dev/null
+++ b/docs/.vuepress/components/BmcToasts.vue
@@ -0,0 +1,36 @@
+<template>
+    <div>
+        <b-button variant="success" @click="makeSuccessToast()">Show Success</b-button>
+        <b-button variant="danger" @click="makeErrorToast()">Show Error</b-button>
+        <b-button variant="warning" @click="makeWarningToast()">Show Warning</b-button>
+        <b-button variant="info" @click="makeInfoToast()">Show Info</b-button>
+    </div>
+</template>
+
+<script>
+import BVToastMixin from '../../../src/components/Mixins/BVToastMixin';
+export default {
+    name: 'BmcToasts',
+    mixins: [BVToastMixin],
+    methods: {
+        makeSuccessToast() {
+            this.successToast('This is a success toast and will be dismissed after 10 seconds.');
+        },
+        makeErrorToast() {
+            this.errorToast('This is an error toast and must be dismissed by the user.');
+        },
+        makeWarningToast() {
+            this.warningToast('This is a warning toast and must be dismissed by the user.');
+        },
+        makeInfoToast() {
+            this.infoToast('This is an info toast and must be dismissed by the user.');
+        },
+    }
+}
+</script>
+<style scoped>
+    button {
+        margin-right: .5rem;
+        margin-bottom: 1rem;
+    }
+</style>
\ No newline at end of file
diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js
index 2be074e..680c98e 100644
--- a/docs/.vuepress/config.js
+++ b/docs/.vuepress/config.js
@@ -45,6 +45,7 @@
             children: [
             "/guide/components/",
             "/guide/components/button",
+            "/guide/components/toast",
           ]
           }
         ],
diff --git a/docs/.vuepress/enhanceApp.js b/docs/.vuepress/enhanceApp.js
index 59c1f92..799cf20 100644
--- a/docs/.vuepress/enhanceApp.js
+++ b/docs/.vuepress/enhanceApp.js
@@ -1,10 +1,19 @@
 
+// OpenBMC Imports
 import "../../src/assets/styles/_obmc-custom.scss";
+import BVToastMixin from "../../src/components/Mixins/BVToastMixin";
+
+// Bootstrap-vue Plugin imports
 import {
-    ButtonPlugin
+    ButtonPlugin,
+    ToastPlugin
   } from 'bootstrap-vue';
 
 
 export default ({ Vue }) => {
       Vue.use(ButtonPlugin);
+      Vue.use(ToastPlugin);
+
+      // BMC Components and Mixins
+      Vue.mixin('BVToastMixin', BVToastMixin);
 }
\ No newline at end of file
diff --git a/docs/guide/components/toast.md b/docs/guide/components/toast.md
new file mode 100644
index 0000000..5dc2e0e
--- /dev/null
+++ b/docs/guide/components/toast.md
@@ -0,0 +1,32 @@
+# Toasts
+Use a toast message to indicate the status of a user action. For example, a user saves a form successfully, a toast message with the `success` variant is displayed.  If the user action was not successful, a toast message with the `danger` variant is displayed.
+
+There are different transitions for the toast messages. The `success` toast message will auto-hide after 10 seconds. The user must manually dismiss the `informational`, `warning`, and `error` toast messages.  The `BVToastMixin` provides a simple API that generates a toast message that meets the transition guidelines.
+
+<BmcToasts />
+
+```js{5}
+// Sample method from Reboot BMC page
+rebootBmc() {
+  this.$store
+  .dispatch('controls/rebootBmc')
+  .then(message => this.successToast(message))
+  .catch(({ message }) => this.errorToast(message));
+}
+
+// Methods used in this example
+methods: {
+  makeSuccessToast() {
+    this.successToast('This is a success toast and will be dismissed after 10 seconds.');
+  },
+  makeErrorToast() {
+    this.errorToast('This is an error toast and must be dismissed by the user.');
+  },
+  makeWarningToast() {
+    this.warningToast('This is a warning toast and must be dismissed by the user.');
+  },
+  makeInfoToast() {
+    this.infoToast('This is an info toast and must be dismissed by the user.');
+  },
+}
+```
\ No newline at end of file
