diff --git a/starshot_demo/components/01-atoms/button/button.component.yml b/starshot_demo/components/01-atoms/button/button.component.yml
new file mode 100644
index 0000000000000000000000000000000000000000..eaaa625f41aa979813a39842a93e11b6725bdc53
--- /dev/null
+++ b/starshot_demo/components/01-atoms/button/button.component.yml
@@ -0,0 +1,104 @@
+name: Button
+
+status: experimental
+
+group: Atoms
+
+props:
+
+  type: object
+
+  required:
+  - text
+
+  properties:
+
+    theme:
+      type: string
+      title: Theme
+      description: 'Theme: light, dark.'
+      default: light
+      enum:
+      - light
+      - dark
+
+    kind:
+      type: string
+      title: Button kind
+      description: 'Button kind: submit, reset, button, link.'
+      default: button
+      enum:
+      - submit
+      - reset
+      - button
+      - link
+
+    type:
+      type: string
+      title: Button type
+      description: 'Button type: primary, secondary, tertiary.'
+      default: null
+      enum:
+      - primary
+      - secondary
+      - tertiary
+
+    size:
+      type: string
+      title: Button size
+      description: 'Button size: large, regular, small.'
+      default: regular
+      enum:
+      - large
+      - regular
+      - small
+
+    icon:
+      type: string
+      title: Icon
+      description: Icon name.
+
+    icon_placement:
+      type: string
+      title: Icon placement
+      description: 'Icon position: before, after'
+      default: after
+      enum:
+      - before
+      - after
+
+    text:
+      type: string
+      title: Button text
+      description: Button text.
+
+    url:
+      type: string
+      title: Url
+      description: URL for the link button.
+
+    allow_html:
+      type: boolean
+      title: Allow HTML in text.
+
+    is_new_window:
+      type: boolean
+      title: Open in a new window or not.
+
+    is_external:
+      type: boolean
+      title: If link is external or not.
+
+    is_disabled:
+      type: boolean
+      title: Disabled or not.
+
+    attributes:
+      type: string
+      title: Attributes
+      description: Additional attributes.
+
+    modifier_class:
+      type: string
+      title: Modifier class
+      description: Additional classes.