FaunaDB Adds Native GraphQL Support
Written by Kay Ewbank   
Thursday, 18 July 2019

FaunaDB has been updated with a GraphQL API, a web-based version of the Fauna shell, and support for role-based access control.

FaunaDB was developed by former technical leaders at Twitter and Couchbase who wanted to develop a new adaptive operational database to meet the needs they felt were unmet while they were working at Twitter.



FaunaDB was written in Scala and Java and runs on the JVM, with versions for Linux, Windows, and OS X. There are drivers for Scala, Java, JavaScript, C#, Python, Ruby, Go and Swift, along with an HTTP API. The database system includes a transactional query language,  ACID consistency, and multi-tenancy.

The latest release, 2.7, comes with a GraphQL API that makes use of a Calvin-inspired shared core. This provides uniform access to transactional consistency, user authorization, data access and temporal storage. The  GraphQL API supports three general functions: Queries, Mutations, and Subscriptions, though only the queries and mutations are natively supported. The team is working on native support for subscriptions is in the roadmap, but at the moment you have to write a custom function to set up a subscription.

Importing a GraphQL schema into the Fauna console

You can import GraphQL schemas from the GraphQL tab in the Fauna web editor, and the Prisma GraphQL Playground IDE has been integrated into the Fauna Cloud Console, offering a way to work with GraphQL inside the console.

The new version of FaunaDB also adds support for Role-based access control (RBAC) as a replacement for FaunaDB’s current resource-based security model. Until now, access within FaunaDB was restricted to four pre-defined roles - admin, server, server- read-only, or client. The new support means developers can define custom roles that give access to only the data the user needs to see.

Another improvement to the new release is the addition of a web-based version of the Fauna Shell.  This lets users access the Shell command-line from any browser, and run FQL commands and functions directly in the browser.

Support has also been added for recursive user-defined functions, so you can now make recursive calls to user-defined functions. Since recursive calls can be very resource-intensive, the number of calls is restricted to a hard limit of 200.



More Information

Fauna Website

Related Articles

Developer Edition Of FaunaDB Enters Preview

Couchbase Mobile Version Adds Sync Gateway

Couchbase Server 4.0 Now With N1QL

FireBase Improves Analytics

Amazon DynamoDB Accelerator 

Linq and XML 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, Facebook or Linkedin.


Microsoft Improves Python Support In VSCode

Visual Studio Code has a new extension to improve Python support. Pylance adds fast, static type checking, autocomplete, and live type information about symbols among other features to the existing Py [ ... ]

Linux Foundation Launches Open Source COVID Group

The Linux Foundation has set up a group to bring together a number of open source projects that are working to fight COVID-19.  The Linux Foundation Public Health (LFPH) builds, secures, and sust [ ... ]

More News





or email your comment to: comments@i-programmer.info

Last Updated ( Friday, 19 July 2019 )