Spreadsheets are an outstanding tool for building small software. However, mainstream spreadsheet software lacks the tools to create spreadsheets that are maintainable, error-free and easy to work with – spreadsheets that are "production-ready".
Bean is an exploration into new/overlooked ideas in the spreadsheet paradigm to solve this problem. It's intended to be a playground for trying out features (and maybe eventually become a full-fledged spreadsheet software).
This involves looking at spreadsheets as a programming environment from the ground up. Read this blogpost for the full background. This talk is a great introduction to the problem.
Play around with it (it's super early).
Updated on: 31-Oct-2023
Bean has these basics in place: a grid, a parser, an interpreter for a small formula language and reactive recalculation (with dynamic arrays).
Please shoot us an email at bean @ nilenso dot com and we'd be happy to walk you through.
We are currently trying out the following features
- A "secondary space" for linear thinking
- Generating provenance for all calculations for auditability
- Flexible tables as a primary data structure
A repository with the accompanying research work will be put up soon.
Bean is written in ClojureScript. You'll need java, npm and nodejs installed. Then run
npm install
npx shadow-cljs watch ui
You can access Bean running locally at http://localhost:8090.
Installation instructions for Java can be found here.
npx shadow-cljs compile test && node tests.js