Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

openfga/language

Repository files navigation

OpenFGA Language

ANTLR Grammar for the OpenFGA DSL and parser from and to the OpenFGA JSON Syntax

Table of Contents

  • About OpenFGA
  • Resources
  • Packages
  • About This Repo
  • CLI
  • Community Parsers
  • Contributing
  • License

About

OpenFGA is an open source Fine-Grained Authorization solution inspired by Google's Zanzibar paper. It was created by the FGA team at Auth0 based on Auth0 Fine-Grained Authorization (FGA), available under a permissive license (Apache-2) and welcomes community contributions.

OpenFGA is designed to make it easy for application builders to model their permission layer, and to add and integrate fine-grained authorization into their applications. OpenFGA's design is optimized for reliability and low latency at a high scale.

Resources

Packages

Packages Package Manager Docs
JS README
Go README
Java README

About This Repo

This repo contains everything needed to interact with the OpenFGA Authorization Models schema versions 1.1+, in multiple languages (currently, Go and JS are supported).

Feature Implemented in ANTLR
Basic DSL
Nesting (partial, see #113)
Conditions
Feature Go JS Java
Transformer from the DSL to JSON and from JSON to DSL
Syntactic Model Validations
Schema 1.0 (supported in v0.1.6 and below)
Schema 1.1 (supported in v0.2.0 and above)
Schema 1.2 (Modular Models)
Semantic Model Validations (planned, see #99)
Graphing & Utility Methods (planned) (planned) (planned)

CLI

Use the FGA CLI

Community Parsers

Repo License Maintainers Language Schema v1.0 Schema v1.1 Package Managers Other Links
openfga language (syntax-transformer) Apache-2.0 @openfga ANTLR (Go and Typescript implementations) <0.1.5 Yes (v0.0.8+) -
openfga-dsl-parser Apache-2.0 @maxmindlin - @dblclik Rust Yes No WASM - Python
openfga-rs Apache-2.0 @iammathew Rust Yes No
openfga-dsl-parser Apache-2.0 @craigpastro ANTLR & Go Yes Partial (requires self). Supports nesting

Community Wrapper

Repo License Maintainers Language Schema v1.0 Schema v1.1 Package Managers Other Links
fga cli Apache-2.0 @openfga Go No Yes
fga-transformer-cli MIT @ozee-io Javascript Yes Yes

Contributing

See CONTRIBUTING.

Author

OpenFGA

License

This project is licensed under the Apache-2.0 license. See the LICENSE file for more info.

About

Grammar for the OpenFGA modeling language

Topics

Resources

Readme

License

Apache-2.0 license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy

Stars

Watchers

Forks

Packages