Provides bindings to the libosmium C++ library.
Should you use node-osmium?
If you want top performance use libosmium directly in C++. These node-osmium
much slower than working in C++ directly. Consider
node-osmium only for small
extracts and prototyping. For large extracts or planet processing we recommend
leveraging the libosmium C++ API
instead of using node-osmium.
Is node-osmium actively developed?
@springmeyer and @joto are maintaining node-osmium but not actively adding features. We will consider pull requests adding features only when they come with very solid tests, add very clear value to the bindings, and seem easy to maintain.
- Node.js v4.x, v6.x, v8.x, v10.x
- Mocha (http://mochajs.org/, for tests)
- Compiler that supports
-std=c++11(>= clang++ 3.6 || >= g++ 4.8)
- libosmium >= 2.10.3 (Debian/Ubuntu: libosmium2-dev)
- protozero >= 1.5.1 (Debian/Ubuntu: libprotozero-dev)
- Utfcpp This is included in the libosmium repository and might or might not have been installed with it. See the libosmium README. (Debian/Ubuntu: libutfcpp-dev)
- Boost >= 1.55 with development headers (Debian/Ubuntu: libboost-dev)
- zlib (Debian/Ubuntu: zlib1g-dev)
- expat Debian/Ubuntu: libexpat1-dev
- sparsehash Debian/Ubuntu: libsparsehash-dev
If you have problems compiling, install the dependencies for libosmium first and make sure it works. Then you should be able to get node-osmium to compile.
By default, binaries are provided and no external dependencies or compile is needed.
npm install osmium
We currently provide binaries for 64 bit OS X and 64 bit Linux. Running
npm install on other platforms will fall back to a source compile (see
Developing below for build details).
If you wish to develop on
node-osmium you can check out the code and then
git clone https://github.com/osmcode/node-osmium.git cd node-osmium make
make debug to build with debug information. Use
make coverage to build
with code coverage.
make VERBOSE=1 to output compiler calls used etc.
npm install mocha make test
node-osmium is available under the Boost Software License. See LICENSE.txt for details.