Angular has moved from a framework to now a platform to develop rich UI across mobile and desktop. There are many ways to set up a development environment and build process for Angular apps. In this short post, I'll go over the setup that I use on both my Linux/MacOS and Windows machines.
First I'll start with how I build and deploy my Angular applications. All of my
projects currently use the Angular CLI. The Angular Command Line Interface allows developers to create, scaffold and build Angular applications quickly. The CLI is still in beta but is quickly gaining traction and a lot of support/improvements from the Angular team.
Next is my favorite editor that I use all the time, Visual Studio Code. Visual Studio Code is a free cross-platform editor with great TypeScript support which is critical for a good Angular development experience. Visual Studio Code is very fast and lightweight. It has a great plugin system as well. Here is a screenshot of some of the plugins I use that give an excellent editor experience for Angular apps.
Angular is not very opinionated on how its deployed and what backend stack its hosted on. I deploy Angular apps a couple of different ways, some on .NET stacks and others on NodeJS. My favorite is Firebase. Firebase has a hosting feature that is great for single page apps and has HTTP2 support for great performance. Learn more about Deploying Angular apps to Firebase here.
One last note I am looking forward to an update in the works to the Angular CLI that adds Universal Angular support. Universal allows Angular apps to run on the server so we can get excellent SEO support and fast first time renders.
In summary, there are hundreds of tools that are available that work great with Angular projects. These are just the subset that I use. If you have your own setup, you enjoy, please feel free to share in the comments.