n8n-nodes-docxtotext
Version:
n8n node to convert DOCX files to text using mammoth
114 lines (88 loc) • 2.73 kB
Markdown
# DOCX to Text Node for n8n


[](https://opensource.org/licenses/MIT)
An n8n node that converts DOCX files to plain text using the [mammoth](https://www.npmjs.com/package/mammoth) library.
## Features
- Convert DOCX files to formatted text
- Preserve basic formatting (bold, italics, etc.)
- Option to include the original filename in the output
- Simple and easy to use
## Installation
### In n8n
1. Go to **Settings** > **Community Nodes**
2. Click on **Install**
3. Enter the npm package name: `n8n-nodes-docxtotext`
4. Click **Install**
5. Restart n8n
### Manual Installation
1. In your n8n root directory, run:
```bash
npm install n8n-nodes-docxtotext
```
2. Restart n8n
## Usage
1. Add the **DOCX to Text** node to your workflow
2. Connect it to a node that provides a DOCX file (e.g., **Read Binary File** or **HTTP Request**)
3. Configure the node:
- **Binary Property**: The name of the binary property containing the DOCX file (default: `data`)
- **Options** > **Include Filename**: Whether to include the original filename in the output
4. The node will output an object containing:
- `text`: The extracted text content
- `messages`: Any messages from the conversion process
- `filename`: The filename without the extension (if enabled in options)
- `fileExtension`: The file extension in lowercase (if available and enabled in options)
## Example
### Input
A DOCX file with the following content:
```
Hello World!
This is a test document.
```
### Output
```json
{
"text": "Hello World!\nThis is a test document.",
"messages": [],
"filename": "example",
"fileExtension": "docx"
}
```
## Development
### Prerequisites
- Node.js (v14.x, v16.x, or v18.x)
- npm (v6.x or later)
- n8n (v0.198.0 or later)
### Setup
1. Clone the repository
2. Install dependencies:
```bash
npm install
```
3. Build the project:
```bash
npm run build
```
4. Link the package for local development:
```bash
npm link
```
5. In your n8n directory, link the package:
```bash
npm link n8n-nodes-docxtotext
```
6. Restart n8n
### Testing
1. Run the linter:
```bash
npm run lint
```
2. Build the project:
```bash
npm run build
```
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Acknowledgments
- [mammoth.js](https://github.com/mwilliamson/mammoth.js) - Used for DOCX to text conversion
- [n8n](https://n8n.io/) - Workflow automation tool