# Request for Ideas - "Node-RED Academy: Building Applications"

**URL:** <https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454>\
**Category:** General\
**Created:** [1 August 2025 15:24 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454 "2025-08-01T15:24:57Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![joepavitt](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/joepavitt/32/59722_2.png) [@joepavitt](https://discourse.nodered.org/u/joepavitt)\
**Post date:** [1 August 2025 15:24 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/1 "2025-08-01T15:24:57Z")

</div>

Hi All, I’m in the process of planning out the next [Node-RED Academy](https://node-red-academy.learnworlds.com/) course - Building Applications.

The plan here is to cover the end-to-end components that build a full _application._ Roughly speaking, the chapters are likely to be:

- Working with Files
- Realtime Communications
- Storage/Databases
- REST APIs / Interfaces
- UI/Dashboards
- AI

In particular I’m interested in hearing the details of the above and what you’d expect to learn/see. For example:

- What local files do you generally work with when using Node-RED? `csv`, `json`, `txt`, something else?
- What would you like to learn about “AI” in Node-RED?

Have I missed any obvious core chapters?

---

<div class="post-metadata">

**Author:** ![AllanOricil](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/allanoricil/32/106911_2.png) [@AllanOricil](https://discourse.nodered.org/u/AllanOricil)\
**Post date:** [1 August 2025 17:56 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/2 "2025-08-01T17:56:20Z")

</div>

Create an app that processes files from an s3 bucket, do something with the data, move them to another s3 bucket. The app has to track stages of this process. If you could make stages configurable it could be used in many business that have this type of process and doesn’t have money to spend with ETL tools. A stage could be a node that is hooked to events from the db, and can be used to configure custom actions. The file process has to be async and send email to the User that uploaded the file once the it has finished.

Businesses often have .csv, .json, .txt or excel spreadsheet that have to be parsed. So, as an additional festure to the above example, it would be fun if the parser is chosen dynamically based on the file type.

And don’t forget the Easter egg. When the user presses

**`↓, ↘, → + Punch`**

something special must happen

---

<div class="post-metadata">

**Author:** ![gregorius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/gregorius/32/73816_2.png) [@gregorius](https://discourse.nodered.org/u/gregorius)\
**Post date:** [1 August 2025 19:23 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/3 "2025-08-01T19:23:00Z")

</div>

Something on web routing? [Static](https://flowhub.org/f/40ea5f2aea6592ae) v. [Dynamic](https://flowhub.org/f/c562c43e69bcf0af) web request routing if you're talking about creating web apps in Node-RED.

APIs ==\> [analysing](https://flowhub.org/f/741c6acbed17d504) Node-RED catalogue data.

If talking about web, then perhaps also [request benchmarking](https://flowhub.org/f/e46be6066ea2231c).

What about embedding and talking about [I2C](https://flowhub.org/f/be2109bba90b6c5a) bus - or any other low-level computing topic, i.e., bit-shifting and byte massaging.

And just one more for the web topic: [chunkifying](https://flowhub.org/f/af52cade0eb7c896) response data, i.e., throughout chunks of data as read-file is generating them.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [1 August 2025 21:14 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/4 "2025-08-01T21:14:13Z")

</div>

> [@joepavitt](#):
>
> What local files do you generally work with when using Node-RED? `csv`, `json`, `txt`, something else?

Which “local” 😃 Node-RED server local or client browser local?

For me, the most common DATA files are JSON and CSV, occasionally Excel. But you can’t ignore SQLite either (though I think you should probably punt that to a future academy or it will get very complex).

However, I also very often am handling HTML, JS and CSS files.

> [@joepavitt](#):
>
> What would you like to learn about “AI” in Node-RED?

Nothing. I’m not interested in Node-RED AI integration.

---

<div class="post-metadata">

**Author:** ![Aaqu](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/aaqu/32/101407_2.png) [@Aaqu](https://discourse.nodered.org/u/Aaqu)\
**Post date:** [3 August 2025 13:36 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/5 "2025-08-03T13:36:00Z")

</div>

Honestly, for AI nothing.

---

<div class="post-metadata">

**Author:** ![joepavitt](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/joepavitt/32/59722_2.png) [@joepavitt](https://discourse.nodered.org/u/joepavitt)\
**Post date:** [5 August 2025 08:47 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/6 "2025-08-05T08:47:18Z")

</div>

> [@AllanOricil](#):
>
> Create an app that processes files from an s3 bucket, do something with the data, move them to another s3 bucket.

I tend to try and limit the number of third-party services I integrate with, is it’s overhead that the user then has to go and sign up for, or integrate with, but I will see what we can do.

---

<div class="post-metadata">

**Author:** ![bakman2](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/bakman2/32/6207_2.png) [@bakman2](https://discourse.nodered.org/u/bakman2)\
**Post date:** [5 August 2025 10:35 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/7 "2025-08-05T10:35:48Z")

</div>

> [@Aaqu](#):
>
> Honestly, for AI nothing.

That sounds so tough, impressive.

> I tend to try and limit the number of third-party services I integrate with

If you want to cover AI, you are depending on 3rd party services. This is actually where I think node-red is missing the boat. If you look at the popularity of n8n, this is purely because of AI integration. Something that should not be 'superhard' to integrate natively; 2 API's OpenAI and ollama. The same for storage/database. I see that flowfuse is now offering this feature, because it is an important aspect, although the flows may be stateless, it is often used in conjunction with existing data.

---

<div class="post-metadata">

**Author:** ![joepavitt](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/joepavitt/32/59722_2.png) [@joepavitt](https://discourse.nodered.org/u/joepavitt)\
**Post date:** [5 August 2025 11:06 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/8 "2025-08-05T11:06:03Z")

</div>

> [@bakman2](#):
>
> Something that should not be 'superhard' to integrate natively; 2 API's OpenAI and ollama.

For the LLM/RAG use cases, this was my plan indeed. It would cover:

- [OpenAI (LLM) Chat Agent • FlowFuse](https://flowfuse.com/blueprints/ai/llm-chat-agent/)
- [OpenAI RAG Chat Agent • FlowFuse](https://flowfuse.com/blueprints/ai/rag-chat-agent/)

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [5 August 2025 13:10 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/9 "2025-08-05T13:10:45Z")

</div>

If you a really going to cover AI, then covering offline and local AI model use would be sensible since this would be more of a USP to Node-RED and is often required in the kind of enterprise environments where Node-RED could be really useful such as health analytics.

This involves both training local, specialist models and their use. Of course, you wouldn't want to go into massive detail probably because these are themselves specialist areas but how to integrate Node-RED into local model training and use.

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [5 August 2025 14:06 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/10 "2025-08-05T14:06:29Z")

</div>

Regarding AI and Node-red:

I have discovered that AI search answers are often better related to my enquiry than non AI, so like many I'm not totally new to the subject.

AI in node-red though, I have no concept of what this has to offer.  
So i guess an example getting astonishingly good results from minimal input would be welcome.

Not a chat bot please though, surely everyone despises those!

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [5 August 2025 15:09 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/11 "2025-08-05T15:09:05Z")

</div>

> [@jbudd](#):
>
> I have discovered that AI search answers are often better related to my enquiry than non AI, so like many I'm not totally new to the subject.

There is a big difference between public LLM's and local/private/specialist ones. Specially trained LLM's can produce far more accurate and "safe" outputs (depending on the training of course). But they are designed for a narrower range of tasks.

In the context of Node-RED being a tool to do analytical work - whether that is against text content or image/video - those specialist LLM's are much more interesting than simply getting ChatGPT to give you a flow to do something.

But both use-cases can be valid.

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [5 August 2025 15:25 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/12 "2025-08-05T15:25:52Z")

</div>

> [@TotallyInformation](#):
>
> specialist LLM's are much more interesting than simply getting ChatGPT to give you a flow to do something

Well of course.

Rather humiliatingly, I just asked chatgpt to simplify what I would describe as two monumentally complex SQL queries. It claims to have simplified both and even returns the same data set (from a limited number of records).  
Not yet analysed it's response to see if i agree on "simpler". Im hoping to find an error 😁

---

<div class="post-metadata">

**Author:** ![aguida79](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/aguida79/32/87228_2.png) [@aguida79](https://discourse.nodered.org/u/aguida79)\
**Post date:** [22 September 2025 11:04 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/13 "2025-09-22T11:04:00Z")

</div>

About UI/Dashboards (which I think it is a main and important topic for "Building Applications"), maybe create an interface on Dashboard 2.0 that shows content on a DB (or the output of an API, formatted with JSONata or something similar), an allow CRUD of that data (or, if you are using an API, GET, POST, and DELETE). That is a simple use case, but something that you really are going to see a lot...

---

<div class="post-metadata">

**Author:** ![joepavitt](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/joepavitt/32/59722_2.png) [@joepavitt](https://discourse.nodered.org/u/joepavitt)\
**Post date:** [22 September 2025 11:16 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/14 "2025-09-22T11:16:56Z")

</div>

Excellent point - and also builds nicely on the prior chapter to that which will all be about REST APIs.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [22 September 2025 15:03 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/15 "2025-09-22T15:03:44Z")

</div>

+1 for this, if something like the capabilities seen in Ruby on Rails could be reproduced in node-red, where the flow interrogates the db and automatically makes a basic CRUD dashboard available, that would be a great feature.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [22 September 2025 17:15 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/16 "2025-09-22T17:15:21Z")

</div>

> [@Colin](#):
>
> interrogates the db and automatically makes a basic CRUD dashboard available, that would be a great feature.

D1, D2, and UIBUILDER can all automatically build a table display from a SQL query. Having an automated CRUD tool is slightly harder and none of the tools do that fully without help. But actually wouldn't be hard to do if someone has the time. I've certainly thought about doing it in the past but I've never been sure that it is a priority given plenty of other tools are available for doing Admin type updates on all of the major DB's. Lots of other things to work on that seem to be a priority. 🙂

---

<div class="post-metadata">

**Author:** ![Aaqu](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/aaqu/32/101407_2.png) [@Aaqu](https://discourse.nodered.org/u/Aaqu)\
**Post date:** [7 October 2025 15:48 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/17 "2025-10-07T15:48:44Z")

</div>

they built their own block flow

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/4/4/44cda1ca37ab836e36ba1296a48721c4d15449b2.jpeg)

[https://openai.com/index/introducing-agentkit/](https://openai.com/index/introducing-agentkit/)

---

<div class="post-metadata">

**Author:** ![AllanOricil](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/allanoricil/32/106911_2.png) [@AllanOricil](https://discourse.nodered.org/u/AllanOricil)\
**Post date:** [7 October 2025 15:59 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/18 "2025-10-07T15:59:17Z")

</div>

They have to justify the 500 billion valuation. What bothers me is that is called OpenAI but it is not open source, nor public to let other people get rich with them.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [5 January 2026 16:00 UTC](https://discourse.nodered.org/t/request-for-ideas-node-red-academy-building-applications/98454/19 "2026-01-05T16:00:08Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
