Skip to main content Skip to footer

SpreadJS v18.2 Released!

We’re excited to announce the release of SpreadJS v18.2, a feature-packed update that spans data visualization, collaboration, design-time enhancements, and more. This release introduces new chart types, improved designer functionality, better integration with modern frameworks, and numerous productivity enhancements across the board. Developers can look forward to building more powerful and intuitive spreadsheet applications with these updates. Ready to dive into the details?

Explore What’s New in SpreadJS v18.2

Ready to check it out? Download SpreadJS Today!

Designer Component Enhancements

Designer Theme Support

The SpreadJS Designer Ribbon Component now has flexible Theme Support. You can choose between predefined Light, Dark, and Classic themes or create custom themes to match your application's branding, enhancing visual integration.

Theme Name CSS File Preview
Light (default) gc.spread.sheets.designer.light.x.x.x.min.css JavaScript Spreadsheet Designer - Light Theme
Dark gc.spread.sheets.designer.dark.x.x.x.min.css JavaScript Spreadsheet Designer - Dark Theme
Classic gc.spread.sheets.designer.x.x.x.min.css JavaScript Spreadsheet Designer - Classic Theme

If you want a custom theme, you can customize colors, fonts, and styles extensively through CSS variables or the built-in API. This flexible theming system ensures seamless visual integration with your existing applications, significantly enhancing user experience and consistency.

Note that we've updated some CSS class names in the Designer Ribbon for better consistency, improving maintainability and custom styling.

Learn more in our Designer Theme documentation or try our online Designer Theme demo.

Editable Font Picker

The Designer Font Picker is now editable, allowing quick searches and entry of custom font names, streamlining workflow and customization.

Editing font family in SpreadJS Designer

Transform Cells with LAMBDA

Apply powerful, custom LAMBDA formulas interactively within the Designer to transform selected data ranges on-the-fly. To use this feature, you can select a range of cells, right-click and choose “Transform Cells”. This will bring up a dialog that applies LAMBDA formulas which can be scoped to Cell, Row, Column or Range. 

Apply LAMBDA formulas in SpreadJS Designer

Read more in our LAMBDA Formulas documentation.

Paste Special with LAMBDA

The Paste Special function also now supports custom LAMBDA transformations, enabling advanced data manipulation directly upon pasting.


Formulas

Asynchronously Evaluate Functions Outside Worksheet

Formulas can now be evaluated asynchronously outside worksheet contexts using evaluateFormulaAsync, supporting responsive UI and integration with asynchronous data sources. These can be useful for:

  • Functions that perform asynchronous tasks
  • APIs that return data asynchronously
  • Perform long-running calculations 

Learn more in our evaluateFormulaAsync documentation.


Import/Export

Lossless XML Map Export

We have introduced a losslessEditing property that preserves macros and XML Maps during Excel exports, ensuring data fidelity for round-trip scenarios. 

Read more in our Excel Export documentation or try our online Import & Export demo explorer.

XLSM and XLTM File Format Support

We have added support for XLSM and XLTM Excel files, in addition to XLSX. While any macros will not be executed in SpreadJS, you can import and export Excel Macro-Enabled Workbook and Template files and retain macro definitions for seamless integration with Excel workflows.

Learn more in our Excel File Format documentation.


Tables/DataTables

Convert Tables to/from DataTables

Seamlessly convert between static worksheet tables and bound DataTables, enhancing flexibility in data-bound applications. This capability is critical for applications needing structured data binding (e.g., real-time analytics, reporting) or snapshot preservation (e.g., data auditing, template reuse).

Read more in our Table Conversion docs or online demo explorer.

Retrieve Bound Table’s Data Source

A new API to programmatically retrieve the underlying data source from bound tables simplifies data manipulation and synchronization. The getBindingSource method on a GC.Spread.Sheets.Tables.Table object allows you to retrieve the underlying data source that the table is bound to.

Learn more in our Table Binding documentation.


DataCharts

Funnel Charts

New Funnel chart support in DataCharts allows visualization of sequential data or conversions, perfect for sales pipelines or workflow stages. Customize segment gaps and neck widths for precise control.

JavaScript Spreadsheets Funnel Charts

Read more in our Funnel DataChart documentation or try our Funnel DataChart demo.

Treemap Charts

Treemap charts in DataCharts enable visualization of hierarchical data through nested rectangles, providing an immediate understanding of complex data relationships in a compact form.

Treemap chart type in SpreadJS DataCharts
Learn more in our Treemap DataChart docs or try our Treemap DataChart demo.


PivotTable

PivotTable Full Column Data Source

SpreadJS PivotTables can now use a full column (for example, Sheet1!C:D) as its data source. 

Read more in our PivotTable documentation.


ReportSheet

Show Hidden Rows/Columns in ReportSheet’s Template Designer

Temporarily reveal hidden rows and columns during report template design for easier editing and validation.

Learn more in our ReportSheet Show Hidden Row and Col docs.


UI and UX Enhancements

This release includes several user interface improvements designed to streamline spreadsheet navigation and editing making your apps feel faster, smarter, and more intuitive:

Enhancement Description Preview
Data Validation Dropdown Search Quickly filter validation lists by typing. Data Validation Dropdown Search JS Spreadsheet
Name Manager Sorting & Filtering Efficiently manage named ranges with sorting and filtering. Name Manager Sorting and Filtering - JavaScript Web Applications
Sheet List Search Quickly locate sheets in workbooks with many tabs. New Sheet List Search in JS Spreadsheets
CheckBox & CheckBoxList CellType Toggle Mode Directly toggle checkbox states with single clicks. JS Spreadsheet Checkbox and Toggle
Comment Fill Color Customize cell comment backgrounds, matching Excel's latest capabilities. Comment Fill Color - SpreadJS Update
Shape Text Direction Support Shapes now support vertical and right-to-left text orientations. Shape Text Direction Support - JS Spreadsheet Shape


Framework Support

Next.js 15 Support

SpreadJS fully supports Next.js 15, ensuring smooth server-side rendering and integration with modern React applications.

Get started with our NextJS guide.

React 19 Support

SpreadJS now officially supports React 19, ensuring compatibility with the latest React advancements, including new hooks and concurrent rendering improvements. This enables smoother, more performant spreadsheet integrations in modern React-based applications.

Get started with our ReactJS guide.


Collaboration Add-On (Developer Preview)

Collaboration Editing Status

The SpreadJS collaboration engine now tracks real-time editing states to proactively alert you to conflicts, such as cell deletions or changes by other users. This helps ensure smoother collaborative experiences by reducing confusion and unexpected results.

Learn more in our Collaboration Editing Status documentation.

Batch Mode for Collaborative Operations

You can now batch multiple user actions into single atomic operations (ChangeSets), reducing network overhead and ensuring coherent updates in collaborative editing scenarios.

Read more in our Collaboration ChangeSet docs.


Licensing

Improved Licensing Messages

Clearer, more descriptive licensing error messages assist with quicker troubleshooting and setup. License error scenarios now include:

  1. ​​Missing License​
  2. Invalid License String​
  3. ​​Product Mismatch​
  4. ​​Version Compatibility​
  5. ​​Expired License​​
  6. ​​Hostname Validation​

These will help developers solve licensing errors in their applications. 


We encourage you to explore these new features and incorporate them into your projects. As always, you can find more details in our documentation and see these capabilities in action in our online demos. This release continues our commitment to making SpreadJS the most comprehensive and high-performance JavaScript spreadsheet solution available.

Happy coding, and we look forward to seeing what you build with SpreadJS v18.2!

Tags:

comments powered by Disqus