JavaScript API library for OpenStack.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jenkins cdac2da771 Merge "Added documentation for releasing" 2 years ago
doc Added documentation for releasing 2 years ago
src Added tokenInfo() method to Keystone API 2 years ago
test Added tokenInfo() method to Keystone API 2 years ago
.babelrc Use babel-plugin-transform-runtime instead of babel-polyfill 2 years ago
.editorconfig Initial commit of project. 3 years ago
.eslintignore Added jasmine-based testing harness. 2 years ago
.eslintrc Updates linting rules 2 years ago
.gitignore Added jsdoc3 output to doc generation 2 years ago
.gitreview Update .gitreview 3 years ago
.istanbul.yml Created Version Class 2 years ago
.nsprc Added node-security-project checks 3 years ago
LICENSE Initial commit of project. 3 years ago
README.rst Add README 2 years ago
Vagrantfile Added vagrant file for devstack bootstrap 2 years ago
bindep.txt Added oslo-sphinx to bindep.txt 2 years ago
configure-devstack.js Added Neutron Service 2 years ago
karma.conf.babel.js Add functional tests for devstack gate 2 years ago
karma.conf.js Added Karma integration 2 years ago
package.json AbstractService will try to detect the versions resource in more places. 2 years ago Added networkList() method to neutron API 2 years ago
webpack.config.babel.js Add functional tests for devstack gate 2 years ago



JS-OpenStack-lib is a Javascript library for interacting with OpenStack clouds. The project aims to provide a constistent and complete set of interactions with OpenStack's many services, along with documentations, examples, and tools. This library is compatible with both browser and server side Javascript.


The following example simply connects to an OpenStack cloud and list flavors in the Compute service:

import OpenStack from 'js-openstack-lib';

// Initialize cloud
// cloudConfig is a JSON object corresponding to clouds.yaml
// (It is your responsibility to load and parse it)
const openStack = new OpenStack({
  region_name: 'Region1',
  auth: {
    username: 'user',
    password: 'pass',
    project_name: 'js-openstack-lib',
    auth_url: ''
// List all flavors
  .then((networks) => {


Coming soon


If you're interested in contributing, the following will help you get started:

Bug Tracker!/project/844

Code Hosting

Code Review,n,z

Please read Developer's Guide before sending your first patch for review


Apache 2.0