excel_community
A community fork of the excel library to read, create, and edit XLSX files. Cross-platform, high-performance, and supports charts, borders, and formulas.
2.3.0
15K downloads/mo
#2500 most downloaded on pub.dev
decksplayer/excel_community
What this package is like to depend on
Last release 2 days ago
22 Aug 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 32 of 33 stable releases
1 version withdrawn
withdrawn after publishing
5 months old
34 releases · first in 2026
34 releases in the last 12 months
see the full history below
Release timeline
34 releases · Mar 2026 to Aug 2026Releases
latest 34-
2.3.022 Aug 2026Release notes
Open source →Added
- New Standard Chart Types:
BubbleChart(<c:bubbleChart>): 3-dimensional data comparison plotting X, Y, and Bubble Size with configurablebubbleScaleandshowNegativeBubbles.StockChart(<c:stockChart>): Financial stock price fluctuations (High-Low-Close, Open-High-Low-Close) withshowHighLowLinesandshowUpDownBars.OfPieChart(<c:ofPieChart>): Pie-of-Pie and Bar-of-Pie secondary breakdown charts with configurableofPieType(pie/bar),splitType(position/value/percent), andsecondPieSize.
- Chart Grouping & Subtypes (
ChartGrouping):- Added
groupingparameter (clustered,stacked,percentStacked) toColumnChart,BarChart,AreaChart, andLineChart. - Added
showMarkersandsmooth(spline curves) toLineChart. - Added
showLines,showMarkers, andsmooth(spline curves) toScatterChart.
- Added
- Chart Data Labels (
ChartDataLabels): Every chart type now accepts an optionaldataLabelsparameter that renders labels on each data point. Supported components:value,categoryName,seriesName, andpercentage(pie / doughnut). CustomseparatorandlabelPositionare also supported. The XML round-trip is preserved (labels written to<c:dLbls>are re-read viaChartXmlWriter.parseDataLabelsFromXml). - Chart Color & Style Customization (
ChartSeriesStyle,ChartFillType): Per-series visual customization for all chart types viaChartSeries.style.- Fills: Support for solid fills (
ChartFillType.solid), customizable transparency withfillAlpha(ChartFillType.transparent), and border-only no-fill (ChartFillType.none). - Borders: Customizable
borderColor,borderAlpha, andborderWidthin EMUs.
- Fills: Support for solid fills (
- Flutter Example & Documentation:
- Added interactive sections in
excel_flutter_examplefor Bubble, Stock & Stacked Charts, Chart Data Labels, and Chart Color Customization. - Updated
README.mdwith complete documentation, parameter tables, and worked examples for all 11 chart types.
- Added interactive sections in
- New Standard Chart Types:
-
2.2.109 Aug 2026 -
2.2.020 Jul 2026Release notes
Open source →Added
- Conditional Formatting (
<conditionalFormatting>): Native OpenXML/SpreadsheetML support for Conditional Formatting rules and Differential Styles (<dxfs>).- Support for numeric ranges (
cellIs), text matching (containsText,notContains,beginsWith,endsWith), custom formula expressions (expression), and duplicate/unique values (duplicateValues,uniqueValues). - Multi-sheet support with worksheet-wide unique rule priority sequencing.
- Round-trip preservation when reading, saving, and editing
.xlsxfiles.
- Support for numeric ranges (
- Example & Flutter App Integration: Added standalone CLI example (
example/excel_conditional_formatting.dart), documentation snippet, and a new interactive section in the Flutter demo app (excel_flutter_example).
- Conditional Formatting (
-
2.1.919 Jul 2026Release notes
Open source →Added
- Cell Comments: Added support and usage instructions for Cell Comments.
- Flutter example app: New
Cell Commentssection displaying a sheet with formatted comments and hover preview tooltips.
-
2.1.812 Jul 2026Release notes
Open source →Added
- Pivot Table Add Official support and usage instructions for Pivot Tables.
-
2.1.709 Jul 2026Release notes
Open source →Added
- Show Icon show excel community logo.
- Chage Tags update tags to excel_community.
-
2.1.607 Jul 2026Release notes
Open source →Fixed
- SST parsing: Fixed the SST parsing logic to correctly read the shared strings from the SST stream.
-
2.1.507 Jul 2026Release notes
Open source →Added
- Legacy XLS File Support: Added read-only support for parsing legacy
.xls(Excel 97-2003) workbooks using a custom, clean-room OLE2 and BIFF8 parser implemented from scratch in pure Dart. It decodes sheet names, row/column dimensions, and cell values (TextCellValue,IntCellValue,DoubleCellValue), with transparent fallback insideExcel.decodeBytesandExcel.decodeBufferusing signature magic bytes detection.
- Legacy XLS File Support: Added read-only support for parsing legacy
-
2.1.403 Jul 2026 -
2.1.302 Jul 2026Release notes
Open source →Added
- Hidden Columns & Rows: New
Sheet.setColumnHidden(index, hidden),Sheet.isColumnHidden(index),Sheet.setRowHidden(index, hidden), andSheet.isRowHidden(index)methods to toggle and query visibility of columns/rows. Full serialization to OOXML<col hidden="1">and<row hidden="1">on save, and parsing from XLSX on decode. - Flutter example app: New
Hidden Columns & Rowssidebar demo displaying a multi-sheet spreadsheet where some sheets contain hidden elements and others are fully visible.
Fixed
- Cleaned Template: Removed stale empty drawing (
xl/drawings/drawing1.xml) and its worksheet relationship from the base sheet template base64 string insideconstants.dart. This ensures newly created worksheets (such asSheet2) that have charts do not bleed/render their charts onto the first sheet (Sheet1) of the workbook, whilst preserving pre-existing charts when editing loaded files.
- Hidden Columns & Rows: New
-
2.1.202 Jul 2026Release notes
Open source →Fixed
-
Multi-Sheet Freeze Panes: Added hidden columns to the Staff Salaries and Executive Perks sheets, with corresponding data removed. Now only the Public Directory sheet is visible, while the other two remain hidden (but fully functional) in the generated XLSX file.
-
Multi-Sheet Charts: Fixed chart issue in multi-sheet workbooks.
-
-
2.1.129 Jun 2026Release notes
Open source →Added
- Freeze Panes: New
Sheet.frozenRowsandSheet.frozenColumnssetters/getters (nullableint?). Each sheet in a workbook can carry its own independent freeze combination (rows+cols, rows only, cols only, or none). Values are serialized as OOXML-compliant<pane>elements on save and fully restored on decode. - Examples:
example/excel_freeze_panes.dart(single-sheet samples) andexample/excel_freeze_panes_multisheet.dart(multi-sheet workbook with per-sheet freezes and round-trip assertions). - Flutter example app: New
Freeze PanesandMulti-Sheet Freeze Panessidebar sections, with matching helpers and code snippets. - Tests: Re-enabled
test/freeze_panes_test.dartcovering the four freeze configurations (4/4 passing). - Documentation: README "Features" and "Usage" sections now document the freeze-pane API.
Fixed
<sheetView>writer: Only the first sheet in the workbook carriestabSelected="1"(Excel requires exactly one active tab).<selection>entries andactivePaneare now chosen dynamically based on the actual split configuration, so Excel no longer shows the "Reparaciones / Recover as much as we can" dialog on multi-sheet workbooks.
- Freeze Panes: New
-
2.1.028 Jun 2026Release notes
Open source →Added
- Sheet Protection: Added full programmatic support for worksheet protection, including password hashing (legacy 16-bit XOR algorithm) and custom protection settings (objects, scenarios, format cells, select locked/unlocked cells, etc.).
- Cell Style Locking: Exposed
lockedandhiddenboolean properties onCellStyleto control cell editability/visibility under sheet protection. - Worksheet Protection Parsing & Serialization: Added parser and serializer rules to correctly process and serialize worksheet protection states and cell locking XML elements, fully compatible with Microsoft Excel and Google Sheets.
-
2.0.216 Jun 2026Release notes
Open source →Fixed
- Wasm: Fix save excel file.
- Lint issues: Fix lint issues.
- XML parsing pipeline: Refactored to use a streaming-based approach with iterative DOM building instead of full recursive parsing.
- Performance: Optimized cell coordinate parsing and XML value extraction for better performance.
- Memory usage: Reduced memory usage during XML parsing by avoiding full recursive parsing.
-
2.0.111 Jun 2026Release notes
Open source →Fixed
- Cell Style: Fix underline and strikethrough preservation bug in CellStyle constructor and parsing logic.
- Cell Style: Add strikethrough text style support.
- Cell Style: Add comprehensive tests for underline and strikethrough preservation.
- Cell Style: Update Flutter example with underline and strikethrough demos.
-
2.0.0+111 Jun 2026 withdrawnRelease notes
Open source →Improved
- XML parsing pipeline: Refactored to use a streaming-based approach with iterative DOM building instead of full recursive parsing.
- Performance: Optimized cell coordinate parsing and XML value extraction for better performance.
- Memory usage: Reduced memory usage during XML parsing by avoiding full recursive parsing.
Fixed
- XML parsing: NullPointerException: Fixed NullPointerException in
_XfCache._readXfsmethod when processing shared strings with rich text formatting.
-
2.0.0+211 Jun 2026 -
1.2.004 Jun 2026Release notes
Open source →Fixed
- Chart XML — series name (
c:tx): The series name inside<c:tx>was incorrectly wrapped in<c:strLit>, which is not a valid child according to the OOXMLCT_SerTxschema (§21.2.2.174). It now correctly uses<c:v>directly, fixing broken/missing series names when opening generated files in Microsoft Excel. - Chart XML — element order in
CT_Chart:<c:autoTitleDeleted>was emitted before<c:title>, violating the required sequence defined in OOXML §21.2.2.29. The order is now<c:title>→<c:autoTitleDeleted>, fixing chart validation errors in strict Excel readers. standard_21format code: Was'h:mm:dd'(invalid), corrected to'h:mm:ss'per ECMA-376 §18.8.30.standard_40format code: Was'#,##0.00;[Red](#,#)'(truncated), corrected to'#,##0.00;[Red](#,##0.00)'.
Added
- Complete OOXML standard number format table (ECMA-376 §18.8.30): added previously missing built-in format IDs:
- Currency formats
standard_5–standard_8($#,##0,$#,##0.00with normal/red negative variants). - Reserved/fallback formats
standard_23–standard_26(mapped toGeneral). - CJK locale date/time formats
standard_27–standard_36. - Accounting with fill-character formats
standard_41–standard_44(_(* …)/_($* …)patterns).
- Currency formats
- Parser refactor: split monolithic
parse.dartintostyles_parser.dart(style/XF resolution) andworksheet_parser.dart(row/cell parsing) for improved maintainability.
- Chart XML — series name (
-
1.1.411 May 2026Release notes
Open source →Added
- Image embedding support: embed PNG, JPEG, GIF, BMP, TIFF, WMF, EMF, SVG, WebP, and ICO images into worksheets.
ExcelImagemodel class withfromFilefactory for automatic type detection from file extension.ExcelImageTypeenum withfromExtensionfactory covering 10 image formats.ImageAnchorclass withfromPixelsfactory (96 DPI) and direct EMU constructor.SheetImagesextension onSheetexposingaddImage()andimagesgetter._ImageManagersave-pipeline component that writes OOXML drawing, relationship, and media files.- New example
example/excel_images.dartdemonstrating PNG and SVG embedding. - README "Images" section with full usage examples and supported-formats table.
-
1.1.306 May 2026 -
1.1.206 May 2026 -
1.1.106 May 2026 -
1.1.006 May 2026Release notes
Open source →- Update logo to open source version.
- Improve package README.md and add a preview image.
- Update package metadata for pub.dev.
- Fix chart x-axis labels for scatter charts.
-
1.0.1001 May 2026 -
1.0.918 Apr 2026 -
1.0.808 Apr 2026 -
1.0.707 Apr 2026Release notes
Open source →- Fix underline preservation bug in CellStyle constructor and parsing logic.
- Add strikethrough text style support.
- Add comprehensive tests for underline and strikethrough preservation.
- Update Flutter example with underline and strikethrough demos.
-
1.0.617 Mar 2026 -
1.0.516 Mar 2026 -
1.0.416 Mar 2026Release notes
Open source →- Apply Clean Architecture in Save class.
- Refactor Sheet class.
- Refactor Color class.
- Refactor Border class.
- Refactor Formula class.
- Refactor NumberFormat class.
-
1.0.314 Mar 2026Release notes
Open source →- Renamed main example to
example/main.dartfor better visibility on pub.dev. - Significantly increased documentation coverage (>28%) across the public API.
- Added detailed documentation for all chart types and cell value classes.
- Renamed main example to
-
1.0.214 Mar 2026Nothing published for this version
-
1.0.114 Mar 2026Release notes
Open source →- Reorganized tests: moved manual debug scripts to
test/manual/. - Fixed static analysis errors in
parse.dartandsave_file.dart. - Improved package metadata for pub.dev.
- Reorganized tests: moved manual debug scripts to
-
1.0.014 Mar 2026Release notes
Open source →- Initial Release of the community fork.
- Forked from excel
- Updated minimum Dart SDK to 3.6.0
- Migrate from
dart:htmltopackage:web - Update packages to latest versions
- Added support for charts