(developer)=
# Developer 

Welcome to the BEC Widgets developer guide! BEC Widgets is a framework for building graphical user interfaces (GUIs) for [BEC](https://bec.readthedocs.io/en/latest/), a Python package for beamline experiment control.

This guide targets readers who want to develop new widgets or extend existing ones. If your goal is to use BEC Widgets to build GUIs for your experiments, please refer to the [user guide](#user).

```{toctree}
---
maxdepth: 2
hidden: true
---

introduction/introduction.md
widget_development/widget_development.md
api_reference/api_reference.md
```


***

````{grid} 2
:gutter: 5

```{grid-item-card}
:link: developer.introduction
:link-type: ref
:img-top: /assets/rocket_launch_48dp.svg
:text-align: center
:class-item: index-card

## Introduction

An introduction into the single-resposibility principle and the modular design of BEC Widgets.
```

```{grid-item-card}
:link: developer.widget_development
:link-type: ref
:img-top: /assets/apps_48dp.svg
:text-align: center
:class-item: index-card

## Widget Development

Learn how to develop a new modular widget for BEC Widgets.
```

````{grid} 2



