> For the complete documentation index, see [llms.txt](https://learn.squirrel365.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.squirrel365.io/squirrel-addon-documentation/tableofcontents.md).

# Table of contents

* [Introduction](/squirrel-addon-documentation/readme.md)
  * [Joining the Developer Program](/squirrel-addon-documentation/introduction/joining-the-developer-program.md)
* [Building an addon](/squirrel-addon-documentation/building-an-addon.md)
  * [Communication](/squirrel-addon-documentation/building-an-addon/communication.md)
  * [Property Panel](/squirrel-addon-documentation/building-an-addon/property-panel.md)
    * [Property Panel Elements](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements.md)
      * [Accordion](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/accordion.md)
      * [Sub Accordion](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/sub-accordion.md)
      * [Input Box](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/input-box.md)
      * [Color Input](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/color-input.md)
      * [Text Label](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/text-label.md)
      * [Horizontal Line](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/horizontal-line.md)
      * [Checkbox](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/checkbox.md)
      * [Dropdown](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/dropdown.md)
      * [Radio Button](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/radio-button.md)
      * [Font](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/font.md)
      * [Series](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/series.md)
      * [Conditional Logic](/squirrel-addon-documentation/building-an-addon/property-panel/property-panel-elements/conditional-logic.md)
  * [Publishing an addon](/squirrel-addon-documentation/building-an-addon/publishing-an-addon.md)
    * [Add-on submission](/squirrel-addon-documentation/building-an-addon/publishing-an-addon/add-on-submission.md)
      * [Icon guidelines](/squirrel-addon-documentation/building-an-addon/publishing-an-addon/add-on-submission/icon-guidelines.md)
      * [Image guidelines](/squirrel-addon-documentation/building-an-addon/publishing-an-addon/add-on-submission/image-guidelines.md)
    * [Restricting private addons](/squirrel-addon-documentation/building-an-addon/publishing-an-addon/restricting-private-addons.md)
    * [The review process](/squirrel-addon-documentation/building-an-addon/publishing-an-addon/the-review-process.md)

## Squirrel Helper Library

* [Dot notation](/squirrel-addon-documentation/squirrel-helper-library/dot-notation.md)
* [Angular](/squirrel-addon-documentation/squirrel-helper-library/angular.md)
  * [Getting Started](/squirrel-addon-documentation/squirrel-helper-library/angular/getting-started.md)
    * [Building your first addon](/squirrel-addon-documentation/squirrel-helper-library/angular/getting-started/building-your-first-addon.md)
    * [The JSON files](/squirrel-addon-documentation/squirrel-helper-library/angular/getting-started/the-json-files.md)
    * [Sending and Receiving Data](/squirrel-addon-documentation/squirrel-helper-library/angular/getting-started/sending-and-receiving-data.md)
    * [Debugging](/squirrel-addon-documentation/squirrel-helper-library/angular/getting-started/debugging.md)
  * [Events](/squirrel-addon-documentation/squirrel-helper-library/angular/events.md)
    * [onInitState](/squirrel-addon-documentation/squirrel-helper-library/angular/events/oninitstate.md)
    * [onSetSize](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onsetsize.md)
    * [onSetPosition](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onsetposition.md)
    * [onSetRuntimeMode](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onsetruntimemode.md)
    * [onSetCanvas](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onsetcanvas.md)
    * [onPropertyChange](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onpropertychange.md)
    * [onPropertyChangesComplete](/squirrel-addon-documentation/squirrel-helper-library/angular/events/onpropertychangescomplete.md)
  * [Methods](/squirrel-addon-documentation/squirrel-helper-library/angular/methods.md)
    * [initWithSquirrel](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/initwithsquirrel.md)
    * [sendToSquirrel](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/sendtosquirrel.md)
    * [getBindingDimension](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getbindingdimension.md)
    * [getSize](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getsize.md)
    * [setSize](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/setsize.md)
    * [getPosition](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getposition.md)
    * [setPosition](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/setposition.md)
    * [getRuntimeMode](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getruntimemode.md)
    * [getCanvas](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getcanvas.md)
    * [getCopyOfState](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getcopyofstate.md)
    * [getGenericProperty](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/getgenericproperty.md)
    * [shadeColor](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/shadecolor.md)
    * [tintColor](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/tintcolor.md)
    * [parseColor](/squirrel-addon-documentation/squirrel-helper-library/angular/methods/parsecolor.md)
  * [Classes](/squirrel-addon-documentation/squirrel-helper-library/angular/classes.md)
    * [SquirrelMessage](/squirrel-addon-documentation/squirrel-helper-library/angular/classes/squirrelmessage.md)
    * [SquirrelSize](/squirrel-addon-documentation/squirrel-helper-library/angular/classes/squirrelsize.md)
    * [SquirrelPosition](/squirrel-addon-documentation/squirrel-helper-library/angular/classes/squirrelposition.md)
    * [SquirrelColor](/squirrel-addon-documentation/squirrel-helper-library/angular/classes/squirrelcolor.md)
    * [SquirrelCanvas](/squirrel-addon-documentation/squirrel-helper-library/angular/classes/squirrelcanvas.md)
* [React](/squirrel-addon-documentation/squirrel-helper-library/react.md)
  * [Coming Soon](/squirrel-addon-documentation/squirrel-helper-library/react/coming-soon.md)
* [JavaScript](/squirrel-addon-documentation/squirrel-helper-library/javascript.md)
  * [Getting Started](/squirrel-addon-documentation/squirrel-helper-library/javascript/getting-started.md)
    * [Building your first add-on](/squirrel-addon-documentation/squirrel-helper-library/javascript/getting-started/building-your-first-add-on.md)
    * [The JSON files](/squirrel-addon-documentation/squirrel-helper-library/javascript/getting-started/the-json-files.md)
    * [Sending and Receiving Data](/squirrel-addon-documentation/squirrel-helper-library/javascript/getting-started/sending-and-receiving-data.md)
    * [Debugging](/squirrel-addon-documentation/squirrel-helper-library/javascript/getting-started/debugging.md)
  * [Events](/squirrel-addon-documentation/squirrel-helper-library/javascript/events.md)
    * [onInitState](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/oninitstate.md)
    * [onSetSize](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onsetsize.md)
    * [onSetPosition](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onsetposition.md)
    * [onSetRuntimeMode](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onsetruntimemode.md)
    * [onSetCanvas](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onsetcanvas.md)
    * [onPropertyChange](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onpropertychange.md)
    * [onPropertyChangesComplete](/squirrel-addon-documentation/squirrel-helper-library/javascript/events/onpropertychangescomplete.md)
  * [Methods](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods.md)
    * [initWithSquirrel](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/initwithsquirrel.md)
    * [sendToSquirrel](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/sendtosquirrel.md)
    * [getBindingDimension](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getbindingdimension.md)
    * [getSize](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getsize.md)
    * [setSize](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/setsize.md)
    * [getPosition](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getposition.md)
    * [setPosition](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/setposition.md)
    * [getRuntimeMode](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getruntimemode.md)
    * [getCanvas](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getcanvas.md)
    * [getCopyOfState](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getcopyofstate.md)
    * [getGenericProperty](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/getgenericproperty.md)
    * [shadeColor](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/shadecolor.md)
    * [tintColor](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/tintcolor.md)
    * [parseColor](/squirrel-addon-documentation/squirrel-helper-library/javascript/methods/parsecolor.md)
  * [Classes](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes.md)
    * [SquirrelMessage](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes/squirrelmessage.md)
    * [SquirrelSize](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes/squirrelsize.md)
    * [SquirrelPosition](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes/squirrelposition.md)
    * [SquirrelColor](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes/squirrelcolor.md)
    * [SquirrelCanvas](/squirrel-addon-documentation/squirrel-helper-library/javascript/classes/squirrelcanvas.md)

## Past Events

* [Building your first add-on](/squirrel-addon-documentation/past-events/building-your-first-add-on.md)
