nuxeo_client 0.3.2

Nuxeo Dart

Dart Client Library for Nuxeo API #

Build Status

Dart client library for the Nuxeo Automation and REST API.

The library can work in a browser, or in the console using the same API.

Getting started #

Try It #

  • Start the Dart Editor
  • Create a new Dart project
  • Add the nuxeo_client dependency to your pubspec.yaml file.
  nuxeo_client: any
  • Import the nuxeo_client library:
    • For browser applications use:
import 'package:nuxeo_client/browser_client.dart' as nuxeo;
- For standalone/console applications use:
import 'package:nuxeo_client/standalone_client.dart' as nuxeo;
  • Create your client:
var nx = new nuxeo.Client()
  • Call some operations, for instance:
  .then((docs) {
  • Checkout the docs for more.

Documentation #

API Reference

Running the TCK #

Nuxeo provides a TCK (Test Compatibility Kit) that can be used to test the implementation of an automation client library.

You can run the Dart Automation Client TCK with your own Nuxeo server (version >= 5.8).

Prerequisites #

nuxeoctl mp-install nuxeo-rest-api --accept true

Standalone Nuxeo Client #

  • Start Nuxeo server
  • Run the console tests harness at test/console_test_harness.dart
  • Check the console output for the test results

Browser Nuxeo Client #

Setup CORS #

  • Add a CORS config contribution to allow Dartium to do cross-domain requests to your Nuxeo server:
<?xml version="1.0"?>
<component name="org.nuxeo.ecm.platform.web.dart.tck">
 <extension target="org.nuxeo.ecm.platform.web.common.requestcontroller.service.RequestControllerService" point="corsConfig">
    <corsConfig name="dartTCK" allowOrigin="" supportedMethods="GET,POST,HEAD,OPTIONS,PUT,DELETE">
    <corsConfig name="dartTCKApi" allowOrigin="" supportedMethods="GET,POST,HEAD,OPTIONS,PUT,DELETE">

You can just put it in a *-config.xml file in nxserver/config or create a custom template (don't forget to update nuxeo.conf).

You can check if CORS is working properly with curl:

curl --verbose -u Administrator:Administrator -H "Origin:" -H "Access-Control-Request-Method: POST" -H "Access-Control-Request-Headers: X-Requested-With" -X OPTIONS http://localhost:8080/nuxeo/site/automation

Run the TCK #

  • Start Nuxeo server

  • Run the console based tests

    dart test/console_test_harness.dart

  • Run the browser tests harness at test/browser_test_harness.dart

    use 'Run in Dartium' from Dart Editor

  • Check the browser for the test results

Authors #

About Nuxeo #

Nuxeo provides a modular, extensible Java-based [open source software platform for enterprise content management] 1 and packaged applications for [document management] 2, [digital asset management] 3 and [case management] 4. Designed by developers for developers, the Nuxeo platform offers a modern architecture, a powerful plug-in model and extensive packaging capabilities for building content applications.

More information on:

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  nuxeo_client: ^0.3.2

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:nuxeo_client/._automation.dart';
import 'package:nuxeo_client/automation.dart';
import 'package:nuxeo_client/browser_client.dart';
import 'package:nuxeo_client/client.dart';
import 'package:nuxeo_client/http.dart';
import 'package:nuxeo_client/._rest.dart';
import 'package:nuxeo_client/rest.dart';
import 'package:nuxeo_client/standalone_client.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Analysis issues and suggestions

Support Dart 2 in pubspec.yaml.

The SDK constraint in pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see

Maintenance issues and suggestions

Make sure dartdoc successfully runs on your package's source files. (-10 points)

Dependencies were not resolved.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.0.0 <2.0.0