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

firebase-deploy-directory

v1.0.6

Published

Deploy a directory to Firebase hosting

Downloads

18

Readme

Use firebase-deploy-directory as a replacement for firebase deploy if you use Firebase hosting and want to deploy different parts of your site from different repos or directories.

For example, if your main website is hosted at https://example.com and you have a separate repo for your blog hosted at https://example.com/blog.

In the repo for your main website, where you keep your firebase.json, you would run

firebase-deploy-directory \
  --project <firebase-project-name> \
  --replace-config \ 
  --directory <directory-that-contains-website-files e.g. build/> \
  --exclude-subpath blog \
  --commit

If you're running this from CI, then add --token $FIREBASE_TOKEN, where $FIREBASE_TOKEN is the token you got from firebase login:ci.

In the repo for your blog, run

firebase-deploy-directory \
  --project <firebase-project-name> \
  --directory <directory-that-contains-website-files e.g. build/> \
  --subpath blog \
  --commit

You can leave off the commit flag to do a dry run.

You can deploy from multiple directories, just add a new --exclude-subpath flag for each path. For example, if you're deploying /blog and /changelog from different repos, your deploy command for the main repo would be:

firebase-deploy-directory \
  --project <firebase-project-name> \
  --replace-config \ 
  --directory <directory-that-contains-website-files e.g. build/> \
  --exclude-subpath blog \
  --exclude-subpath changelog \  
  --commit

Usage

Upload directory to firebase hosting

firebase-deploy-directory --project <project-name> --subpath <subpath> --directory <directory-to-upload> --token <ci-token> --commit


Options:
  --version          Show version number                               [boolean]
  --project          The name of the Firebase project        [string] [required]
  --subpath          The subpath that the directory should be deployed to (e.g.
                     `schema` for `https://example.com/schema`)         [string]
  --exclude-subpath  If deploying everthing except subpaths, the subpaths to
                     ignore                                              [array]
  --directory        The directory to upload                 [string] [required]
  --commit           If not set, does a dry run                        [boolean]
  --token            Token to use to deploy                             [string]
  --replace-config   Set to true if you want to use the config from your
                     firebase.json, otherwise uses the config from the last
                     release                                           [boolean]
  --help             Show help                                         [boolean]