Bonsai-27B-GGUF
lmstudio-community · Kit
A GGUF conversion of the 27B Bonsai model for LM Studio, with a 3.80 GB Q1_0 language file and a 0.93 GB BF16 vision projector. Tested for text, vision and par…
An n8n workflow that writes a three-section newsletter on a topic you type and emails it to every address on a Google Sheet. Tavily finds the week’s news, OpenAI writes the sections, and the brand’s own colors and logo are read from its website.
Branded newsletter writer and sender is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 2, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
Newsletter form
It starts when someone sends the Newsletter form with:
A newsletter with the brand’s logo and colors, emailed to every subscriber on your sheet
What you need before you start.
Language model
Runs gpt-4.1-mini for the topic planner, the section writer, the color reader, the logo finder and the agent that builds each issue’s HTML.
NeedsOpenAI API key
Web search
Searches the past week’s news on your topic, then searches each of the three sub-topics for the section’s sources.
NeedsTavily API key, in the header of two nodes
File conversion
Converts the brand’s logo to a PNG and gives back the link that the email’s logo points to.
NeedsConvertAPI secret, in the header of one node
Subscriber list and log
Reads the subscribers’ names and addresses, and adds a row for every issue it sends.
NeedsA Google account, the spreadsheet’s id and the Subscribers tab’s id
Sends the issue to each address from your own account.
NeedsA Google account that may send mail
Checked by Mindket on 13 Nov 2026
This n8n workflow writes a newsletter from three details typed into a form: the brand’s name, its website and a topic. It then emails the issue to every address on a Google Sheet. Tavily searches the past week’s news on your topic, and an OpenAI agent turns the results into a title and three sub-topics. Each sub-topic gets a search of its own and a section with source links. Meanwhile the brand’s homepage is read for four color codes and a logo, which ConvertAPI converts to a PNG. For each subscriber, a last agent sets the sections into a fixed HTML layout in the brand’s colors, Google Sheets logs the issue and Gmail sends it.
Small brands, clubs and consultancies that send a regular roundup and want each issue to match their site without hiring a designer. Agencies suit it too, with one copy per client and that client’s own sheet.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Professional services | Accountants, consultants and their marketing staff | Type the firm’s site and the month’s topic, then mail the issue to the client list | An accounting firm enters “small business tax changes” and mails its clients an update in the firm’s colors. |
| Software | Product marketers | Send customers a short roundup of news in the field the product sits in | A project-tool company mails its users three items on remote-team news without writing a line. |
| Education | Course creators and training schools | Keep students in touch between classes | A coding school sends each cohort a weekly roundup of developer news. |
| Clubs and associations | Volunteers who run a member list | Turn a topic into an issue with the club’s logo on it | A running club mails its members a roundup of race and gear news. |
| Marketing agencies | Account managers | Run one copy per client, each with its own sheet | An agency sets up a copy for every client, and each client fills in the form alone. |
You need some n8n: importing a file, adding five kinds of credentials and preparing a two-tab sheet. If that is new and you would rather not learn it, skip this one. The page it came from estimates close to 20 minutes, which assumes every account and key already exists.
Any n8n you run will do, as long as it can reach OpenAI, Tavily, ConvertAPI, Google and the brand’s website.
Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Have these ready before you import it.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key |
| Tavily | An API key |
| ConvertAPI | A secret from your ConvertAPI account |
| One account for Gmail and Google Sheets, and a spreadsheet with a subscribers tab and a log tab |
| Tab | Columns | What the workflow does with it |
|---|---|---|
| Subscribers | Email, Name | Reads every row. Email is where an issue goes, and Name fills its greeting |
| Log, the first tab | Email, Message, Email Created At, Email Send At | Adds a row for every issue it sends. Email holds the subject line and Message the HTML |
workflow.json.OpenAI and in OpenAI Chat Model6.Tavily and Tavily1. In each Authorization header, swap <YOUR_TAVILY_KEY> for your key and keep the word Bearer and its space before it.Convertor with <YOUR_CONVERTAPI_SECRET>.Get row(s) in sheet and in Save Newsletter, select it and replace YOUR_SHEET_ID with the long id in your spreadsheet’s address, between /d/ and /edit.Get row(s) in sheet, replace YOUR_SUBSCRIBERS_TAB_ID with the number after gid= in the Subscribers tab’s address. Save Newsletter writes to the first tab, gid=0.Sending Emails.The logo step expects an ai file. The address in Convertor ends in /convert/ai/to/png. ConvertAPI reads the source and target formats from that address, so a logo that is an SVG or a JPG needs the address changed to match.
Open the form from On form submission, fill in Brand Name, Brand Website and Query, all required, and send it. The form confirms at once. The run goes on behind it: the research and the color study first, then a styled issue, a log row and an email for each subscriber. Open the run under Executions to follow it.
| To change | Where |
|---|---|
| How recent and how deep the news is | time_range and search_depth in the body of Tavily. Tavily1 sends only the topic, so add them there to narrow the second search too |
| The voice of each section | The system message of Generate Content |
| Layout, greeting and footer | The HTML skeleton inside the system message of Convert Newsletter to HTML. Only text colors adapt to the brand, the layout stays as written |
| Issue length | The same message caps an issue at 1,000 words |
| Model | gpt-4.1-mini in OpenAI and OpenAI Chat Model6 |
A form entry for a coffee roaster:
Brand Name: Harbor Coffee Roasters Brand Website: https://harborcoffee.example Query: specialty coffee prices and cafe trends
Generate Topics answers in the parser’s shape, which insists on exactly three topics:
{
"title": "…",
"topics": ["…", "…", "…"]
}Website scrape returns the colors the same way, and Convert Newsletter to HTML returns the issue as a subject and an HTML body:
{
"primary_color": "…",
"secondary_color": "…",
"accent_color": "…",
"background_color": "…"
}{
"subject": "…",
"content": "<html>…</html>"
}Each subscriber receives the logo, the title in the primary color, a greeting by name and an introduction that gives the date. Then come three sections with Source links, a sources list sorted by publication, a closing note and a footer.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. A credential is a key n8n keeps for you and hands to the node you pick it in. Run the form from its test address with a sheet that holds only your own addresses. Open that run under Executions and each node shows what it received and what it sent, so a bad key or a wrong tab turns up there.
For experts. Three inputs meet in Merge: the logo, the color study and the sections, in that order. Convert Newsletter to HTML reads them by position (output[0], output[1], output[2]), so keep the order if you rewire it.
| Step | Model | What to know |
|---|---|---|
| Generate Topics | gpt-4.1-mini through OpenAI | The parser accepts exactly three topics, so every run adds three more searches to the first one |
| Generate Content | The same model | Runs once per topic and is told to cite only real sources |
| Website scrape and Information Extractor | The same model | Read the homepage HTML as the server sends it, so a site that builds its page in the browser may leave them little to read |
| Convert Newsletter to HTML | gpt-4.1-mini through OpenAI Chat Model6 | Runs once per subscriber, and the loop sends one email per pass |
Each run costs money and the mail leaves your own account, so test on your own addresses first.
An n8n workflow. Fill in a form with a brand's name, its website and a topic. It researches the topic, writes a
three-section newsletter in the brand's colors and emails it to every address on a Google Sheet.
workflow.json: the workflow as n8n exports it, 26 nodes, one of them a sticky note. It holds no credential, and itREADME.md: these notes.| Tab | Columns | What the workflow does with it |
|---|---|---|
| Subscribers | Email, Name | Reads every row. Email is where an issue goes, and Name fills the greeting |
| Log, the first tab | Email, Message, Email Created At, Email Send At | Adds a row for every issue it sends. Email holds the subject line and Message the HTML |
workflow.json.OpenAI and in OpenAI Chat Model6.Tavily and Tavily1. In each Authorization header, swap <YOUR_TAVILY_KEY> for your key. Keep the wordConvertor with <YOUR_CONVERTAPI_SECRET>.Get row(s) in sheet and in Save Newsletter, select it and replaceYOUR_SHEET_ID with the long id in your spreadsheet's address, between /d/ and /edit.Get row(s) in sheet, replace YOUR_SUBSCRIBERS_TAB_ID with the number after gid= in the Subscribers tab'sSave Newsletter writes to the first tab, gid=0. If your log is on another tab, change it to thatgid= number.Sending Emails.Convertor posts the brand's logo file to https://v2.convertapi.com/convert/ai/to/png. ConvertAPI names the source
and target formats in that address, so the step suits a logo that is an ai file. For an SVG or a JPG, change theai part of the address to the logo's format. The email's logo is the link ConvertAPI returns for the converted file
(Files[0].Url).
time_range and search_depth sit in the body of Tavily. Tavily1 sends only the topic, so addGenerate Content for the sections and Generate Topics for the title and topics.Convert Newsletter to HTML. Onlygpt-4.1-mini in the two OpenAI nodes.Merge joins the logo, the colors and the sections in that order, and Convert Newsletter to HTML readsoutput[0], output[1], output[2]). Keep the order if you rewire it.Generate Topics,Generate Content and Convert Newsletter to HTML that join the research and the sections. They joined with theREADME.md 5 KB workflow.json 26 KB
Updated by Mindket to the current version of this kit.
lmstudio-community · Kit
A GGUF conversion of the 27B Bonsai model for LM Studio, with a 3.80 GB Q1_0 language file and a 0.93 GB BF16 vision projector. Tested for text, vision and par…
LibertAIDAI · Kit
Runs DeepSeek-V4.1-Flash-1017 as a 2.9 bits-per-weight EXL3 quantization, a 196 GiB copy for people serving large models on their own hardware. Perplexity stay…
facebook · Kit
Generates short music clips from a text description or an audio prompt, in the small checkpoint of facebook's MusicGen. It suits developers and music hobbyists…
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
nerijs · Kit
A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…
LiconStudio · Kit
Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…