ArangoDB 3.12 Product Release Announcement! Read the blog for details. Read Blog

Vector-5

ArangoJS 6.0.0 released: Load Balancing, Automated Failover and completely written in TypeScript

Estimated reading time: 2 minutes

Version 6.0.0 of the JavaScript driver arangojs is now available (Find it on GitHub).

This is a major release that introduces a small number of breaking changes so make sure to check out the arangojs changelog before upgrading. The most significant additions in this release are support for load balancing and automated failover as well as improved browser and TypeScript support.

(more…)

Updated GraphQL Sync in ArangoDB 3.2

Estimated reading time: 1 minutes

Just in time for the upcoming 3.2.0 release, we have updated the graphql-sync module for compatibility with graphql-js versions 0.7.2, 0.8.2, 0.9.6 and 0.10.1. The graphql-sync module allows developers to implement GraphQL backends and schemas in strictly synchronous JavaScript environments like the ArangoDB Foxx framework by providing a thin wrapper around the official GraphQL implementation for JavaScript.

(more…)

Using GraphQL with NoSQL database ArangoDB

Estimated reading time: 5 minutes

GraphQL is a query language created by Facebook for modern web and mobile applications as an alternative to REST APIs. Following the original announcement alongside Relay, Facebook has published an official specification and reference implementation in JavaScript. Recently projects outside Facebook like Meteor have also begun to embrace GraphQL.Users have been asking us how they can try out GraphQL with ArangoDB. While working on the 2.8 release of our NoSQL database we experimented with GraphQL and published an ArangoDB-compatible wrapper for GraphQL.js. With the general availability of..

(more…)

Foxx: Module resolution will change in 2.8

Estimated reading time: 1 minutes

The implementation of the JavaScript require function will be adjusted to improve compatibility with npm modules. The current implementation in 2.7 and earlier versions of ArangoDB strictly adheres to the CommonJS module standard, which deviates from the behaviour implemented in Node and browser bundlers.

Module paths will now be resolved in the following ways:

  • relative paths (e.g. ./hello) will be resolved relative to the current file
  • absolute paths (e.g. /hello) will be resolved relative to the file system root
  • global names (e.g. hello) will be resolved by looking in the following places:
(more…)

ArangoJS 4 alpha available now

Estimated reading time: 1 minutes

The first alpha of the official JavaScript driver arangojs‘ upcoming major release is now available on npm.

Version 4 streamlines the driver’s API by removing unnecessary server roundtrips to obtain references to collections and graphs that already exist:

Before:

var db = require('arangojs')(); db.collection('users') .then(function(collection) { return collection.import(allTheUsers) }) .then(function() { return db.collection('blogs') }) .then(function(collection) { return collection.import(allTheBlogs); }) .then(function() { return db.collection('articles') }) .then(function(collection) {..
(more…)

Document your Foxx apps with Swagger 2

Estimated reading time: 1 minutes

The generated API documentation in ArangoDB 2.6 has been updated to Swagger 2. To see the API documentation for any of your Foxx apps, open the web admin frontend and select your app from the Applications tab. For information on how to describe your own APIs in the generated documentation, see the ArangoDB documentation.

(more…)

Improved System User Authentication

Estimated reading time: 1 minutes

ArangoDB can easily be configured to require HTTP authentication for access to the web admin frontend or the REST API. But while Basic Auth works fine for APIs, the user experience in the web admin frontend was decidedly sub-par: browsers would often persist the authentication credentials indefinitely, logging out was made difficult or impossible and switching users was hit-or-miss.

The upcoming ArangoDB 2.6 release introduces cookie-based authentication for the web admin frontend, allowing you to side-step the issue altogether by using the built-in session manager instead of the low-level..

(more…)

Foxx Dependencies for More Composable Foxx Apps

Estimated reading time: 1 minutes

Previously on the ArangoDB blog we saw how we can use the configuration field in manifest.json to make Foxx apps configurable and more re-usable. This is all well and good if we just want to pass in simple values to a Foxx app but sometimes you want to pass in entire Foxx apps. This is where dependencies come in to save the day.

Let’s say you want to use the session storage provided by the ArangoDB sessions app available on the Foxx app store using Foxx exports and imports. Because you hadn’t yet heard of configurations, you simply hard-coded the mount path of your copy of the sessions app in..

(more…)

ArangoDB JavaScript Driver 3.7: Promises and Performance

Estimated reading time: 1 minutes

ArangoJS, the official ArangoDB JavaScript client, has been updated to version 3.7.0. The new release features significant performance improvements in Node.js and io.js. The dependency on the third-party request module has been replaced with a thin wrapper around node’s own http module, bringing a 3-4x performance improvement for consecutive requests by maintaining a connection pool.

(more…)

Reusable Foxx Apps with Configurations

Estimated reading time: 1 minutes

While the optional configuration field in Foxx manifests had experimental support all the way back to ArangoDB 2.1, the feature was previously undocumented and not well understood. The upcoming ArangoDB 2.6 release officially introduces Foxx configurations, allowing you to make your existing Foxx apps more re-usable and to make better use of third-party apps.

Let’s say your Foxx app needs an API key to make a request to a third-party service using the request module introduced in ArangoDB 2.5. Without using configurations, your code might contain the hard-coded API key:

(more…)
«
1 2
»