Node Roundup: bigint, mingy, kyoto-client, Blagovest's NPM Search

16 Feb 2011 | By Alex Young | Tags node server maths cli database

bigint

bigint by James Halliday is an arbitrary precision arithmetic library for Node. Large integers can be defined with strings, then manipulated with the library’s methods:

var bigint = require('bigint');

var b = bigint('782910138827292261791972728324982')
    .sub('182373273283402171237474774728373')
    .div(8);

Note that there’s also a destroy method:

Destroy a bigint. This module is using node-ffi so I can’t hook onto the GC easily. You only need to call this if you’re creating bigints in a loop.

Other methods include rand, pow, and more. This library can be installed with npm install bigint.

I actually have some experience in working with arbitrary precision arithmetic from back in my university days — I wrote a distributed fractal generator with various numerical libraries. In Ada… This sounds like a lot more fun!

Mingy

I like writing CLI stuff, so I thought Mingy by Mike Cantelon sounded pretty cool. He describes it as a “cheap and cheerful command parser/server for node.js”, perfect for creating command-line tools, text adventure games, and even MUDs.

It can run as a server (hence the MUD reference), copes with multiple users, includes validation support, and even has Expresso tests.

kyoto-client

kyoto-client (GitHub: wezm / kyoto-client, BSD License) by Wesley Moore is a Kyoto Tycoon client library. Kyoto Tycoon is a lightweight database server, from FAL Labs, who also created the older Tokyo Cabinet key value database.

The kyoto-client module has some good documentation on the site and seems straightforward to use. It can be installed with npm install kyoto-client.

Blagovest’s NPM Search

Blagovest’s NPM Search by Blagovest Dachev is a convenient (and fast) way to browse npm. In fact, it’s exactly the kind of thing I need to find things to write about for DailyJS. Thanks Blagovest!


blog comments powered by Disqus