npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

firetool

v0.1.5

Published

CLI Admin Tools for Firebase Projects

Downloads

1

Readme

Firetool CLI

Firetool is a Command Line Interface (CLI) that allows you to do everything you can't do with Firebase Web Console. Ok, not everything... But a lot of those ;)

example firetool

Installation

Node Package

You can easily download and install the Firetool CLI using npm (the Node Package Manager).

npm install -g firetool

This will provide you with the globally accessible firetool command.

Note that you will need to install Node.js and npm. Installing Node.js should install npm as well.

Initialize

To authenticate a service account and authorize it to access Firebase services, you must provide a private key1 through:

firetool init

this will prompt you for the Firebase Database Name and your Private Key.

1To generate a private key file for your service account:

  1. In the Firebase console, open Settings > Service Accounts.

  2. Click Generate New Private Key, then confirm by clicking Generate Key.

  3. Securely store the JSON file containing the key.

See https://firebase.google.com/docs/admin/setup#initialize-sdk

Commands

You can list the avalaible commands running firetool --help or firetool <command> --help for more details.

| Command | Description | |-------------|------------------------------------------------| | init | Init Firebase Tools. | | user | Tools for Firebase Authentication admin tools. | | help | Display help for [cmd] |

User/Authenticacion commands

This commands allow you to managing your Firebase Authentication users with elevated privileges.

| Command | Description | |-------------------------------|------------------------------------------------------------------------------------| | user list [uid] | Retrieves a list of user(s). | | user create [options] | Create a new Firebase Authentication user. | | user update [options] <uid> | Updates an existing user by their uid. | | user delete <uid> | Delete a existing user by their uid. | | user validate-email <uid> | Validates email to existing user. Shorthand to user update <uid> --emailVerified.| | user claims <uid> [options] | Configure custom claims to existing user. |

[options] params are the same properties provides by the API for managing Firebase Authentication. See https://firebase.google.com/docs/auth/admin/manage-users.

For example:

  • firetool user update --emailVerified jcIT3i4hFNSqmgxABFxH1sVxc1M2 validate user email.
  • firetool user update --displayName "Franco Stramana" jcIT3i4hFNSqmgxABFxH1sVxc1M2 change the display name for the user.
  • firetool user update --password 123456 --disabled false jcIT3i4hFNSqmgxABFxH1sVxc1M2 enabled user and change their password.

Claims

  • firetool user claims jcIT3i4hFNSqmgxABFxH1sVxc1M2 --set admin=true set admin token custom claims.
  • firetool user claims jcIT3i4hFNSqmgxABFxH1sVxc1M2 --removeAll remove all custom claims.

Contributions

This project was born as a personal tool that I decided to share. It will grow as I need more features for my personal projects. Because of this, any contribution is welcome ;)

Made with Node and Love! (and of course, a few dependencies)