This is really cool, and a nice implementation. My question is about target customers. Presumably, you have two sides to this: non-devs writing and uploading the spreadsheet, and devs writing a client to to consume its API. I would imagine these two parties would be in the same company. e.g., Sales team wants some analytics dashboards written over their spreadsheets. So they upload a sheet and give it the API to devs, and then the devs consume the API, analyze the data, and pull it into a dashboard. Also presumably, it would be the devs recommending to the non-devs that they upload their spreadsheet here for easy access.
But if this is the case, why would the devs choose to use this over any number of CSV or XLS parsing libraries? You can write a simple web server that takes a spreadsheet as an upload, and then parse it to CSV, in less than 50 lines of code. The CSV reading APIs in any language are very easy to use and parse to native data structures, and I would argue maybe even easier than using an API like this.
What is your value proposition to devs in this scenario? Or I missing an entirely different use case?
Your two sides scenario tallies with my own, except I'd imagine they're not usually part of the same company (but other people will have different use cases, of course).
In your example, you could absolutely use an existing CSV or XLS parser to do this. The problem is that you're now responsible for making sure that you've got the latest data, have parsed it, and have imported it. As a developer, Sheetlabs allows you to put the onus back on the data publisher to ensure that they're giving you the latest data. Plus it's in an easier to consume format too!
But if this is the case, why would the devs choose to use this over any number of CSV or XLS parsing libraries? You can write a simple web server that takes a spreadsheet as an upload, and then parse it to CSV, in less than 50 lines of code. The CSV reading APIs in any language are very easy to use and parse to native data structures, and I would argue maybe even easier than using an API like this.
What is your value proposition to devs in this scenario? Or I missing an entirely different use case?