summaryrefslogtreecommitdiff
path: root/platform/node/DEVELOPING.md
diff options
context:
space:
mode:
Diffstat (limited to 'platform/node/DEVELOPING.md')
-rw-r--r--platform/node/DEVELOPING.md29
1 files changed, 29 insertions, 0 deletions
diff --git a/platform/node/DEVELOPING.md b/platform/node/DEVELOPING.md
new file mode 100644
index 0000000000..cd03fa6ca3
--- /dev/null
+++ b/platform/node/DEVELOPING.md
@@ -0,0 +1,29 @@
+# Developing the Mapbox GL Native Node.js module
+
+This document explains how to build the [Node.js](https://nodejs.org/) bindings for [../../README.md](Mapbox GL Native) for contributing to the development of the bindings themselves. If you just want to use the module, you can simply install it via `npm`; see [README.md](README.md) for installation and usage instructions.
+
+## Building
+
+To develop these bindings, you’ll need to build them from source. Building requires [installing all of the basic dependencies needed for Mapbox GL Native](../../INSTALL.md), then running:
+
+ npm install --build-from-source
+
+From the root directory. This will compile the Node.js bindings and install module dependencies.
+
+To recompile just the C++ code while developing, run `make node`.
+
+To create an Xcode project and use a GUI debugger in the case of a crash, run `make xnode`.
+
+## Testing
+
+To test the Node.js bindings:
+
+```
+npm test
+```
+
+To run the visual render test suite:
+
+```
+npm run test-suite
+```