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

tealeg/xlsxArchived

0
View on GitHub↗
5,996 stars·812 forks·Go·25 views

Xlsx

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, including visual styling for fonts and colors, page layout configuration, and rich text formatting. It provides utilities for workbook management, such as handling merged cells, named ranges, and view pane configurations, while managing in-memory data storage and parsing limits to control memory usage.

Features

  • Go Spreadsheet Libraries - Provides a comprehensive Go library for reading and writing XLSX files with support for styles and formulas.
  • Cell Data Writing - Writes strings, integers, floats, booleans, and formulas directly into specific spreadsheet cells.
  • OOXML Structure Parsing - Reads and writes the XML structure of a workbook to manage properties and ranges.
  • Range Reference Conversion - Translates between numeric coordinate pairs and alphanumeric range strings for cell referencing.
  • Shared String Tables - Maps repetitive text values to a central reference table to optimize spreadsheet file size and memory.
  • Struct-to-Cell Mapping - Populates spreadsheet rows by mapping fields from data structures to cell coordinates.
  • Spreadsheet File I/O - Provides full read and write lifecycle support for opening existing or creating new spreadsheet files.
  • Spreadsheet Relationship Mapping - Tracks internal and external associations between workbook elements using standardized relationship maps.
  • In-Memory Object Models - Maintains the spreadsheet hierarchy in memory to enable fast random access and programmatic modifications.
  • XLSX File Generation - Creates and saves spreadsheet workbooks in the XLSX archive format with custom data and layouts.
  • XLSX Read and Write Support - Supports reading from and writing to XLSX spreadsheet files by parsing their underlying binary XML format.
  • Cell Notation Writing - Supports writing and accessing data using both row-column indices and A1-style alphanumeric notation.
  • Row and Column Manipulations - Performs structural layout operations including adding, removing, and retrieving rows at specific indices.
  • Worksheet Data Extraction - Extracts cell values, metadata, and worksheet structures from existing XLSX files for data processing.
  • XML Serialization - Translates internal memory structures into the OpenXML standard for file persistence.
  • Formatted Value Extraction - Extracts cell contents as raw strings or preserves visual formatting during retrieval.
  • Spreadsheet Field Matchers - Automatically aligns spreadsheet columns with Go struct fields using reflection and metadata tags.
  • Spreadsheet-to-Object Mappers - Binds spreadsheet columns to Go struct fields using tags to automate data mapping.
  • XML Spreadsheet Parsers - Implements a parser for extracting data and structures from modern compressed XML spreadsheet containers.
  • Spreadsheet Row Mapping - Implements mapping between spreadsheet rows and Go language data structures using reflection and struct tags.
  • Struct Tags - Uses reflection and metadata tags to automatically align spreadsheet columns with struct fields.
  • Table Row Management - Provides structural definitions for adding, retrieving, and indexing cells within spreadsheet rows.
  • Worksheet Management - Creates new worksheets and adds rows and cells to organize spreadsheet data.
  • Autofilter Configurations - Defines data ranges and criteria for sorting and visibility via spreadsheet autofilters.
  • Spreadsheet Data Validations - Provides predefined selection lists and input constraints within cells to control user data entry.
  • Worksheet Element Management - Implements management for non-scalar spreadsheet components including hyperlinks, data validation rules, auto-filters, and merged cell ranges.
  • Excel Workbook Exports - Writes the workbook state to a writer or retrieves content as a byte buffer for export.
  • In-Memory Caches - Maintains workbook rows and cells in system memory to ensure fast random access and modifications.
  • Spreadsheet Data Validation - Provides mechanisms for restricting the type and range of data users can enter into spreadsheet cells.
  • Spreadsheet Styling - Provides capabilities for applying visual formatting like fonts, colors, and borders to exported spreadsheet files.
  • Cell Coordinate Mapping - Provides translation between numeric indices and alphanumeric A1 notation for precise cell and range addressing.
  • Slice-to-Row Writing - Populates spreadsheet rows efficiently by iterating over slices of data values.
  • Cell Styling Systems - Defines and reuses styles for font, color, alignment, background fills, and borders within cells.
  • Tabular Row Iterators - Iterates over cells within a row, providing a mechanism to process data while skipping empty cells.
  • Text Run Segmenting - Supports mixed fonts and colors within a single cell by segmenting content into styled text runs.
  • File Storage Systems - Library for reading and writing Excel files.
  • Office Document Processing - Read modern Microsoft Excel files.
  • Office Document Tools - Simplify reading of modern Excel XML formats.
  • Office Document Tools - Library for reading XML-based Excel files.

Star history

Star history chart for tealeg/xlsxStar history chart for tealeg/xlsx

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. 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

Projects sharing features with Xlsx

These projects share indexed features with Xlsx. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • 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
  • 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
  • unidoc/uniofficeunidoc avatar

    unidoc/unioffice

    4,809View on GitHub↗

    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,

    Godocxecma-376excel
    View on GitHub↗4,809
  • 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
Compare all 30 related projects→

Frequently asked questions

What does tealeg/xlsx do?

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.

What are the main features of tealeg/xlsx?

The main features of tealeg/xlsx are: Go Spreadsheet Libraries, Cell Data Writing, OOXML Structure Parsing, Range Reference Conversion, Shared String Tables, Struct-to-Cell Mapping, Spreadsheet File I/O, Spreadsheet Relationship Mapping.

Which projects share features with tealeg/xlsx?

Projects with overlapping indexed features include: jmcnamara/xlsxwriter — XlsxWriter is a library for generating spreadsheets in the XLSX format, functioning as an Excel workbook writer and… exceljs/exceljs — ExcelJS is a Node.js spreadsheet engine and manipulation library used for reading, writing, and modifying XLSX and CSV… unidoc/unioffice — unioffice is a comprehensive document processing suite that provides a PDF document processor, an Open XML document… 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,… xuri/excelize — Excelize is a Go library designed for reading, writing, and modifying Microsoft Excel files in XML-based formats. It…