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

hangular

v1.0.0

Published

Configures new Angular projects for deployment to Heroku

Downloads

2

Readme

Hangular

Configure new Angular projects for Heroku deployments.

Install

npm install --save-dev hangular

or

npm install -g hangular

Usage

Locally

ng new my-cool-app
cd my-cool-app
npm install --save-dev hangular
hangular

Globally

ng new my-cool-app
cd my-cool-app
hangular

Usage on Existing Projects

Hangular is designed to be used with newly-created Angular apps.

While it may work on existing projects, we suggest using the section below to make the necessary modifications manually to prevent any complications. Don't worry, though, it's really easy!

What Does Hangular Modify?

Update package.json

Hangular updates package.json in three ways.

Move devDependencies to dependencies

The following devDependncies are all moved:

"@angular/cli": "..."
"@nagular/compiler-cli": "..."
"@angular/typescript": "..."

Add/Update Scripts

The start script is updated.

"start": "node server.js"

A new "heroku-postbuild" script is added.

"heroku-postbuild": "ng build --prod"

Add Engines

We tell Heroku what version of node and npm to use by adding an "engines" field. Hangular grabs the version numbers from your current operating system.

"engines": {
  "node": "...",
  "npm": "..."
}

Install Express and Create server.js

In order to serve the Angular application on Heroku, we need a fast, lightweight web-server. Server.js sets up a minimal Express server sending all requests to index.html, the entry point of our Angular application.

npm install express

and

const express = require('express');
const path = require('path');

const app = express();

const appName = require('./package.json').name

app.use(express.static(__dirname + '/dist/' + appName));

app.get('/*', function(req,res) {    
  res.sendFile(path.join(__dirname + '/dist/' + appName + '/index.html'));
});

app.listen(process.env.PORT || 8080);

Create Procfile

We tell Heroku what type of app we're serving and how to start it through the Procfile.

web: npm start