Advanced Excel-Like Functionality With JavaScript Spreadsheet Components


Unleash the power of Excel functionality in your JavaScript enterprise apps with these dependency-free JavaScript spreadsheet components. SpreadJS provides industry-leading support for delivering Excel-like experiences in your JavaScript applications with zero dependencies on Excel. Based on 20+ years of creating spreadsheets for enterprise developers, we know what features you need - at the top of the list is Excel compatibility. Create enterprise spreadsheets, grids, dashboards, and forms with the comprehensive API. Includes a powerful calculation engine with 500+ functions.

Excel-Like Features in JavaScript

Import and Export Excel Files

Unlike other JavaScript spreadsheets, SpreadJS provides complete support for Excel files. Load complex Excel files, make changes, save the data, or export to a file.


Advanced Calculations

With 500+ built-in functions, custom functions, dynamic arrays, indirect/aggregate/async functions, formula textboxes, and support for international function names, SpreadJS Is ready to support your most demanding calculations needs.


Tables make it easier to manage and analyze related data. Like Excel, SpreadJS supports table features like auto-expand, conditional formatting, data validation, built-in context menu, and more.



With the built-in filter dialog, users can automatically filter their data or create custom filters to show and hide the relevant data based on their application's needs.

Pivot Tables

SpreadJS includes full support for Pivot Tables, including the import and export of Excel pivot tables. This optional deployment add-on is a powerful data analysis tool used to group, calculate, summarize, and present large amounts of data.


Slicers offer an intuitive, visual way to filter your data and indicate the currently filtered state. Multiple slicer types for charts and hierarchical information are available and can be used to recreate filtering options used on consumer websites.


Visualize data using the most popular charts. Supported charts include column, line, pie, area, bar, XYScatter, stock, combo, radar, sunburst, and treemap with additional support for trendlines, error bars, and other customizations.


Sparklines provide a way to visualize data, such as trends at the cell level. Sparklines include Cascade, BoxPlot, Bullet, HBar and VBar, Pareto, Pie, Area, Scatter, Spread, Stacked, Vari, Compatible, Month, Year, and custom sparklines.

180+ Shapes

SpreadJS includes support for many of the Excel shapes and advanced functionality using data-driven shapes. Dynamically generate and create interactive shape properties using data from a database or other data sources.



SpreadJS makes it easy for users to enter data using AutoFill to automatically fill similar data or increment the values in adjacent values. Users can also use custom fill to programmatically load the data at runtime.

Conditional Formatting

Use conditional formatting to automatically highlight important information or spot trends in your data using your specific values. SpreadJS supports the import and export of most Excel rules.

Outline and Group Data

Use an outline to group and summarize data. Users can create an outline of rows or columns and expand or collapse these groups to show or hide relevant data as needed.

Borders and Gridlines

SpreadJS supports most of the borderline styles commonly found in Excel, such as dashDot, dashDotDot, empty, medium, mediumDashDot, SlantedDashDot, thick, thin, and more.

Cell Formatting

SpreadJS supports extensive formatting at the cell level. Format any cell property, including the cell type, font, font size, border, colors, alignment, word wrap, indentation, cell padding and labels, orientation, validation, tags, comments, and more.

Cell Types

SpreadJS includes a variety of cell types that users can apply to any cell. Define the type of information that can be entered and displayed in any cell or use predefined dropdowns to make it easier for users to select and enter valid data.

Printing and Exporting to PDF

SpreadJS supports printing and exporting to a PDF file. Users can also import your Excel .xlsx files and export them to PDF. The Export operation uses the printInfo object for page setting and provides support for all the printing features that are available in SpreadJS.