node package manager
Love JavaScript? Your insights can make it even better. Take the 2017 JavaScript Ecosystem Survey »



A CMIS javascript library for node and browser

Build Status npm bower MIT License

API changes

Since version 0.3.0 The API for CmisSession.setContentStream() and CmisSession.appendContentStream() has changed. Please refer to the documentation for details.



$ npm install cmis
$ node
> var cmis = require('cmis');


$ bower install cmis

without bower

You can include directly minified version with dependencies:

<!-- do not use in production -->
<script src=""></script>


The entry point for all CMIS operation is the CmisSession

var url = '/alfresco/cmisbrowser';

Note: you may specify an absolute url if running in node, or using CORS

var session = cmis.createSession(url);

You may specify your credentials


All session methods which connect to a repository are asynchronous, and return a CmisRequest object.

You may take a look at the tests to see some usage examples:


API docs are available here:

Running tests

Install grunt:

$ npm install -g grunt-cli

Clone the repo:

$ git clone

Install dependencies:

$ cd CmisJS
$ npm install

Running tests on node

( will be used as test repository)

$ grunt test

You can specify different url, username and password

$ grunt test --url http://localhost:8080/alfresco/cmisbrowser --username admin --password secret

Running browser tests

$ grunt server

Visit http://localhost:9000/test in the browser.

Grunt will act as a proxy for, you can specify a different server:

$ grunt server --host localhost --port 8080 --path /alfresco/cmisbrowser

To change username and password you can specify them in the url



MIT license -