# How to make Extensions?

**URL:** <https://forum.makecode.com/t/how-to-make-extensions/24580>\
**Category:** Help\
**Tags:** extension\
**Created:** [November 27, 2023, 6:34pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580 "2023-11-27T18:34:25Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![ADM\_F](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/adm_f/32/19808_2.png) [@ADM\_F](https://forum.makecode.com/u/ADM_F)\
**Post date:** [November 27, 2023, 6:34pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/1 "2023-11-27T18:34:25Z")

</div>

I want to make an extension to help with my game how would I do that?

---

<div class="post-metadata">

**Author:** ![KIKIvsIT](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kikivsit/32/10492_2.png) [@KIKIvsIT](https://forum.makecode.com/u/KIKIvsIT)\
**Post date:** [November 27, 2023, 6:35pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/2 "2023-11-27T18:35:52Z")

</div>

You can start here…

> **[Making and Using Extensions in Microsoft MakeCode Arcade](https://medium.com/kikis-corner/extensions-ac2c8a554a91)**
>
> With so many features hiding under the hood, you might find that you aren’t able to take advantage of the most advanced block-based…

There’s a lot more you can do than what’s listed here, but this will get you started 🙂

---

<div class="post-metadata">

**Author:** ![ADM\_F](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/adm_f/32/19808_2.png) [@ADM\_F](https://forum.makecode.com/u/ADM_F)\
**Post date:** [November 27, 2023, 7:16pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/3 "2023-11-27T19:16:19Z")

</div>

How do you change the Icon?  
i see Where to change it  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/4/462e2a60ade09811f7589942d3b1159bb711e450.png)  
but not how

and how can i upload a custom photo if possible

---

<div class="post-metadata">

**Author:** ![KIKIvsIT](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kikivsit/32/10492_2.png) [@KIKIvsIT](https://forum.makecode.com/u/KIKIvsIT)\
**Post date:** [November 27, 2023, 9:09pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/4 "2023-11-27T21:09:34Z")

</div>

You need to find the code from the icons you want here:

> **[Font Awesome](https://fontawesome.com/v5/search?m=free)**
>
> The internet's icon library + toolkit. Used by millions of designers, devs, & content creators. Open-source. Always free. Always awesome.

Keep in mind, it doesn’t work with anything implemented after v5.

I’m not sure what you mean about uploading a custom photo? In general, we don’t allow any image uploads in MakeCode.

---

<div class="post-metadata">

**Author:** ![Sarge](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sarge/32/19590_2.png) [@Sarge](https://forum.makecode.com/u/Sarge)\
**Post date:** [November 28, 2023, 6:16pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/5 "2023-11-28T18:16:03Z")

</div>

That’s something I’ve actually always been wondering about, why doesn’t it work after v5?

---

<div class="post-metadata">

**Author:** ![YuHayate](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yuhayate/32/8275_2.png) [@YuHayate](https://forum.makecode.com/u/YuHayate)\
**Post date:** [November 29, 2023, 5:20pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/6 "2023-11-29T17:20:03Z")

</div>

here is the v4 version of fontAwesome  
[FontAwesome](https://fontawesome.com/v4/icons/)

---

<div class="post-metadata">

**Author:** ![KIKIvsIT](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kikivsit/32/10492_2.png) [@KIKIvsIT](https://forum.makecode.com/u/KIKIvsIT)\
**Post date:** [November 30, 2023, 6:53pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/7 "2023-11-30T18:53:55Z")

</div>

I’m honestly not sure if it’s our subscription or the way it’s coded into PXT… @richard?

---

<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:** [December 1, 2023, 7:05pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/8 "2023-12-01T19:05:11Z")

</div>

we have a dependency on semantic ui which uses v5… when i eventually destroy the remaining references to sui then we can update

---

<div class="post-metadata">

**Author:** ![Sarge](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sarge/32/19590_2.png) [@Sarge](https://forum.makecode.com/u/Sarge)\
**Post date:** [December 1, 2023, 9:44pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/9 "2023-12-01T21:44:13Z")

</div>

> [@richard](#):
>
> references to sui

![Siu Ronaldo Siu GIF - Siu Ronaldo Siu Cristiano - Discover & Share GIFs in 2023 | Ronaldo, Gif, Memes](https://i.pinimg.com/originals/65/1f/d9/651fd915166200a4404ab63598ef103e.gif)

---

<div class="post-metadata">

**Author:** ![\_jupiter](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/_jupiter/32/28012_2.png) [@\_jupiter](https://forum.makecode.com/u/_jupiter)\
**Post date:** [February 26, 2024, 9:24pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/10 "2024-02-26T21:24:15Z")

</div>

just making my first extension and found this:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/5/5f7d91e4a73bab6315cd1fb1736ff5d27d98db19.png)  
please help i don’t know what to do.  
link to project:

> **[behavior extension](https://arcade.makecode.com/S46420-16772-98930-25801)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![Sparks](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sparks/32/8161_2.png) [@Sparks](https://forum.makecode.com/u/Sparks)\
**Post date:** [February 26, 2024, 9:45pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/11 "2024-02-26T21:45:31Z")

</div>

@_jupiter I believe your close curly braces are just a little misaligned. You’re missing the close brace to your wander() function which throws off the parsing to the rest of your function. Try adding a close brace there and removing the extra one at the end of the file, then see if it builds again. (The double close braces at the end of the file are what clued me in to the issue.)

---

<div class="post-metadata">

**Author:** ![\_jupiter](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/_jupiter/32/28012_2.png) [@\_jupiter](https://forum.makecode.com/u/_jupiter)\
**Post date:** [February 27, 2024, 12:53am UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/12 "2024-02-27T00:53:47Z")

</div>

I don’t understand, it’s still not working,  
can you please point out the area where i should add the close bracket?

---

<div class="post-metadata">

**Author:** ![Sparks](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sparks/32/8161_2.png) [@Sparks](https://forum.makecode.com/u/Sparks)\
**Post date:** [February 27, 2024, 1:05am UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/13 "2024-02-27T01:05:44Z")

</div>

Based on the indentation of your code, it looks like you’re expecting a close bracket underneath the inner `wander()` function here:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/a/a904b0e4bbb803841697fa2a17da52ce822d8c42.png)

Since there isn’t one currently, the export function fib(…) is actually still contained within the outer `wander(n: number, s: string, e: MyEnum)` function, which causes the error.

To make the error go away, try adding a close bracket like so:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/b/b72eb50ad468a2762eca54c3c0220c04bd5dc251.png)

However, I’m guessing you don’t actually want to have one `wander()` function defined inside another, since no-one calls the inner function. With that in mind, the simplest option may be to remove it altogether and just have a single `wander()` function with no parameters:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/d/d65ee2d6ec92d5ae11172813efc61e3622de17ad.png)

Here’s a version of the code as-of that last screenshot: [https://arcade.makecode.com/S52711-22786-82005-32479](https://arcade.makecode.com/S52711-22786-82005-32479)

---

<div class="post-metadata">

**Author:** ![\_jupiter](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/_jupiter/32/28012_2.png) [@\_jupiter](https://forum.makecode.com/u/_jupiter)\
**Post date:** [February 27, 2024, 6:55pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/14 "2024-02-27T18:55:13Z")

</div>

Thanks! It works now!

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/e/ee11fc5e3f6b87f55417e6702d406ba95ef39f28.png)

---

<div class="post-metadata">

**Author:** ![\_jupiter](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/_jupiter/32/28012_2.png) [@\_jupiter](https://forum.makecode.com/u/_jupiter)\
**Post date:** [February 27, 2024, 6:56pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/15 "2024-02-27T18:56:38Z")

</div>

just tried making the extension and this:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/1/1fe8857f8a69ad6536523e47e21b7842d309d37b.png)

---

<div class="post-metadata">

**Author:** ![Josef](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/josef/32/12457_2.png) [@Josef](https://forum.makecode.com/u/Josef)\
**Post date:** [June 15, 2024, 4:18pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/16 "2024-06-15T16:18:53Z")

</div>

how to copy icon into java?

---

<div class="post-metadata">

**Author:** ![YuHayate](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yuhayate/32/8275_2.png) [@YuHayate](https://forum.makecode.com/u/YuHayate)\
**Post date:** [June 16, 2024, 4:45pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/17 "2024-06-16T16:45:46Z")

</div>

off topic, when using java? Josef mean typescript?

---

<div class="post-metadata">

**Author:** ![Josef](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/josef/32/12457_2.png) [@Josef](https://forum.makecode.com/u/Josef)\
**Post date:** [June 20, 2024, 2:49pm UTC](https://forum.makecode.com/t/how-to-make-extensions/24580/18 "2024-06-20T14:49:47Z")

</div>

sry. i meant ts
