Socket
Socket
Sign inDemoInstall

docx

Package Overview
Dependencies
20
Maintainers
1
Versions
82
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    docx

Easily generate .docx files with JS/TS with a nice declarative API. Works for Node and on the Browser.


Version published
Weekly downloads
143K
increased by12.32%
Maintainers
1
Install size
4.50 MB
Created
Weekly downloads
 

Package description

What is docx?

The docx npm package is a powerful library for creating and manipulating Microsoft Word documents programmatically. It allows developers to generate .docx files with various elements such as text, images, tables, and more, directly from their JavaScript or TypeScript code.

What are docx's main functionalities?

Creating a Simple Document

This feature allows you to create a simple Word document with text. The code sample demonstrates how to create a document with a single paragraph containing both regular and formatted text.

const { Document, Packer, Paragraph, TextRun } = require('docx');
const fs = require('fs');

const doc = new Document({
  sections: [
    {
      properties: {},
      children: [
        new Paragraph({
          children: [
            new TextRun('Hello World!'),
            new TextRun({
              text: ' This is bold and underlined text.',
              bold: true,
              underline: {} 
            })
          ]
        })
      ]
    }
  ]
});

Packer.toBuffer(doc).then((buffer) => {
  fs.writeFileSync('MyDocument.docx', buffer);
});

Adding Images

This feature allows you to add images to your Word document. The code sample demonstrates how to insert an image with specified dimensions into a document.

const { Document, Packer, Paragraph, ImageRun } = require('docx');
const fs = require('fs');

const doc = new Document({
  sections: [
    {
      properties: {},
      children: [
        new Paragraph({
          children: [
            new ImageRun({
              data: fs.readFileSync('path/to/image.png'),
              transformation: {
                width: 100,
                height: 100
              }
            })
          ]
        })
      ]
    }
  ]
});

Packer.toBuffer(doc).then((buffer) => {
  fs.writeFileSync('DocumentWithImage.docx', buffer);
});

Creating Tables

This feature allows you to create tables within your Word document. The code sample demonstrates how to create a table with two rows and two columns.

const { Document, Packer, Table, TableRow, TableCell, Paragraph } = require('docx');
const fs = require('fs');

const doc = new Document({
  sections: [
    {
      properties: {},
      children: [
        new Table({
          rows: [
            new TableRow({
              children: [
                new TableCell({
                  children: [new Paragraph('Cell 1')] 
                }),
                new TableCell({
                  children: [new Paragraph('Cell 2')] 
                })
              ]
            }),
            new TableRow({
              children: [
                new TableCell({
                  children: [new Paragraph('Cell 3')] 
                }),
                new TableCell({
                  children: [new Paragraph('Cell 4')] 
                })
              ]
            })
          ]
        })
      ]
    }
  ]
});

Packer.toBuffer(doc).then((buffer) => {
  fs.writeFileSync('DocumentWithTable.docx', buffer);
});

Other packages similar to docx

Readme

Source

clippy the assistant

Easily generate .docx files with JS/TS. Works for Node and on the Browser.


NPM version Downloads per month Build Status Dependency Status Known Vulnerabilities Chat on Gitter PRs Welcome codecov

drawing

Demo

Browser

Here are examples of docx being used with basic HTML/JS in a browser environment:

Here is an example of docx working in Angular:

Node

Press endpoint on the RunKit website:

RunKit Instructions

More here and here

How to use & Documentation

Please refer to the documentation at https://docx.js.org/ for details on how to use this library, examples and much more!

Examples

Check the examples section in the documentation and the demo folder for examples.

Contributing

Read the contribution guidelines here.

Used by

drawing drawing drawing drawing drawing drawing drawing drawing drawing drawing

...and many more!


patreon browserstack

Made with 💖

Keywords

FAQs

Last updated on 26 May 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc