awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
E

exceljs/exceljs

0
View on GitHub↗
15,370 stars·1,996 forks·JavaScript·MIT·15 views

Exceljs

ExcelJS is a Node.js spreadsheet engine and manipulation library used for reading, writing, and modifying XLSX and CSV files. It functions as a formatting tool and asynchronous streaming parser for generating complex workbooks containing formulas, rich text, and custom styles.

The library is distinguished by its ability to process large datasets using asynchronous data streaming and incremental processing, which minimizes memory usage during data extraction and file generation.

Its capability surface covers comprehensive data management, including structured tables, named ranges, and cell data manipulation. It provides extensive visual formatting options such as conditional formatting, image embedding, page setup configuration, and worksheet view controls. Additionally, the project includes security and integrity features like data validation constraints and password-protected worksheet modifications.

Features

  • Spreadsheet Engines - Functions as a backend engine for generating professional workbooks with formulas and rich text in Node.js.
  • Spreadsheet Cell Manipulators - Provides programmatic methods to set, get, and manipulate values within individual cells and merged ranges.
  • Spreadsheet File I/O - Enables reading, manipulating, and writing spreadsheet data and styles to XLSX and CSV files.
  • Spreadsheet Manipulation Libraries - Provides a programmatic library for reading, updating, and saving modifications to existing spreadsheet files.
  • In-Memory Object Models - Maintains an in-memory hierarchy of workbooks and cells to enable precise random access manipulation of data.
  • Row and Column Manipulations - Enables structural layout operations including defining widths, heights, and visibility for rows and columns.
  • Zip-Compressed Serialization - Serializes internal data structures into Open XML format and packages them into compressed zip archives.
  • Incremental Data Streaming - Implements memory-efficient streaming by writing data in chunks to avoid memory overflow when generating large files.
  • Spreadsheet Generators - Enables programmatic generation of complex Excel files with custom styles, formulas, and layouts.
  • Spreadsheet Styling - Provides extensive visual formatting including cell styles, conditional formatting, and page setups.
  • Spreadsheet Data Flushing - Provides incremental processing of workbook data to minimize memory usage while reading or writing files.
  • Formula Insertion - Implements mechanisms for placing mathematical or logical expressions and expected results into cells.
  • Cell Styling Systems - Provides comprehensive controls over cell appearance including fonts, colors, borders, and alignment.
  • Spreadsheet Row Streaming - Allows reading large workbooks using asynchronous iteration to process rows without loading the entire file into memory.
  • Spreadsheet Stream Processing - Processes large XLSX and CSV files using asynchronous streaming to maintain a low memory footprint.
  • Worksheet Organization - Provides management of individual worksheets including their creation, removal, and access by name or ID.
  • Spreadsheet Report Exports - Allows exporting application data into formatted spreadsheets for users to download and analyze offline.
  • Header and Footer Management - Enables the addition of formatted text, page numbers, and dates to the top and bottom margins of printed pages.
  • Page Setup Configurations - Configures printing properties including paper size, orientation, margins, and designated print areas.
  • I/O Stream Managers - Provides utilities for efficiently reading and writing binary XLSX components between memory buffers and files.
  • Structured Spreadsheet Tables - Supports the definition of structured tables with headers and totals rows within a spreadsheet.
  • Row Manipulations - Implements operations for adding and duplicating rows with inherited styles within a spreadsheet.
  • Spreadsheet Data Validation - Implements input constraints such as dropdown lists and numeric ranges for spreadsheet cells.
  • Named Range Creation - Assigns custom alphanumeric names to specific cell ranges for use in formulas and data validation.
  • Data Filters - Defines cell ranges to act as filters for organizing and manipulating tabular data.
  • Conditional Formatting - Applies visual styles to cell ranges based on expressions, value comparisons, or color scales.
  • Rich Text Styling - Supports applying different font properties to individual sub-strings within a single cell.
  • XML Style Mappings - Maps high-level styling objects to a shared styles table to minimize redundancy in the generated XML structure.
  • Document Processing - Comprehensive management and manipulation of Excel worksheets.

Star history

Star history chart for exceljs/exceljsStar history chart for exceljs/exceljs

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does exceljs/exceljs do?

ExcelJS is a Node.js spreadsheet engine and manipulation library used for reading, writing, and modifying XLSX and CSV files. It functions as a formatting tool and asynchronous streaming parser for generating complex workbooks containing formulas, rich text, and custom styles.

What are the main features of exceljs/exceljs?

The main features of exceljs/exceljs are: Spreadsheet Engines, Spreadsheet Cell Manipulators, Spreadsheet File I/O, Spreadsheet Manipulation Libraries, In-Memory Object Models, Row and Column Manipulations, Zip-Compressed Serialization, Incremental Data Streaming.

What are some open-source alternatives to exceljs/exceljs?

Open-source alternatives to exceljs/exceljs include: jmcnamara/xlsxwriter — XlsxWriter is a library for generating spreadsheets in the XLSX format, functioning as an Excel workbook writer and… haris-musa/excel-mcp-server — This project is a Model Context Protocol server that provides an interface for AI agents to programmatically create,… tealeg/xlsx — This is a Go library for reading and writing XLSX files, providing a toolkit for spreadsheet generation and data… iofficeai/officecli — OfficeCLI is a headless office suite and automation tool designed for programmatically reading, editing, and… box/spout — Spout is a spreadsheet file processing library and multi-format generator designed for reading and writing CSV, XLSX,… jankallman/epplus — EPPlus is a .NET library designed for programmatically creating, manipulating, and styling Excel files using the Open…

Open-source alternatives to Exceljs

Similar open-source projects, ranked by how many features they share with Exceljs.
  • jmcnamara/xlsxwriterjmcnamara avatar

    jmcnamara/XlsxWriter

    3,911View on GitHub↗

    XlsxWriter is a library for generating spreadsheets in the XLSX format, functioning as an Excel workbook writer and file generator. It provides the capability to write data, apply cell formatting, and build complex layouts across multiple worksheets. The project distinguishes itself with a memory-optimized writing mode that flushes large datasets to disk row-by-row, enabling the creation of files exceeding 4 GB while minimizing RAM consumption. It also includes a specialized mechanism for embedding binary project files and digital signatures to enable VBA macros and signed scripts within work

    Pythonchartslibxlsxwriterpandas
    View on GitHub↗3,911
  • haris-musa/excel-mcp-serverharis-musa avatar

    haris-musa/excel-mcp-server

    3,940View on GitHub↗

    This project is a Model Context Protocol server that provides an interface for AI agents to programmatically create, read, and modify Excel workbooks. It serves as a bridge that enables large language models to perform spreadsheet automation and data visualization. The server allows AI agents to generate native Excel charts and pivot tables from raw data, transforming structured information into visual summaries. It provides a mechanism for remote spreadsheet management through a protocol-based connectivity layer. The system covers a broad range of spreadsheet manipulation capabilities, incl

    Python
    View on GitHub↗3,940
  • tealeg/xlsxtealeg avatar

    tealeg/xlsx

    5,996View on GitHub↗

    This is a Go library for reading and writing XLSX files, providing a toolkit for spreadsheet generation and data extraction. It functions as an Office Open XML parser and generator, enabling the creation of workbooks with support for styles, formulas, and metadata. The project features a data mapper that uses Go struct tags and reflection to automatically align spreadsheet rows with structured data. It also includes a validation engine for defining input constraints, such as dropdown lists and error alerts, to control user data entry. The library covers a broad range of capabilities, includi

    Go
    View on GitHub↗5,996
  • iofficeai/officecliiOfficeAI avatar

    iOfficeAI/OfficeCLI

    8,092View on GitHub↗

    OfficeCLI is a headless office suite and automation tool designed for programmatically reading, editing, and generating Microsoft Office documents. It functions as an OOXML manipulation library and a document templating engine, providing a standalone binary that allows for the management of Word, Excel, and PowerPoint files without requiring a local installation of office software. The project distinguishes itself by exposing document operations as tools for AI agents via a JSON-RPC server and the Model Context Protocol. It enables advanced customization through raw XML manipulation using XPa

    C#
    View on GitHub↗8,092
  • See all 30 alternatives to Exceljs→