# How are you using AI/LLMs to create themes/components/plugins?

**URL:** https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401
**Category:** Development
**Tags:** ai
**Created:** [April 17, 2025, 8:46pm UTC](https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401 "2025-04-17T20:46:45Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![jimkleiber](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jimkleiber/32/121814_2.png) [@jimkleiber](https://meta.discourse.org/u/jimkleiber)
#### Post date: [April 17, 2025, 8:46pm UTC](https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401/1 "2025-04-17T20:46:45Z")

</div>

When ChatGPT and LLMs were first getting popular, I tried to create Discourse theme components and plugins using AI and found them severely lacking, but I haven’t tried since.

Have you been using AI to write code to modify Discourse? And if so, which models have you found to be the most helpful for this?

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [April 17, 2025, 8:55pm UTC](https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401/2 "2025-04-17T20:55:03Z")

</div>

I recently wanted to create a quick and dirty proof of concept and used Cursor in agent mode to create

[https://github.com/xfalcox/discourse-video-stream](https://github.com/xfalcox/discourse-video-stream)

It struggled a lot with EmberJS .gjs files, and I was surprised that it had an easier time with the Discourse JS API than with EmberJS.

I’ve been doing quite a few tests of the feasibility of vibe coding for Discourse, and so far the best I’ve tested is the Claude Code cli.

Clone our template, and start by telling the LLM they are in a template for a Discourse plugin / theme component and what is your end goal.

I’ve always needed to fix mistakes in the end, but it does a great job at handling boring bootstrap code.

---

<div class="post-metadata">

### Author: ![Dimava](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dimava/32/498540_2.png) [@Dimava](https://meta.discourse.org/u/Dimava)
#### Post date: [April 18, 2025, 12:05am UTC](https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401/3 "2025-04-18T00:05:26Z")

</div>

Currently trying to write some difficult stuff with Cursor / Augment  
So far I have a lot of bugs 🤣

(trying to make signatures per-category so that needs a table and new edit field and so on, oneshotting didn’t work)

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [April 18, 2025, 4:05pm UTC](https://meta.discourse.org/t/how-are-you-using-ai-llms-to-create-themes-components-plugins/362401/4 "2025-04-18T16:05:30Z")

</div>

> [@Falco](#):
>
> Clone our template, and start by telling the LLM they are in a template for a Discourse plugin / theme component and what is your end goal.

Yeah on its own LLMs don’t do great with modern Ember, but results are so much better if you provide an example of an existing component from Discourse — this is a good strategy for humans too 😁
