diff --git a/store.hpp b/store.hpp
index d5e0d72..c184e37 100644
--- a/store.hpp
+++ b/store.hpp
@@ -3,6 +3,7 @@
 #include "defines.hpp"
 #include "types.hpp"
 
+#include <iostream>
 #include <string>
 #include <unordered_map>
 
@@ -64,6 +65,22 @@
         return vpd.count(record) && vpd.at(record).count(keyword);
     }
 
+    /** @brief Displays all data in the store to stdout
+     */
+    void dump() const
+    {
+        for (auto const& [vpdname, avpd] : vpd)
+        {
+            std::cout << vpdname << ": " << std::endl;
+
+            for (auto const& [key, val] : avpd)
+            {
+
+                std::cout << "\t" << key << " : " << val << std::endl;
+            }
+        }
+    }
+
   private:
     /** @brief The store for parsed VPD */
     Parsed vpd;
