## 🚀 Getting Started with Building Alpha plugins

If you’re building great solutions using Neutrinos Alpha Studio, you’ve probably wondered how the plugins or components you drag and drop onto the canvas shows those handy configuration options when you click on the component.

Check out the image below — this is exactly what I’m talking about:

Well, that smooth, user-friendly configuration panel is powered by Alpha decorators — and more specifically, the @AlphaAttribute() decorator.

:backhand_index_pointing_right: Here’s something cool:
When you create a new component using the Alpha CLI( @jatahworx/alpha-cli - npm), a basic @AlphaAttribute() decorator is automatically added for you. This gives you a starting point to make your component configurable inside the Alpha Studio — without having to write it from scratch.

In this post, we’ll dive into what @AlphaAttribute() is, how it works, and why it’s essential for making your custom plugins fully configurable and designer-friendly in Alpha Studio.

Let’s clear it up:


:bullseye: What is @AlphaAttribute()?

The @AlphaAttribute() decorator is used to expose configurable inputs to your component in the Neutrinos Alpha Studio.

This means:

  • You define what values users can bind to.
  • You control how those inputs appear in the configuration UI.
  • You make your components reusable, dynamic, and designer-friendly.

:package: A Simple Example:

@AlphaAttribute({
label: ‘Title’,
uiType: UI_TYPE.INPUT,
type: ATTRIBUTE_TYPE.PROPERTY,
category: ‘Additional Properties’
})

UI_TYPE could be any of [ INPUT, TOGGLE , DROPDOWN, MULTI_SELECT, TYPED_INPUT, RANGE, COLOR_PICKER, DATASOURCE, DATASET , TABLE_ACTIONS, DATA_MAPPING, ICON, CONTAINER, PAGES_LIST, TEXT_INPUT]

ATTRIBUTE_TYPE could also be any of [PROPERTY, EVENT, VALIDATION]

Will dive deeper on others but today we just going to be covering UI_TYPE .INPUT for uiType and ATTRIBUTE_TYPE.PROPERTY for type

In this case:

  • A field labeled “Title” will appear in the component config.
  • It will render as a input.
  • Category it’s how you what the attribute categorized in Neutrinos Alpha Studio
  • The value entered will be passed as a property input to your component.

How it appears on the plugin configuration in Alpha studio.


:light_bulb: Why It Matters

Using @AlphaAttribute() properly ensures:

  • Your component works seamlessly in low-code scenarios.
  • Business users and designers can bind variables, set text, or configure behavior without touching code.
  • You can build powerful, plug-and-play components for Alpha studio.

:white_check_mark: When Should You Use It?

Whenever you want your component to accept input or add triggers from the component configurations.


:hammer_and_wrench: Coming Up Next…

In the next post, we’ll dive deeper into specific configs like:

  • uiType: TYPED_INPUT`
  • type: ATTRIBUTE_TYPE
  • How options and fieldMappings enable dynamic data bindings :counterclockwise_arrows_button:

If you have any question, comment or the is something you want us to cover next time please don’t hesitate to drop a reply below.

Stay tuned!

#Neutrinos #Neutriverse #NeutrinosReels #NeutrinosTrinity #AlphaAttribute #NeutrinosAlphaStudio

10 Likes

@Gowtham_Balram @Paul_Thomas @Simphiwe great work , waiting for this series

3 Likes

Appreciate it! :folded_hands:
I’m excited to share more — this is just the beginning. The next posts will break down real examples and use cases so you can unlock the full potential of your custom plugins in Alpha. Let’s build some powerful stuff together! :flexed_biceps::sparkles:

6 Likes

Learning a lot from this! thank you.

4 Likes

Great breakdown , This is super helpful - @Simphiwe :raising_hands:

3 Likes

I’m really glad it’s helping. Plenty more to come, so stick around! If there’s anything specific you’d like covered, feel free to drop it in the comments :backhand_index_pointing_down::speech_balloon:

3 Likes

Thank you! @Shamnad_KS :raising_hands: Really glad it’s helpful. More deep dives coming soon :fire::fire::fire:.

3 Likes

Nice and clear breakdown thanks @Simphiwe

4 Likes

You’re welcome — glad it came through clearly! @Noxolo_Mnguni :raising_hands:
More content like this is on the way. Let me know if there’s anything you’d like a deeper dive on next! :light_bulb::sparkles:

4 Likes