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

volons

v0.0.43

Published

Open Source Internet Of Drones Platform

Downloads

5

Readme

Volons is still early access alpha software, use at your own risk.

volons

Open Source Internet of Drones Platform

const { Hive } = require('volons');

(async function main() {
    let hive = new Hive( 'ws://localhost:8656/admin' );
    await hive.connect();
    let vehicle = hive.vehicle( 'dev' );
    await vehicle.connect();
    await vehicle.takeoff();
})();

Running local stack

$ npm i -g volons
$ volons start

Installation

$ npm i volons

Volons: Open Source Internet of Drones Platform

Volons is composed of 4 leading opensource software. You can download the source code, install and run it manually. : Coding and connecting mission for UAVs.

Main components:

  1. Vehicles ( arducopter / DJI ) are components directly connected to the flight controller
  2. The Hive is the backend application managing security and authorizations
  3. The Monitor is a web application using Volons Javascript SDK to watch and control flights in real-time
  4. Volons Javascript SDK is the part you are going to interact with to code dynamic missions and triggers

Volons' API is object-oriented and easy to install, use and run.

Volons software architechure

Let's start. You don't need to know everything about Volons at this point. You can get more information by browsing Volons' Github repositories and Volons WIKI (Work in process).

This document presents a step-by-step tutorial with short explanations on how to start coding for drones.

You are familiar with Nodejs and Docker! So, you are going to install your development platform then takeoff and monitor a simulator in ~5 minutes.

Install And Start Local Volons Developer Stack

Requirements

You need standard third-party software to run Volons.

Its are probably already installed. If not, you should do it before to continue.

Volons Command Line Interface

Volons node module comes with a command line interface (CLI). To install the Volons CLI run:

$ npm i -g volons

This software helps you to start Volons' local platform.

Volons CLI arguments:

  • volons start: Start volons containers (Hive, simulator, vehicle-mavlinl)
  • volons stop: Stop volons running containers
  • volons ps: Print information about running containers (IP address, ports, name, env...)
  • volons help: Print help message How to use volons CLI
  • volons pull: Download latest docker images from Docker Hub

How it works

Four docker images compose the Volons local stack. Volons CLI executes docker-compose and docker commands to handle volons' containers. First, volons start downloads three images from Docker Hub. Then, by running docker-compose up to start containers with docker. If you are familiar with docker, you can download Volons' container images directly from Docker hub and configure more complicated stack. Add many hives and drones. Docker hub builds Volons docker images automatically from source code.

volons start

Your containers run altogether. Your local platform is ready, and you can connect with the SDK to start your first mission.

View running containers:

$ volons ps

This command displays information about Volons containers on your local machine.

You should see three running containers:

  • simulator: Dronekit-SITL based docker image with custom Volons configuration
  • vehicle-mavlink: the Volons adaptor for MAVLink vehicles (Arducupter)
  • hive: the Fleet Management System to connect drone and SDK

Use Volons node module to write code for drones with nodejs

Create a new folder to store your first program using Volons.

$ mkdir first-project-with-volons
$ cd first-project-with-volons

Init a Nodejs project and install Volons package. Copy Takeoff.js sample code from volons sample code folder.

$ npm install volons --save
$ cp ./node_modules/volons/examples/Takeoff.js ./Takeoff.js

Takeoff.js is a trival sample code.

$ cat ./takeoff.js
// This Volons script is a trivial script that
// - require Volons' library
// - connect Hive
// - connect aircraft
// - Send Takeoff command to drone

const { Hive } = require('volons');

async function main() {
    let hive = new Hive('ws://localhost:8656/admin');
    await hive.connect();

    console.log('Connected to hive');

    let vehicle = hive.vehicle('dev');
    await vehicle.connect();

    console.log('Connected to vehicle');

    console.log('takeoff');
    await vehicle.takeoff();
    console.log('Dev is flying');
}

Watch the one minute video on Youtube: From 'npm install' to monitor takeoff

Get more examples

Browse the volons sample code directory to get more examples.

$ ls ./node_modules/volons/examples/
  • Takeoff.js: Trivial mission to Takeoff. The one we've just talk about.
  • Goto.js: Demo of vehicle.goto().
  • Events.js: Use events to connect drone's events, this demo prints drones telemetry.

Docker Images

You can handle volons images and containers manually.

$ docker pull volons/hive
$ docker run -i volons/hive

or docker-compose

$ docker-compose -f ./node_modules/volons/cli/volons-cli/volons-docker-compose.yml up

Volons CLI could help a lot: $ volons start is entirely equivalent to the docker-compose command line.

Run and Monitor Mission

The volons/simulator docker image should connect to your local QGroundControl.

Coming soon: Volons provides a web-based application using the Volons SDK to display your Aircraft on a map with telemetry data.

Connect Aircrafts

You can find more information on our vehicle adaptors repositories:

Feel free to contact us to get help building software for your drones.

MIT Licence

Copyright (c) 2019 Volons SAS, https://www.volons.fr

Contact us

Volons is developed and maintained by Volons SAS, based in France, contact us! contact@volons.fr

Usefull links: