Migrate an old Tabletop.js project to PapaParse by following the before-and-after code examples in the README
Understand the historical pattern of using a Google Sheet as a lightweight database for a simple website
This library no longer works, the Google API it relied on was shut down in 2020. Use PapaParse instead.
Tabletop.js was a JavaScript library that let you pull data from a published Google Spreadsheet and use it on a web page. The idea was simple: publish your Google Sheet to the web, pass the URL to Tabletop, and get back your spreadsheet rows as JavaScript objects with no extra dependencies. It was aimed at journalists, designers, and others who wanted to use a spreadsheet as a lightweight database for a simple site without setting up a backend. The README opens with a prominent warning: do not use Tabletop. Google shut down the underlying infrastructure it relied on in 2020, so the library no longer works. The author recommends using a different library called PapaParse instead, which can read a Google Sheet published as CSV directly. The README shows a before-and-after code comparison to help with migration. After the warning, the README continues with the original documentation for historical reference. The basic workflow was: publish your spreadsheet from the File menu in Google Sheets, share it so anyone with a link can view it, include the Tabletop script on your page, call Tabletop.init with the spreadsheet URL, and provide a callback function that receives the data. Each row in the spreadsheet became a JavaScript object with properties matching the column headers. Tabletop supported multiple sheets within a single spreadsheet, custom callbacks, promises, and could be used from Node.js via npm as well as directly in a browser. It offered options to filter columns, work with multiple named sheets, or return data in different formats. The README includes a troubleshooting section, notes about CORS behavior, and an explanation of why it does not work with Google organizational accounts (ones tied to a workplace or school domain). There is also a list of community-contributed wrappers and plugins for frameworks like React and Angular, though all of these are similarly non-functional now that the underlying API is gone.
← jsoma on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.