diff --git a/pyswiftsim/dev.py b/pyswiftsim/dev.py
new file mode 100644
index 0000000000000000000000000000000000000000..6646ecf4235022217387f0775c6fdf17ad3dd730
--- /dev/null
+++ b/pyswiftsim/dev.py
@@ -0,0 +1,69 @@
+#!/usr/bin/env python3
+
+symbol_table = {
+    " int ": "i",
+    " double ": "d",
+    " char ": "c",
+}
+
+def _generateFormatString(filename):
+    """
+    Open a file containing a single struct and generate a format string
+    from it. (for dev, no guarantee of working).
+    """
+
+    struct_format = ""
+    struct_attribute = []
+    
+    with open(filename, "r") as f:
+        line = ""
+        # skip until reaching struct
+        while ("struct" not in line):
+            line = f.readline()
+
+        count = 0
+        in_struct = False
+
+        while (not in_struct or count != 0):
+            # count { and }
+            count += line.count("{")
+            if (count > 0):
+                in_struct = True
+            count -= line.count("}")
+            line = f.readline()
+
+            for k in symbol_table.keys():
+                if k not in line:
+                    continue
+
+                i = line.index(k) + len(k)
+
+                if (line[i] == "*"):
+                    struct_format += "p"
+                    i += 1
+                else:
+                    struct_format += symbol_table[k]
+
+                j = line.index(";")
+                struct_attribute.append(line[i:j])
+                
+
+    return struct_format, struct_attribute
+
+            
+if __name__ == "__main__":
+
+    filename = "chemistry_data.h"
+    struct_format, struct_attribute = _generateFormatString(filename)
+
+    attr = "[\n"
+    for i in struct_attribute:
+        attr += "\t'%s',\n" % i
+    attr += "]"
+        
+    txt = """
+    _format = "{form}"
+    _name = {attr}
+    """.format(attr=attr,
+               form=struct_format)
+    print(txt)