firepanda
TypeScript icon, indicating that this package has built-in type declarations

0.0.14 • Public • Published

Firepanda 🔥🐼

Build Status NPM Version Typescript lang License

Firepanda is a development framework for Firebase and the Google Cloud (a few selected services are supported). The main goal of Firepanda is to simplify and accelerate the development of applications powered by Firebase (Firestore, Authentication, Storage, ...), and some selected Google Cloud services.

CLI

Firepanda comes with a small CLI to handle the project structure and build the necessary files in order to deploy to Firebase and other Google Cloud services.

Installation

npm install firepanda

Usage

firepanda init my-project folder-name

This will generate a new folder structure, install all required base dependencies and copy all files to start developing a new application.

Setup

Setup firebase in your new project folder

firebase login
OR
firebase use --add # follow instructions 

Development

Firestore

To get started, Firepanda provides an easy framework to develop custom models using Firestore.

Collections

Add a new collection

  1. Create a new file src/firestore/Users.ts*
  2. Create a new collection class and use the Firepanda decorator to define the collection schema:
import { Collection, Firepanda } from 'firepanda';
 
@Firepanda({
  name: 'users',
  id: {
    from: 'uid'
  },
  schema: {
    uid: { type: 'string', required: true },
    displayName: { type: 'string' },
    email: { type: 'string' },
    photoUrl: { type: 'string', default: 'http://www.gravatar.com/avatar/1337?d=identicon' },
    active: { type: 'boolean' },
    createdAt: { type: 'timestamp', transform: { on: 'beforeAdd' } },
  }
})
export class UsersCollection extends Collection {
  // Implement any custom methods here
}
 

Schema

The collection schema is defined using the Firepanda decorator.

Field Type Description
name string Name of the collection used within Firestore
id.from object Data to use the ID from another field
schema object All the fields the collection uses

Package Sidebar

Install

npm i firepanda

Weekly Downloads

0

Version

0.0.14

License

ISC

Unpacked Size

137 kB

Total Files

68

Last publish

Collaborators

  • polysign