> ## Documentation Index
> Fetch the complete documentation index at: https://www.opendirectory.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# noise2blog

> Paste your rough notes, bullet points, voice transcript, or tweet dump and get a publication-ready blog post.

<Info>
  **Category:** Content · **Version:** `1.0.0` · **Author:** `OpenDirectory` · **Compatibility:** All targets (claude, codex, opencode, gemini, anti-gravity, openclaw, hermes)
</Info>

<img width="1280" height="640" alt="noise2blog" src="https://github.com/user-attachments/assets/2359cff9-dfd4-4276-bb3e-4b6091ad6983" />

Paste your rough notes, bullet points, voice transcript, or tweet dump and get a publication-ready blog post.

## Install

<Tabs>
  <Tab title="npx CLI (Recommended)">
    ```bash theme={null}
    npx "@opendirectory.dev/skills" install noise2blog --target claude
    ```
  </Tab>

  <Tab title="skills.sh">
    ```bash theme={null}
    npx skills add Varnan-Tech/opendirectory --skill noise2blog
    ```
  </Tab>

  <Tab title="Claude Code Native">
    ```bash theme={null}
    /plugin marketplace add Varnan-Tech/opendirectory
    /plugin install opendirectory-gtm-skills@opendirectory-marketplace
    ```
  </Tab>

  <Tab title="Claude Desktop">
    <video controls className="w-full aspect-video rounded-xl mb-4" src="https://github.com/user-attachments/assets/cea8b565-2002-4a87-8857-d902bfcfdc1c" />

    1. Copy `https://github.com/Varnan-Tech/opendirectory/tree/main/skills/noise2blog` into [download-directory.github.io](https://download-directory.github.io/) to download the ZIP.
    2. Open **Claude Desktop** -> **Customize** -> **Skills** -> **+** -> **Upload a skill** and drop the folder containing `SKILL.md`.
  </Tab>

  <Tab title="Manus AI">
    <video controls className="w-full aspect-video rounded-xl mb-4" src="https://github.com/user-attachments/assets/17cbee2a-9e17-4bd4-ac46-68e0e92ffab4" />

    [**Install noise2blog in Manus AI**](https://manus.im/import-skills?githubUrl=https%3A%2F%2Fgithub.com%2FVarnan-Tech%2Fopendirectory%2Ftree%2Fmain%2Fskills%2Fnoise2blog\&utm_source=opendirectory)
  </Tab>
</Tabs>

## What It Does

* Accepts any rough input: bullet points, rough notes, voice transcripts, tweet dumps, short drafts, or a URL
* Detects the right blog post style automatically (Technical Tutorial, Case Study, Thought Leadership, Explainer)
* Enriches claims with Tavily research when you set an API key (supporting data, verification)
* Generates a Markdown post with no AI slop, no em dashes, no banned words
* Formats frontmatter for Ghost, dev.to, Substack, or Hashnode on request

## Requirements

| Requirement | Purpose | How to Set Up |
| - | - | - |
| Google Gemini API key | Generates the blog post | aistudio.google.com, Get API key |
| Tavily API key (optional) | Enriches claims with research | app.tavily.com, API Keys |

No LLM backend to run. The agent calls the Gemini API directly.

## Setup

```bash theme={null}
cp .env.example .env
```

Edit `.env` and fill in:

* `GEMINI_API_KEY` (required)
* `TAVILY_API_KEY` (optional, enables research enrichment)

## Blog Post Styles

| Style | Use When | Signals in Your Input |
| - | - | - |
| Technical Tutorial | Step-by-step guide, code walkthrough | Numbered steps, commands, "how to" |
| Case Study | Build log, before/after story, lessons learned | Specific results, journey narrative |
| Thought Leadership | Opinion piece, counterintuitive argument | Strong claim, debate framing |
| Explainer | Explaining a concept or tool to newcomers | Definition-first, comparisons |

The agent detects the style automatically. Override it with: "Use Thought Leadership style" or "Make this a tutorial".

## How to Use

From pasted notes:

```
"Write a blog post from these notes: [paste your content]"
"Turn these bullet points into a blog post"
"Expand this into an article"
```

From a voice transcript:

```
"Turn this transcript into a blog post: [paste transcript]"
"Clean up this voice note and make it publishable"
```

From a tweet thread:

```
"Turn this tweet thread into a blog: [paste tweets]"
"Expand this thread into a full article"
```

With style override:

```
"Write a thought leadership post from these notes"
"Make this a technical tutorial"
```

With platform formatting:

```
"Write the post and format it for dev.to"
"Give me Ghost frontmatter too"
```

## Output

* Full blog post in Markdown (800-1,800 words)
* Meta description (1-2 sentences)
* Alternative title option
* Platform-specific frontmatter on request

## Project Structure

```
noise2blog/
├── SKILL.md
├── README.md
├── .env.example
├── evals/
│   └── evals.json
└── references/
    ├── blog-format.md
    └── output-template.md
```

## License

MIT


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.