Prettier Plugin for Firebase Realtime Database Rules

2.0.0 · active · verified Wed Apr 22

The `prettier-plugin-firebase-database` package, currently at version 2.0.0, is a specialized Prettier plugin designed to format Firebase Realtime Database Rules. It enforces a consistent code style for `*.rules` files (e.g., `database.rules.json`), ensuring readability and maintainability within development teams working with Firebase. As a Prettier plugin, it integrates into existing Prettier setups via configuration, providing custom parsing and formatting logic tailored to the unique JSON-like syntax of Firebase security rules. The project follows Prettier's major release cadence, with updates typically occurring to maintain compatibility with new Prettier versions or to adapt to changes in Firebase rules syntax. Its key differentiator is providing specific, correct formatting for Firebase rules, which generic JSON formatters often handle incorrectly.

Common errors

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to configure Prettier to load the Firebase Database Rules plugin. After installing `prettier` and `prettier-plugin-firebase-database` as dev dependencies, create or update your `prettier.config.js` file with the plugin reference. You can then format `.rules` files using `prettier --write your-file.rules`.

// prettier.config.js
/**
 * @see https://prettier.io/docs/en/configuration.html
 * @type {import("prettier").Config}
 */
const config = {
  plugins: ['prettier-plugin-firebase-database'],
  // Recommended: Explicitly associate .rules files with the plugin's parser.
  // This ensures consistent formatting for all files ending with .rules.
  overrides: [
    {
      files: '*.rules',
      options: {
        parser: 'prettier-plugin-firebase-database'
      }
    }
  ]
};

export default config;

view raw JSON →