-
-
Notifications
You must be signed in to change notification settings - Fork 673
Home
Davide Violante edited this page Nov 4, 2017
·
23 revisions
Welcome to the Angular-Full-Stack wiki!
This wiki is created by the author of this repository to help you understand this project.
- Have a complete full stack application using the latest Angular.
- Use one language (TypeScript) for the whole stack.
- Most part of the frontend is automatically generated using Angular CLI.
- The backend and the rest is made from scratch.
-
mongod: runs MongoDB daemon, so a local MongoDB database. -
ng serve -pc proxy.conf.json --open: builds the app, serves it from memory, watches for changes and open it in the browser. It uses a proxy for the backend server. -
tsc -w -p server: compiles TypeScript into JavaScript fromserverfolder todist/serverfolder. It also watches for changes. -
nodemon: runs backend app.js file (generated using tsc) while watching for changes. - All the previous commands are executed concurrently.
-
mongod: same as above. -
ng build -aot -prod: builds the app using AOT and generates a production bundle indistfolder. -
tsc -p server: same as above, but doesn't watch for changes. -
node dist/server/app.js: runs the backend server using Node.
- This is usually executed in production when you deployed your application. This command simply executes
node dist/server/app.js, so it runs the app using Node. Before this command:- you need a MongoDB server running.
- you need to create a bundle using
ng build. - you need to compile TypeScript to JavaScript using
tsc -p server.
- Edit
.envfile, line 1 and 2. - Remove any reference about
mongodfrompackage.json.
- Place all your static files, such as images, in
client/assetsfolder.
- Install your library using
npm i jquery --save. - Edit
.angular-cli.jsonfile and add the path of jquery to thescriptsand/orstylesarray.
- The
postinstallscript is executed after all dependencies are installed and it's used to compile TypeScript to JavaScript and to create the production bundle on Heroku server. In this way you don't need to push thedistfolder.
- You have to move them because you need to install that packages on the remote server, otherwise commands like
tscandngwouldn't work.