🚀 Fauna Architectural Overview White Paper: Learn how Fauna's database engine scales with zero ops required
Download free
Fauna logo
Product
Solutions
Pricing
Resources
Company
Log InContact usStart for free
Fauna logo
Pricing
Customers
Log InContact usStart for free
© 0 Fauna, Inc. All Rights Reserved.

FQL: A relational database language with the flexibility of documents

A strongly-typed language that combines the ability to express declarative relational queries and functional business logic in strongly consistent transactions

REQUEST A DEMOVIEW DOCUMENTATION

Introduction to Fauna

Explore Fauna in 2 minutes: Explore Fauna's robust features in 2 minutes: API delivery model, automatic distribution & replication, document flexibility with relational consistency & querying power, modern and identity-driven security, native multi-tenancy, and more.

WATCH VIDEO

“Our team is mainly made up of front-end and full-stack developers with JavaScript and TypeScript backgrounds. Since the FQL syntax is so similar to those languages, our development velocity is much faster compared to using SQL, which has a completely different mental model and syntax.”

Cameron Bell

Head of Software, Systems, & Data @ Connexin

Intuitive. Familiar. Powerful.

FQL draws inspiration from programming languages like TypeScript and Python, making it familiar and easy to adopt. Context-specific suggestions from developer tools, FQL's robust type checking, and its regular syntax help you quickly build correct queries, while its controls over query execution ensure consistent performance as your application grows.

“Fauna is the reason we are still in business. There is not enough good stuff I can say about the folks over there.” Read case study

Alice

From Wonderland

The data you want — and nothing more

Eliminate over-fetching, minimize round-trips, and simplify client-side logic. FQL's concise, GraphQL-inspired projection syntax combined with its JSON-like, flexible result format lets you structure your query result exactly how your application expects it, without the additional overhead of an ORM.

Efficient transactions as requests

FQL is a full-fledged language capable of directly expressing complex control flow and conditional logic. Its simple transaction-as-request model solves the problem of inefficient, multi-stage transactions and further enables stateful operations for serverless and edge compute environments. All while avoiding the need to manage expensive, stateful connections.

Manage your database as code

Fauna's schema language is the source code for your data model. Define your application's database resources--collections, constraints, access controls, and user-defined functions--in one place, and leverage standard source-driven workflows to treat your database as just another deployment target. Let Fauna safely apply the minimal changes necessary as schema evolves.

Dynamically composable, yet secure.

FQL's drivers offer template-based query interpolation built upon a secure wire protocol that prevents injection vulnerabilities. Leverage FQL's uniform, composable structure to dynamically generate sophisticated queries based on application input.

Purpose-built for application development

JOINS (SQL vs FQL)

Unlike SQL, FQL automatically resolves relations providing concise aliasing and projection.

COMPOSABILITY (SQL vs FQL)

No verbose SQL joins: FQL uses iterators, method chaining, and inline projection...

... SQL’s joins often contain redundant data; FQL’s result sets adhere to your domain model.

CONDITIONAL LOGIC (SQL vs FQL)

FQL allows variables and conditionals without depending on outside language logic.

Architectural Overview

A distributed document-relational database delivered as a cloud API

DOWNLOAD NOW

“With FQL, Fauna marries simplicity with power. Now, we can do aggregation and projection more effortlessly than in MongoDB. FQL outshines SQL with minimal effort and complexity.”

Matt Haman

Rownd, CTO

Get started building with Fauna

Explore resources that can help get you up and running in minutes.

Sign up

Ready to build robust apps that scale without limits? Start today.

Start free trial

Quick start

Get up and running quickly with an interactive introduction to Fauna

GET STARTED

Multi-tenant SaaS Sample App

Learn how to build a multi-tenant, multi-region SaaS app without ops using Fauna and AWS

BUILD THE SAMPLE APP

New to Fauna Query Language?

This guide can help you get started with FQL in under 10 minutes.

READ MORE

Workshops

Learn how to build complete applications using technology like AWS, Cloudflare, and more.

EXPLORE THE WORKSHOPS

FAQs

Have other questions? Feel free to contact us, or browse our documentation.

CONTACT USVIEW DOCUMENTATION

What is event streaming in Fauna?

Can I filter the types of updates I receive from an event stream?

How does Fauna's event streaming handle network disruptions or disconnections?

Are there any limitations on the number of streams I can create?

Can event streaming be used for collaborative applications?

What security measures are in place for event streaming?

Get started building with Fauna

Explore resources that can help get you up and running in minutes.

Sign up

Ready to build robust apps that scale without limits? Start today.

Start free trial

Quick start

Get up and running quickly with an interactive introduction to Fauna

GET STARTED

Multi-tenant SaaS Sample App

Learn how to build a multi-tenant, multi-region SaaS app without ops using Fauna and AWS

BUILD THE SAMPLE APP

New to Fauna Query Language?

This guide can help you get started with FQL in under 10 minutes.

READ MORE

Workshops

Learn how to build complete applications using technology like AWS, Cloudflare, and more.

EXPLORE THE WORKSHOPS

FAQs

Have other questions? Feel free to contact us, or browse our documentation.

CONTACT USVIEW DOCUMENTATION

What is Fauna?

How much does it cost?

How does Fauna support multiple tenants for my service?

How much bandwidth do I get?

Does Fauna have any tools to help me migrate off of my current database?

How does Fauna support multiple tenants for my service?

What is Fauna Query Language (FQL)?

I’m a SQL user, why should I learn yet another query language?

Ready to get started?

Launch a new app, modernize an existing app, and scale seamlessly across regions with Fauna.

REQUEST DEMOSTART FOR FREE
START FREE TRIALGET A DEMO

Ready to get started? Launch a new app, modernize an existing app, and scale seamlessly across regions with Fauna.

START FREE TRIALGET A DEMO

Ready to get started? Launch a new app, modernize an existing app, and scale seamlessly across regions with Fauna.

LEARN MORE

Blog