# Creating a Tutorial with Extension

**URL:** <https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382>\
**Category:** Educators' Lounge\
**Created:** [December 17, 2021, 4:12pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382 "2021-12-17T16:12:03Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![timber](https://avatars.discourse-cdn.com/v4/letter/t/5daacb/32.png) [@timber](https://forum.makecode.com/u/timber)\
**Post date:** [December 17, 2021, 4:12pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/1 "2021-12-17T16:12:03Z")

</div>

I am working through how to create my own tutorials, specifically tutorials for the Circuit Playground Express.

I am wondering how I can load a tutorial with the Servo Extension and create tutorials around that. I haven’t been able to find documentation on how to do that. Is it possible?

---

<div class="post-metadata">

**Author:** ![Yngel](https://avatars.discourse-cdn.com/v4/letter/y/b487fb/32.png) [@Yngel](https://forum.makecode.com/u/Yngel)\
**Post date:** [January 18, 2022, 4:59pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/2 "2022-01-18T16:59:34Z")

</div>

I’m working on a similar project myself, but I’m using the BitBot extension. By loading the extension into my project before exporting it to GitHub, I’ve at least made the BitBot blocks accessible when the tutorial starts. The next obstacle is making the BitBot extension blocks render in the tips, which I haven’t managed to succed with yet. I thought perhaps I could use images as a workaround, but so far I haven’t succeded in making images display in the hints either. I’ve been trying to follow the instructions in the documentation for the tutorial tool, but it doesn’t seem to work.

---

<div class="post-metadata">

**Author:** ![shakao](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/shakao/32/113_2.png) [@shakao](https://forum.makecode.com/u/shakao)\
**Post date:** [January 18, 2022, 5:08pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/3 "2022-01-18T17:08:27Z")

</div>

This is possible! The thing you’re looking for is the `package` snippet. You’ll want something like this at the bottom of your tutorial markdown file:

````auto
```package
bitbot=github:4tronix/BitBot
```

````

Or the actual path to the BitBot extension, if that’s incorrect, haha. We do have docs on it here: [https://makecode.com/writing-docs/snippets](https://makecode.com/writing-docs/snippets) but it does seem pretty inconvenient that it’s not linked anywhere in the Writing Tutorials page–is there somewhere specific you guys were looking that would be useful to add this link, aside from that top-level [Tutorials](https://makecode.com/writing-docs/tutorials) summary?

---

<div class="post-metadata">

**Author:** ![Yngel](https://avatars.discourse-cdn.com/v4/letter/y/b487fb/32.png) [@Yngel](https://forum.makecode.com/u/Yngel)\
**Post date:** [January 20, 2022, 6:35pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/4 "2022-01-20T18:35:12Z")

</div>

I was looking in the “Adding Resources” section that’s linked from this page: [https://makecode.com/writing-docs/tutorials](https://makecode.com/writing-docs/tutorials)  
In fact, I’ve previously only been looking in the documents linked from the page above as I thought those links contained all there was to know about tutorials. I just made that assumption because that’s the page the “Tutorial Docs” button in the top left corner of the tutorial tool page links to.

---

<div class="post-metadata">

**Author:** ![shakao](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/shakao/32/113_2.png) [@shakao](https://forum.makecode.com/u/shakao)\
**Post date:** [January 20, 2022, 6:55pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/5 "2022-01-20T18:55:50Z")

</div>

That makes complete sense! I’m modifying our docs to link to this file from the main tutorial page, and also possibly from the Adding Resources subpage as well. Thank you so much for your feedback!

---

<div class="post-metadata">

**Author:** ![timber](https://avatars.discourse-cdn.com/v4/letter/t/5daacb/32.png) [@timber](https://forum.makecode.com/u/timber)\
**Post date:** [January 20, 2022, 7:15pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/6 "2022-01-20T19:15:29Z")

</div>

I would agree. I think it would be helpful to include within the tutorials page.

I don’t know how much demand there would be for them, but I would really appreciate a video tutorial demoing how to create a tutorial, especially highlighting things like including “packages.” I think it would be really helpful to develop my own tutorials for students but I am finding the learning curve a little beyond the time I have to devote to it.

---

<div class="post-metadata">

**Author:** ![Yngel](https://avatars.discourse-cdn.com/v4/letter/y/b487fb/32.png) [@Yngel](https://forum.makecode.com/u/Yngel)\
**Post date:** [January 21, 2022, 5:22pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/7 "2022-01-21T17:22:36Z")

</div>

@shakao Awesome! Thanks! 🙂

---

<div class="post-metadata">

**Author:** ![Yngel](https://avatars.discourse-cdn.com/v4/letter/y/b487fb/32.png) [@Yngel](https://forum.makecode.com/u/Yngel)\
**Post date:** [January 25, 2022, 4:21pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/8 "2022-01-25T16:21:38Z")

</div>

The package snippet worked like a treat!  
The blocks render perfectly!  
You even got the link to BitBot on GitHub right.  
Thank you SO very much! You just made my life a whole lot easier.

---

<div class="post-metadata">

**Author:** ![shakao](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/shakao/32/113_2.png) [@shakao](https://forum.makecode.com/u/shakao)\
**Post date:** [January 25, 2022, 7:12pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/9 "2022-01-25T19:12:30Z")

</div>

Awesome, thanks so much for the feedback! You’ve probably seen this already, but just in case, Peli has a video on tutorial basics and Github hosting here: [https://www.youtube.com/watch?v=R-kY-dQXZvA](https://www.youtube.com/watch?v=R-kY-dQXZvA)

But it definitely seems like something that covers the markdown in more detail would be useful as well. I’ll let the team know and we’ll see what we can do!

---

<div class="post-metadata">

**Author:** ![timber](https://avatars.discourse-cdn.com/v4/letter/t/5daacb/32.png) [@timber](https://forum.makecode.com/u/timber)\
**Post date:** [January 25, 2022, 10:12pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/10 "2022-01-25T22:12:56Z")

</div>

Yes! I found that video shortly after I made my previous post. I meant to comeback and share, but it slipped my mind. Thank you for following up. I appreciate it.

The video was very helpful with setting up the GitHub side of things, but as you said, it would be helpful to take a deeper dive into the markdown options. For example, I tried following the documentation for how to insert an image, but I haven’t been able get it to work as it is written. I dug into the example tutorial though and saw there was a different way to do it using a direct link from GitHub which worked.

---

<div class="post-metadata">

**Author:** ![Yngel](https://avatars.discourse-cdn.com/v4/letter/y/b487fb/32.png) [@Yngel](https://forum.makecode.com/u/Yngel)\
**Post date:** [January 27, 2022, 5:41pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/11 "2022-01-27T17:41:40Z")

</div>

Yup, that’s the video that got me started. A video that goes more into detail would be very welcome indeed. 🙂 There doesn’t seem to be a lot of videos covering this stuff around.

---

<div class="post-metadata">

**Author:** ![brianM1](https://avatars.discourse-cdn.com/v4/letter/b/858c86/32.png) [@brianM1](https://forum.makecode.com/u/brianM1)\
**Post date:** [August 14, 2025, 9:42pm UTC](https://forum.makecode.com/t/creating-a-tutorial-with-extension/11382/12 "2025-08-14T21:42:57Z")

</div>

I’m wondering if this info is out of date now. I tried the packages thing and it did not work. I have a project and I want to use the datalogger extension. When I add the extension to the project I see datalogger in the ptx.json file

“dependencies”: {

```
    "core": "\*",

```

“radio”: “\*”,

“microphone”: “\*”,

“neopixel”: “github:microsoft/pxt-neopixel”,

“radio-broadcast”: “\*”,

“datalogger”: “\*”

```
},

```

I also see a folder named datalogger with a datalogger.ts file and a ptx.json file.  
Even with all this, the blocks just show up as text, [https://bmoran23.github.io/microbittutorialnoisesense/noiseTutorial](https://bmoran23.github.io/microbittutorialnoisesense/noiseTutorial)

Is there an uptodate tutorial or other guidance on using extensions in tutorials?
