Bilig WorkPaper runtime for Node.js services, agent tools, and server-side spreadsheet formulas.
WorkPaper API, CLI evaluator, and MCP server for headless spreadsheet formulas in Node.js services and agents.
HyperFormula is a JavaScript engine for efficient processing of spreadsheet-like data and formulas
Spreadsheet language support for CodeMirror
A Spreadsheet Component for Angular
Headless spreadsheet formula engine for Node.js services and agents with WorkPaper JSON persistence and formula readback.
Google Sheets API -- simple interface to read/write data and manage sheets
Jspreadsheet formula pro is a JavaScript software to parse spreadsheet-like formulas.
KendoReact Spreadsheet package
Simple, customizable yet performant spreadsheet for React
A Complete Microsoft Excel-like JavaScript Spreadsheet for Enterprise Applications
An object-oriented language for parsing and pattern matching
Feature-rich JavaScript Spreadsheet (Excel) control with built-in support for selection, editing, formatting, importing and exporting to Excel
Handsontable is a JavaScript Data Grid available for React, Angular and Vue.
TypeScript types for JSF: a JSON spreadsheet representation
Professional JavaScript library for converting spreadsheet files to JSON format. Supports 16+ file formats for use in Node.js and browser applications.
Handlebars helper to run spreadsheet-style formulas
SheetJS Spreadsheet data parser and writer
Feature-rich JavaScript Spreadsheet (Excel) control with built-in support for selection, editing, formatting, importing and exporting to Excel for React
Jspreadsheet is a lightweight, vanilla javascript plugin to create amazing web-based interactive data grids with spreadsheet like controls compatible with Excel, Google Spreadsheets and any other spreadsheet software.
Format data using ECMA-376 spreadsheet Format Codes
Google Drive MCP server with Google Workspace awareness — Docs, Sheets, Slides, Shared Drives, Labels, Approvals, and domain-wide delegation support
SheetJS Spreadsheet data parser and writer
SpreadJS Designer Component present as a control that could be embedded into your web application easily, and also provided flexible, customizable configuration to achieve your business logic.
Soroban makes it easy to extract and execute formulas from Excel spreadsheets. It rewrites Excel formulas as Ruby expressions, and allows you to bind named variables to spreadsheet cells to easily manipulate inputs and capture outputs.
Soroban makes it easy to extract and execute formulas from Excel spreadsheets. It rewrites Excel formulas as Ruby expressions, and allows you to bind named variables to spreadsheet cells to easily manipulate inputs and capture outputs.
Parse Excel spreadsheets with a simple API. Read cell values, formulas, styles, comments, data validations, named ranges, and merged cells from xlsx and xlsm files. Supports streaming from strings and IO objects with lazy row loading for large files.
Ruby Cloud SDK wraps Aspose.Cells REST API so you could seamlessly integrate Microsoft Excel® spreadsheet generation, manipulation, conversion & inspection features into your own applications. Aspose.Cells Cloud for Ruby enables you to handle various aspects of Excel files, including cell data, styles, formulas, charts, pivot tables, data validation, comments, drawing objects, images, hyperlinks, and so on. Additionally, it supports operations such as splitting, merging, repairing, and converting to other compatible file formats.
Amoskeag is a purely functional, statically-validated Domain-Specific Language (DSL) designed for high-security, sandboxed evaluation. It's perfect for: - Business Rules Engines (insurance underwriting, loan approval) - Template Engines (secure alternative to ERB with more power than Liquid) - Spreadsheet Formula Engines (Excel-like calculations) This gem provides native Ruby bindings to the Amoskeag library, compiled from Rust for maximum performance and security.
# Excel to Code [](https://travis-ci.org/tamc/excel_to_code) excel_to_c - roughly translate some Excel files into C. excel_to_ruby - roughly translate some Excel files into Ruby. This allows spreadsheets to be: 1. Embedded in other programs, such as web servers, or optimisers 2. Without depending on any Microsoft code For example, running [these commands](examples/simple/compile.sh) turns [this spreadsheet](examples/simple/simple.xlsx) into [this Ruby code](examples/simple/ruby/simple.rb) or [this C code](examples/simple/c/simple.c). # Install Requires Ruby. Install by: gem install excel_to_code # Run To just have a go: excel_to_c <excel_file_name> This will produce a file called excelspreadsheet.c For a more complex spreadsheet: excel_to_c --compile --run-tests --settable <name of input worksheet> --prune-except <name of output worksheet> <excel file name> See the full list of options: excel_to_c --help # Gotchas, limitations and bugs 0. No custom functions, no macros for generating results 1. Results are cached. So you must call reset(), then set values, then read values. 2. It must be possible to replace INDIRECT and OFFSET formula with standard references at compile time (e.g., INDIRECT("A"&"1") is fine, INDIRECT(userInput&"3") is not. 3. Doesn't implement all functions. [See which functions are implemented](docs/Which_functions_are_implemented.md). 4. Doesn't implement references that involve range unions and lists (but does implement standard ranges) 5. Sometimes gives cells as being empty, when excel would give the cell as having a numeric value of zero 6. The generated C version does not multithread and will give bad results if you try. 7. The generated code uses floating point, rather than fully precise arithmetic, so results can differ slightly. 8. The generated code uses the sprintf approach to rounding (even-odd) rather than excel's 0.5 rounds away from zero. 9. Ranges like this: Sheet1!A10:Sheet1!B20 and 3D ranges don't work. Report bugs: <https://github.com/tamc/excel_to_code/issues> # Changelog See [Changes](CHANGES.md). # License See [License](LICENSE.md) # Hacking Source code: <https://github.com/tamc/excel_to_code> Documentation: * [Installing from source](docs/installing_from_source.md) * [Structure of this project](docs/structure_of_this_project.md) * [How does the calculation work](docs/how_does_the_calculation_work.md) * [How to fix parsing errors](docs/How_to_fix_parsing_errors.md) * [How to implement a new Excel function](docs/How_to_add_a_missing_function.md) Some notes on how Excel works under the hood: * [The Excel file structure](docs/implementation/excel_file_structure.md) * [Relationships](docs/implementation/relationships.md) * [Workbooks](docs/implementation/workbook.md) * [Worksheets](docs/implementation/worksheets.md) * [Cells](docs/implementation/cell.md) * [Tables](docs/implementation/tables.md) * [Shared Strings](docs/implementation/shared_strings.md) * [Array formulae](docs/implementation/array_formulae.md)
# BELGIAN 2050 CALCULATOR TOOL A C version and ruby wrapper for the Belgian 2050 calcualtor ## GOTCHAS Some versions have a special formula in 2050!B2 that the translator doesn't recognise. Just write 2050 in that cell and recompile. Some tests fail for columns AN and AM on OUTPUT. I think this is due to rounding differences between excel and C. ## DEPENDENCIES 1. ruby 1.9.2 (including development headers) 2. basic c development headers This has ONLY been tested on OSX and on Ubuntu 64 bit EC2 ami. Grateful for reports from other platforms. In the util folder there is an example script that creates a new EC2 EMI, installs all the dependencies and then compiles the gem. It may be useful if you are trying to figure out the complete set of dependencies. ## INSTALLATION Note that this compiles the underlying c code, which might take 10-20 minutes or so gem install belgium_2050_model ## UPDATING TO NEWER VERSIONS OF EXCEL MODEL First of all, you need to be working on the github version of the code, not the rubygem: git clone http://github.com/decc/belgium_2050_model Then put the new spreadsheet in spreadsheet/2050Model.xlsx Then, from the top directory of the gem: bundle bundle exec rake The next step is to check whether lib/belgium_2050_model/belgium_2050_model_result.rb and lib/belgium_2050_model/model_structure.rb need to be altered so that they pick up the correct places in the underlying excel. The final stage is to build and install the new gem: gem build belgium_2050_model.gemspec gem install belgium_2050_model-<version>.gem ... where <version> is the version number of the gem file that was created in the folder. Now follow the instructions in the twenty-fifty server directory in order to ensure that it is using this new version of the gem.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.