Getting a MEAN app ready for production

Now that I have completed my MEAN app below are what I think are the stages to get the app ready for production and up and running on Heroku. Could you please advise if I've got the wrong idea as this is my first app of this kind.

1) Use Grunt to lint all Javascript files (front end)

2) Concatenate all the JS files into one file

3) Uglify the concatenated file from step 2

4) Push (dist?) to Heroku (via Git) ... but what do I push?

Will there be files in a "dist" folder at this point? Is it this directory (and only this directory) that should be pushed to Heroku?

Note: I'm confident with Git and Heroku - I'm not sure what I need to push or indeed what a typical workflow is.

Not sure what you mean by dist, but I can explain how to push to heroku

  1. Make sure you have a package.json with an app name (Heroku will identify it as a node app)
  2. Go to the command line and log in using heroku login Input your details
  3. Create a file and call it Procfile inside the file: web: node app.js
  4. heroku create appName
  5. cd into/your/root/project/folder
  6. 'git init'
  7. git add .
  8. git commit -m "commit message"
  9. git push heroku master (Make sure you have heroku as a remote)

There is a way more in depth explanation of this here: https://devcenter.heroku.com/articles/getting-started-with-nodejs#deploy-the-app But they show it with an example app. Don't forget about the Procfile. And about the dist folder, if it's not needed for the app you don't need to add it to the commit

A regular check for the production environment is to run speed tests, seo checks, and such to get the most out of it. You may want to look into canonical links, minify css,javascript,html etc..(serverside minification as well) You can also add domains with heroku which is explained here