DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’» is a community of 968,873 amazing developers

We're a place where coders share, stay up-to-date and grow their careers.

Create account Log in
Cover image for Maintain Javascript Project Efficiently with GitHub Actions
Abel Mathew
Abel Mathew

Posted on

Maintain Javascript Project Efficiently with GitHub Actions

My Workflow

GitHub Actions to analyze the packages used in a JavaScript project. Helps maintainers have control over the packages used in the project.

What it does:

  • Lists the unused packages
  • Lists the expected size of the node modules after deployment

Submission Category:

Maintainer Must-Haves

Usage

Adding the following to your workflow will create a new job using the js-package-info Action.

on: [pull_request]

jobs:
  js-package-info:
    runs-on: ubuntu-latest
    name: An Action to analyze javascript packages
    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-node@v1
      with:
        node-version: '12'
    - run: npm install -g bundle-phobia-cli
    - run: npm install -g depcheck
    - name: Get Package Info
      uses: DesignrKnight/js-package-info@v2
      with:
        node_dir: './'
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Enter fullscreen mode Exit fullscreen mode

Link to Code

GitHub logo DesignrKnight / js-package-info

GitHub Actions to analyze the packages used in a JavaScript project

JS Package Info

GitHub Action to analyze the packages used in a JavaScript project. Helps maintainers have control over the packages used in the project.

What it does:

  • Lists the unused packages
  • Lists the expected size of the node modules after deployment

Usage

Adding the following to your workflow will create a new job using the js-package-info Actions.


jobs:
  js-package-info:
    runs-on: ubuntu-latest
    name: An Action to analyze javascript packages
    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-node@v1
      with:
        node-version: '12'
    - run: npm install -g bundle-phobia-cli
    - run: npm install -g depcheck
    - name: Get Package Info
      uses: DesignrKnight/js-package-info@v2
      with:
        node_dir: './'
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Inputs

node_dir

The default is ./. Change it to point to the relative location of the package.json file in the git repo. If the location is ./server/package.json, then the environment variable will be ./server/

GITHUB_TOKEN

The GitHub token from context is used to…

Input Parameters

node_dir

The default is

./

. Change it to point to the relative location of the package.json file in the git repo. If the location is

./server/package.json

, then the environment variable will be

./server/

GITHUB_TOKEN

The GitHub token from context is used to run this Action. Leaving this unchanged should work for almost all use cases.

Additional Resources / Info

The Actions uses the following for its working

Cover Photo by Stanley Dai on Unsplash

Top comments (0)

This post blew up on DEV in 2020:

js visualized

πŸš€βš™οΈ JavaScript Visualized: the JavaScript Engine

As JavaScript devs, we usually don't have to deal with compilers ourselves. However, it's definitely good to know the basics of the JavaScript engine and see how it handles our human-friendly JS code, and turns it into something machines understand! πŸ₯³

Happy coding!