rosslavery / nx-firebase

Firebase plugin for Nx Monorepos

Home Page:https://www.npmjs.com/package/@simondotm/nx-firebase

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

@simondotm/nx-firebase

npm

A plugin for Nx that provides support for Firebase projects in an Nx monorepo workspace.

See CHANGELOG for release notes.

Overview

Nx provides a great way to manage monorepo workflows and this plugin helps to integrate Firebase projects with Nx, by:

  1. Enabling & promoting use of shared Typescript code libraries within Firebase functions
  2. Retaining a familiar usage of all Firebase features in a way that feels integrated with Nx workflow
  3. Requiring minimal friction/setup for configuration of an Nx workspace in order to be productive with development, building & deployment of Firebase projects
  4. Supporting multiple firebase projects within an Nx workspace

Nx-Firebase Features

Supports:

  • Typescript Firebase functions as Nx applications
  • Single or multiple Firebase projects in one Nx workspace
  • Use of shared Nx buildable libraries in Firebase functions
  • Nx provides automatic dependency checking for builds
  • Building & serving functions with watch mode
  • Firebase Emulators
  • Convenience Nx getconfig target to fetch remote firebase functions configuration variables to local .runtimeconfig.json file
  • Convenience Nx deploy, emulate, and serve targets for functions

Additionally:

  • Auto generates Firebase functions package.json ready for no fuss deployment using the Firebase CLI
  • Auto generates default firebase.json configurations, rules and indexes for each Firebase app
  • Only very lightly opinionated about your Firebase configurations and workspace layouts; you can just use the Firebase CLI as usual
  • Keeps all of your firebase rules and indexes within your app folder, to keep your workspace root free of clutter

User Guide

Nx Applications

Nx Firebase

Nx Libraries

Nx Workspaces

Notes

About

Firebase plugin for Nx Monorepos

https://www.npmjs.com/package/@simondotm/nx-firebase

License:MIT License


Languages

Language:TypeScript 94.5%Language:HTML 4.4%Language:JavaScript 1.1%