30 open-source projects similar to closedxml/closedxml, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best ClosedXML alternative.
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
PHPExcel is a PHP spreadsheet library used for programmatically reading and writing spreadsheet files in various formats. It utilizes an in-memory spreadsheet model that maps spreadsheet structures to a hierarchy of objects for programmatic manipulation. The library functions as an Office Open XML processor for generating and manipulating XLSX documents and serves as a reader for extracting data and structure from legacy binary XLS files. It also includes tools for CSV data integration and importing. The project provides capabilities for automated report generation and spreadsheet data extra
This project is a Model Context Protocol server that enables artificial intelligence assistants to interact directly with Microsoft Excel files. It functions as a bridge, allowing external systems to read, write, and modify spreadsheet data through a standardized interface. By supporting both direct file manipulation and headless application automation, the server provides a comprehensive utility for programmatic workbook management. The server distinguishes itself by combining data processing capabilities with a visual rendering pipeline. It can generate image snapshots of specific spreadshe
EPPlus is a .NET library designed for programmatically creating, manipulating, and styling Excel files using the Open XML format. It functions as an office file manipulator and spreadsheet processor that allows for the generation and modification of workbooks without requiring the local installation of office productivity software. The library enables the creation of complex workbooks featuring charts, pivot tables, and conditional formatting for automated reporting. It includes an internal calculation engine to execute embedded formulas and spreadsheet logic, and provides security features s
NPOI is a pure .NET library for reading and writing Microsoft Office files in both legacy binary (.xls) and modern OpenXML (.xlsx, .docx) formats, operating entirely without requiring Microsoft Office or COM interop. It runs on Windows and Linux under .NET Standard and .NET Framework runtimes, using only managed code to parse and generate Office documents. The library provides comprehensive spreadsheet capabilities, including creating, editing, and reading Excel workbooks in both .xls and .xlsx formats, with support for cell formatting, styles, and formulas. It includes a streaming row-by-row
Apache Fesod is a lightweight Java library that wraps Apache POI to provide a streaming API for reading and writing large Excel files. Its core identity is a low-memory spreadsheet processor that prevents out-of-memory errors by handling data row by row, never loading an entire document into memory at once. The library distinguishes itself through a listener-driven event model that fires row-level events to user code as each row is parsed, enabling incremental processing. It also includes an object mapping layer that maps spreadsheet rows directly to Java objects using configurable column map
Excelize is a Go library designed for reading, writing, and modifying Microsoft Excel files in XML-based formats. It functions as a spreadsheet file parser and generator that enables the programmatic extraction and modification of data. The library includes a streaming spreadsheet processor to handle massive datasets incrementally, preventing system memory exhaustion during large-scale read and write operations. It also provides a chart generator to convert worksheet values or external data sources into visual representations within the spreadsheet. Beyond core file processing, the project c
This project is an educational resource and a collection of instructional materials for performing data manipulation and statistical analysis using Python. It provides a comprehensive set of guides and code examples for using the Pandas, NumPy, and Matplotlib libraries to analyze structured data. The resource includes a dedicated guide for reshaping, cleaning, and aggregating tabular data and time series via Pandas, alongside a reference for high-performance vectorized operations and linear algebra using NumPy. It also features tutorials for creating publication-quality charts, distribution p
ExcelDataReader is a C# library used to extract data and metadata from Microsoft Excel spreadsheets and CSV files. It functions as a workbook parser that converts spreadsheet content into structured data sets for programmatic access and iteration. The project includes a specialized metadata extractor for retrieving cell-level details, such as number formats, styles, row heights, column widths, and merged cell ranges. It also provides a stream processor for parsing plain text CSV files with customizable encoding and separator detection. The library supports the OpenXML standard for modern spr
This is a Laravel Excel integration library used for importing and exporting spreadsheet files within the Laravel framework. It functions as both a spreadsheet data exporter for converting database queries and collections into files and a spreadsheet data importer for mapping workbook data to database models. The library includes an HTML to spreadsheet converter that transforms HTML table templates into downloadable documents to preserve specific layout designs. It supports large dataset exports via background queuing and processes bulk data imports through chunked reading and batch inserts.
mcp-context-forge is a Model Context Protocol federation gateway that unifies diverse AI tool servers and APIs into a single consistent interface for discovery and execution. It acts as a centralized proxy that aggregates multiple servers and APIs, allowing AI agents to access and invoke a unified set of tools, prompts, and resources. The project distinguishes itself through a multi-protocol translation bridge that converts communication between standard I/O, SSE, gRPC, and REST to enable interoperability between disparate tool servers. It includes a comprehensive LLM evaluation framework for
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
xlwings - Make Excel fly with Python!
EasyExcel is a Java processing library designed for reading and writing XLS, XLSX, and CSV files. It functions as a memory-efficient spreadsheet parser, an object-relational mapper that binds spreadsheet columns to Java class fields, and a stream-based exporter for handling high-volume data. The library distinguishes itself through a streaming model that processes large files row-by-row via listeners to prevent heap memory overflow. It also operates as a template engine, allowing the population of predefined spreadsheet files with dynamic data while preserving original layouts and styles. Br
Laravel-Excel is an integration library for importing and exporting spreadsheet data between Laravel applications and Excel or CSV files. It provides a suite of tools for bidirectional spreadsheet integration, including a system for reading workbooks and mapping data into database models. The library distinguishes itself through a background processing system that handles large imports and exports using chunking and job queues. It supports template-driven exports by converting HTML tables from view templates into spreadsheet cells. The toolset covers broad capabilities for large dataset proc
smartTable is a data grid component and table view framework for Android. It functions as an annotation-driven UI library that uses class and field markers to automatically map data models to visual columns and define table properties. The project distinguishes itself through deep spreadsheet integration, providing tools to import and export data to and from Excel files while preserving cell formatting, styles, colors, and alignment. It also features a canvas-based rendering system that supports complex grid layouts with merged cells, frozen headers, and column locking. The library covers a
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
Spout is a spreadsheet file processing library and multi-format generator designed for reading and writing CSV, XLSX, and ODS files. It functions as a stream-based parser that processes large spreadsheet files incrementally to avoid loading entire documents into memory. The library provides capabilities for programmatic spreadsheet generation and data extraction. It supports custom content styling, allowing for the application of fonts, backgrounds, borders, and number formats to individual cells or rows. Beyond basic file input and output, the project covers workbook manipulation through se
Luckysheet upgraded to Univer
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
IronCalc is an XLSX spreadsheet engine and formula evaluator designed to compute numerical expressions and manage workbook structures. It utilizes a logic engine compatible with industry standards to evaluate formulas and manage cell dependencies. The project provides a comprehensive suite of specialized toolkits, including a financial calculation library for bond pricing and net present value, and an engineering math toolkit for complex number arithmetic and Bessel functions. It also features a web-based spreadsheet interface for creating and formatting workbooks. The engine covers a broad
Luckysheet is a web-based spreadsheet component and collaborative editor designed for rendering interactive grids in a browser. It functions as an Excel-compatible data grid that allows for the import and export of spreadsheet files while maintaining tabular data structures. The project provides real-time collaborative editing, synchronizing changes across multiple users to enable simultaneous work on shared documents. It also serves as a JavaScript data visualization tool, converting cell values into graphical charts and visual representations. The platform covers a broad range of data mana
Docxtemplater is an office document generation engine designed to automate the creation of personalized business documents, presentations, and spreadsheets. By manipulating the underlying XML structure of office files, the framework replaces placeholders within pre-designed templates with dynamic data, enabling the programmatic production of reports, invoices, and complex data-driven documents. The project distinguishes itself through a modular extension architecture that allows developers to integrate custom logic for handling images, charts, and specialized formatting. It supports advanced
This project is a comprehensive collection of high-performance UI components and SDKs designed for building data-rich, cross-platform applications in Flutter. It provides a unified library of modular widgets and processing tools that enable developers to implement complex interface requirements, including advanced scheduling, tabular data management, and interactive data visualization, using a consistent declarative architecture. The library distinguishes itself through specialized, enterprise-grade capabilities that extend beyond standard UI elements. It includes a robust document processing
AlaSQL is a JavaScript SQL database engine that allows for the filtering, grouping, and joining of in-memory object arrays and JSON data. It functions as an in-memory SQL database and client-side data processor, enabling the execution of SQL statements against JavaScript arrays and external data sources in both browser and server environments. The project serves as a universal data query tool capable of performing relational joins across diverse sources, such as merging Google Spreadsheets, SQLite files, and remote APIs into a single result set. It also acts as an IndexedDB SQL wrapper, allow
unioffice is a comprehensive document processing suite that provides a PDF document processor, an Open XML document library, a document security toolkit, and a document content extractor. It is designed to programmatically create, read, and modify Word, Excel, and PowerPoint files, as well as generate and edit PDF documents. The project is distinguished by its native language implementation of the Open XML standard, which removes native binary dependencies to simplify container deployments. It features advanced capabilities for digital document security, including hardware-based PDF signing,
Handsontable is a JavaScript data grid that provides a spreadsheet-like interface for managing and editing large datasets within web applications. It functions as a virtualized data table that renders only visible cells to maintain performance, paired with a synchronization layer that binds the grid to underlying data structures. The project distinguishes itself through a built-in spreadsheet calculation engine for evaluating mathematical and logical expressions and a dedicated tool for exporting grid content into Excel XLSX files. It ensures interoperability with external spreadsheet softwar
GAM is a command-line tool for administering Google Workspace and Cloud Identity. It translates command-line arguments into structured API calls, enabling administrators to manage users, groups, organizational units, and domain settings across a Google Workspace environment. The tool handles authentication through OAuth2 flows, service accounts, and workload identity federation, and supports multi-tenant configurations for managing multiple domains or cloud projects from a single installation. GAM distinguishes itself through its batch processing and automation capabilities. It can process la
JDA is a Java wrapper for the Discord API, providing a framework for building automated agents and integrating applications with the chat platform. It functions as both a REST API client for managing server entities and a gateway client that maintains persistent WebSocket connections for real-time state updates. The library features a comprehensive voice API module for managing audio streaming, voice channel connectivity, and soundboard integration. It also includes a specialized toolkit for interactive UI design, enabling the creation of slash commands, buttons, select menus, and modal input