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
box avatar

box/spoutArchived

0
View on GitHub↗
4,229 stars·640 forks·PHP·Apache-2.0·13 viewsopensource.box.com/spout↗

Spout

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 selective sheet extraction and the modification of specific content within existing files. It employs memory-optimization strategies to handle large-scale spreadsheet processing regardless of total file size.

Features

  • Stream-Based Parsing - Processes large spreadsheet files incrementally using a sequential read loop to maintain constant memory usage.
  • Large Scale Processing - Handles massive CSV, XLSX, or ODS files using memory-efficient streaming to prevent crashes during reading or writing.
  • Multi-Format Spreadsheet Generators - Creates and modifies spreadsheet files across multiple formats while managing cell formatting and data structures.
  • Spreadsheet Data Extractors - Parses specific sheets and cell values from various workbook formats into a usable data format for analysis.
  • Spreadsheet File I/O - Parses various spreadsheet file formats into usable data while handling custom encodings and date conversions.
  • Spreadsheet Manipulation Libraries - Provides a programmatic library for reading, writing, and manipulating CSV, XLSX, and ODS files.
  • Spreadsheet Generators - Enables the programmatic creation and population of formatted XLSX and ODS files from code.
  • Format Abstraction Interfaces - Standardizes read and write operations across CSV, XLSX, and ODS formats using a common internal data representation.
  • Selective Sheet Extraction - Allows for the extraction of specific sheet data from a workbook without loading the entire file into memory.
  • Spreadsheet Stream Processing - Implements a memory-efficient parser that processes massive spreadsheet files incrementally to avoid RAM exhaustion.
  • Spreadsheet Manipulation - Edits specific data within existing spreadsheet files to update content without replacing the entire document.
  • Selective Sheet Extraction - Extracts data from a chosen sheet within a multi-sheet workbook to avoid processing the entire file.
  • Spreadsheet Styling - Applies custom fonts, backgrounds, borders, and number formats to individual cells or rows.
  • Disk-Backed Buffer Management - Writes large datasets to disk-backed temporary files before finalizing the spreadsheet to prevent memory overflow.
  • Spreadsheet Cell Styling - Provides capabilities to map high-level visual attributes to format-specific XML definitions for individual cells and rows.

Star history

Star history chart for box/spoutStar history chart for box/spout

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

Open-source alternatives to Spout

Similar open-source projects, ranked by how many features they share with Spout.
  • exceljs/exceljsE

    exceljs/exceljs

    15,370View on GitHub↗

    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 da

    JavaScript
    View on GitHub↗15,370
  • phpoffice/phpexcelPHPOffice avatar

    PHPOffice/PHPExcel

    11,379View on GitHub↗

    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

    PHP
    View on GitHub↗11,379
  • alibaba/easyexcelalibaba avatar

    alibaba/easyexcel

    33,703View on GitHub↗

    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

    Javaexceljavajxl
    View on GitHub↗33,703
  • 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
See all 30 alternatives to Spout→

Frequently asked questions

What does box/spout do?

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.

What are the main features of box/spout?

The main features of box/spout are: Stream-Based Parsing, Large Scale Processing, Multi-Format Spreadsheet Generators, Spreadsheet Data Extractors, Spreadsheet File I/O, Spreadsheet Manipulation Libraries, Spreadsheet Generators, Format Abstraction Interfaces.

What are some open-source alternatives to box/spout?

Open-source alternatives to box/spout include: exceljs/exceljs — ExcelJS is a Node.js spreadsheet engine and manipulation library used for reading, writing, and modifying XLSX and CSV… phpoffice/phpexcel — PHPExcel is a PHP spreadsheet library used for programmatically reading and writing spreadsheet files in various… alibaba/easyexcel — EasyExcel is a Java processing library designed for reading and writing XLS, XLSX, and CSV files. It functions as a… haris-musa/excel-mcp-server — This project is a Model Context Protocol server that provides an interface for AI agents to programmatically create,… phpoffice/phpspreadsheet — PhpSpreadsheet is a PHP library used for reading and writing spreadsheet files across various formats. It functions as… negokaz/excel-mcp-server — This project is a Model Context Protocol server that enables artificial intelligence assistants to interact directly…