a month ago
I've been trying to install a package called quill-delta-to-html. I tried to add variables to in my railway dashboard:
NODEFUNCTIONALLOW_EXTERNAL=quill-delta-to-html
but it looks like it doesn't work. The reason I need this package is that ClickUp api is giving me a RichText in quill delta format.
0 Replies
a month ago
As answered through DMs, you'll need to install through NPM
https://www.npmjs.com/package/quill-delta-to-html
*I'm guessing that you're using nodejs
a month ago
when opening that page there'll be a install command you can run
I tried adding the variable and chatgpt/gemini couldn't give me a working guide for that
a month ago
but it is npm install quill-delta-to-html
a month ago
on your terminal
a month ago
oh you're on a n8n environment, sorry for that
a month ago
so n8n needs that? to parse the quill format
a month ago
chatgpt is also assuming what I was assuming, that you're on a normal nodejs project with access to the terminal (basically, writing your own code)
Ye but I told chatgpt I am on railway so it asked me to add some variables which I did but still didn't work
a month ago
don't trust chatgpt with Railway, it always gives wrong answers
a month ago
unfortunately I don't know how to proceed here as I'm unfamiliar with n8n but I would assume that it has someway of parsing that built-in, if not then you're unlucky here.
a month ago
I see a way of implementing this: you could create a Railway function (Railway has a built-in AI) where n8n calls that function, the function parses it, and then you process the response in n8n.
a month ago
The flow would look like:
Create an n8n node to call an external API/endpoint.
Create a function on Railway (https://docs.railway.com/reference/functions).
Use the Railway's AI and tell it to write a code where it uses
quill-delta-to-htmlpackage to parse an external payload through an API endpoint.Copy the public endpoint URL from that function and then use it in the first node we created.
a month ago
that's steps you should follow, no AI at the moment can do that automatically.
a month ago
looks right to me
a month ago
There should be the "Apply Changes" popup. Also, make sure that you save the code by clicking the save button.

a month ago
Yeah, feel free to do so
a month ago
there should be an URL under the source code editor
a month ago
and from the looks of it, it seems to just accept a JSON payload and parse it or under the property ops
{ "body": { "test": "test" }, "headers": { "accept": "application/json,text/html,application/xhtml+xml,application/xml,text/;q=0.9, image/;q=0.8, /;q=0.7" }, "method": "POST", "uri": "hidden", "gzip": true, "rejectUnauthorized": true, "followRedirect": true, "resolveWithFullResponse": true, "followAllRedirects": true, "timeout": 300000, "encoding": null, "json": false, "useStream": true }
a month ago
sorry, it's under the /convert endpoint path
a month ago
can you get me an example of a quill payload?
a month ago
give me a minute to know how the library works
how do u feel solving a problem not even geminig and chatgpt could
a month ago
also, are you able to send me your quill payload + the source code for the function?
a month ago
here please
```import { Hono } from "hono";
import { QuillDeltaToHtmlConverter } from "quill-delta-to-html";
const app = new Hono();
app.post("/convert", async (c) => {
try {
const payload = await c.req.json();
const converter = new QuillDeltaToHtmlConverter(payload.ops || [], {});
const html = converter.convert();
return c.json({
html: html,
success: true
});} catch (error) {
return c.json({
error: error instanceof Error ? error.message : "Unknown error",
success: false
}, 400);
}
});
Bun.serve({
port: Bun.env.PORT ?? 3000,
fetch: app.fetch
});```
a month ago
Ok, I see the issue now
a month ago
what are the options on Specify body?
a month ago
No, the option input below it
a month ago
Select the option Using JSON
a month ago
Then, just pass the n8n template directly e.g. {{ $json.custom_fields <..> }}
a month ago
try with the .toJsonString, if it still doesn't work remove it
a month ago
but then you're passing the "quill-data" and all of that, I meant to only pass the template directly
a month ago
by template I mean this: {{ $json.custom_fields[2].value_richtext.toJsonString() }}. Just fill that on the input and nothing else.
i take back everything I said about LLM taking human programmer jobs
a month ago
Great to hear that 😅
Anyway, do you've any more questions?
a month ago
Also, about your DMs, any particular reason why you would be migrating away from Railway?
a month ago
That's not a problem, we would really like to keep you on Railway.
a month ago
For example, you wouldn't be able to keep the support you had right now as a DigitalOcean customer.
a month ago
Great to hear, let me know if you've any other issues! will be closing this thread
a month ago
!s
Status changed to Solved passos • about 1 month ago







