JS-Parse is a bottom-up parser and tokenizer written in nodejs. The exciting thing about js-parse is the ability to create a parser which braodcasts events as each part of the parse tree is constructed, allowing you to begin processing parsed code while still parsing. Parser descriptions can also be modular allowing reuse and sharing of lower level parsing components.
JS-parse is still very much a work in progress, so please feel free to open issues or pull requests and suggest improvements. Future goals for the project currently are to simplify the parser description format and make it easier to create full-featured programming language parsers with very little effort.