diff --git a/sysdata/libraries/horizon_api/examples/horizontal.lui b/sysdata/libraries/horizon_api/examples/horizontal.lui
new file mode 100644
index 0000000..8954780
--- /dev/null
+++ b/sysdata/libraries/horizon_api/examples/horizontal.lui
@@ -0,0 +1,4 @@
+(horizontal
+    spacing : 10
+    (label "hi")
+    (label "goodbye"))
\ No newline at end of file
diff --git a/sysdata/libraries/horizon_api/src/widgets/image.hb b/sysdata/libraries/horizon_api/src/widgets/image.hb
new file mode 100644
index 0000000..faa0d99
--- /dev/null
+++ b/sysdata/libraries/horizon_api/src/widgets/image.hb
@@ -0,0 +1,5 @@
+Image := struct {
+	magic: uint,
+	is_dirty: bool,
+	surface: Surface,
+}
\ No newline at end of file
diff --git a/sysdata/libraries/horizon_api/src/widgets/widget_types.hb b/sysdata/libraries/horizon_api/src/widgets/widget_types.hb
index 9755ec8..97ddcb8 100644
--- a/sysdata/libraries/horizon_api/src/widgets/widget_types.hb
+++ b/sysdata/libraries/horizon_api/src/widgets/widget_types.hb
@@ -1,4 +1,7 @@
+NoWidget := 0
+
 VerticalWidgetType := 1
 HorizontalWidgetType := 2
 
-LabelWidgetType := 3
\ No newline at end of file
+LabelWidgetType := 3
+ImageWidgetType := 4
\ No newline at end of file
diff --git a/sysdata/libraries/horizon_api/src/widgets/widgets.hb b/sysdata/libraries/horizon_api/src/widgets/widgets.hb
index 360b994..cb15cbb 100644
--- a/sysdata/libraries/horizon_api/src/widgets/widgets.hb
+++ b/sysdata/libraries/horizon_api/src/widgets/widgets.hb
@@ -11,6 +11,7 @@ render := @use("../../../../libraries/render/src/lib.hb");
 
 widget_types := @use("widget_types.hb")
 label := @use("label.hb")
+image := @use("image.hb")
 
 Size := struct {
 	min_width: int,