# How do you create extensions?

**URL:** <https://forum.makecode.com/t/how-do-you-create-extensions/3462>\
**Category:** Help\
**Created:** [September 15, 2020, 2:37pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462 "2020-09-15T14:37:40Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![purna079](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/purna079/32/4018_2.png) [@purna079](https://forum.makecode.com/u/purna079)\
**Post date:** [September 15, 2020, 2:37pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/1 "2020-09-15T14:37:41Z")

</div>

I want to know how to create extensions! How do you make them?

---

<div class="post-metadata">

**Author:** ![AlexK](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/alexk/32/33339_2.png) [@AlexK](https://forum.makecode.com/u/AlexK)\
**Post date:** [September 15, 2020, 2:43pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/2 "2020-09-15T14:43:50Z")

</div>

You can start here to get some information on creating extensions in MakeCode:

> **[Building your own extension](https://makecode.com/extensions/getting-started)**
>
> This guide describes a simple setup that requires nothing, but a web browser.
> We have another guide, if you want to
> use command line tools.

---

<div class="post-metadata">

**Author:** ![purna079](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/purna079/32/4018_2.png) [@purna079](https://forum.makecode.com/u/purna079)\
**Post date:** [September 15, 2020, 2:50pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/3 "2020-09-15T14:50:12Z")

</div>

can you make extensions in blocks?

---

<div class="post-metadata">

**Author:** ![jacob\_c](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jacob_c/32/1532_2.png) [@jacob\_c](https://forum.makecode.com/u/jacob_c)\
**Post date:** [September 15, 2020, 4:57pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/4 "2020-09-15T16:57:28Z")

</div>

I don’t think that’s currently possible.

But `Functions` are a good blocks-compatible way of declaring reusable and composable chunks of logic. Especially now that they support return values.

---

<div class="post-metadata">

**Author:** ![MKleinSB](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/mkleinsb/32/593_2.png) [@MKleinSB](https://forum.makecode.com/u/MKleinSB)\
**Post date:** [September 15, 2020, 5:03pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/5 "2020-09-15T17:03:59Z")

</div>

Make the extension in the main program, test it, switch then to Javascript and copy the Functions for your extensions to the wanted place.

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [September 15, 2020, 7:09pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/6 "2020-09-15T19:09:50Z")

</div>

@darzu maybe we could do some example videos on how to take block programs and turn them into extensions. Might make a good Friday stream?

---

<div class="post-metadata">

**Author:** ![purna079](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/purna079/32/4018_2.png) [@purna079](https://forum.makecode.com/u/purna079)\
**Post date:** [September 15, 2020, 7:12pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/7 "2020-09-15T19:12:18Z")

</div>

Thank you all!

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [September 15, 2020, 9:40pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/8 "2020-09-15T21:40:22Z")

</div>

@purna079 do you have an idea for an extension that you would like to make?

---

<div class="post-metadata">

**Author:** ![purna079](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/purna079/32/4018_2.png) [@purna079](https://forum.makecode.com/u/purna079)\
**Post date:** [September 15, 2020, 11:35pm UTC](https://forum.makecode.com/t/how-do-you-create-extensions/3462/9 "2020-09-15T23:35:19Z")

</div>

Maybe a traffic extension? like every 500 milliseconds change a light to green or somthing?
