diff --git a/docs/annotations/graphelement.md b/docs/annotations/graphelement.md
new file mode 100644
index 0000000000000000000000000000000000000000..e57a012f355335b1afed37093f2daca46aa9bf17
--- /dev/null
+++ b/docs/annotations/graphelement.md
@@ -0,0 +1,13 @@
+Valid on frames: **Edge** and **vertex**
+
+The `@GraphElement` annotation takes no parameters and is placed before your class decleration on an `EdgeFrame` or
+`VertexFrame`. This annotation is mostly leveraged right now when scanning classes in a package to identify frames.
+
+example:
+
+```java
+@GraphElement
+public interface FooVertex extends VertexFrame {
+    //Methods goes here
+}
+```
diff --git a/mkdocs.yml b/mkdocs.yml
index 882c2633563f339a8c919e81664c9079c7e071e8..f36ab9226f8c41aa7dc85802352d14d0b6fa5f66 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -15,6 +15,7 @@ pages:
     - Core Annotations:
         - Overview: annotations/overview.md
         - '@Adjacency': annotations/adjacency.md
+        - '@GraphElement': annotations/graphelement.md
         - '@Incidence': annotations/incidence.md
         - '@Property': annotations/property.md
     - Glossary: glossary.md