npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

simple-xlsx

v1.1.1

Published

pull a json table out of excel file

Downloads

19

Readme

simple-xlsx

get a table out of an excel spreadsheet.

Written by @dominictarr, adopted by @zeke.

Example

fs.createReadStream('accounts.xlsx')
  .pipe(SimpleXlsx(function (err, table) {
    if(err) throw err
    console.log(table)
  })

or as command line tool

Convert stdin into JSON arrays.

curl https://bestspreadsheets.com/sheet1.xlsx | simple-xlsx

how it all works.

The excell spreadsheet format is a bit strange. basically, it's XML files, inside a zip archive, which sounds easy, but the great thing about this is that it's easy to add more stuff when ever you feel like.

So, you unzip the archive, and then you look in the xl/worksheets/work1.xml file. This contains the actual data, plus some style information about how to display the columns. Except for long strings that would be too easy. long strings are stored in the xl/sharedStrings.xml file, and indexed by numbers in the worksheet (<c t=s><v>{number}</v><c>)

Pointers in a text format! There is also more style information (fonts etc) in xl/styles.xml but never mind that.

This seems to work. I basically had to write it while trying to understand other xlsx parsers that I was evaluating...

DISCLAIMER OF WARRANTY

The Software is provided "AS IS" and "WITH ALL FAULTS," without warranty of any kind, including without limitation the warranties of merchantability, fitness for a particular purpose and non-infringement. The Licensor makes no warranty that the Software is free of defects or is suitable for any particular purpose. In no event shall the Licensor be responsible for loss or damages arising from the installation or use of the Software, including but not limited to any indirect, punitive, special, incidental or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. The entire risk as to the quality and performance of the Software is borne by you. Should the Software prove defective, you and not the Licensor assume the entire cost of any service and repair.

License

MIT