Repository will be separated into server and client directory for NestJS backend and Angular frontend resepctively.
- Server repository
- Client repository
- Docker support
- Hook up Server and Client
This repository houses the Project's backend written using NestJS
- NSwag: Nswag allows us to generate API Calls to our Backend on our Frontend in forms of Functions. The abstraction of HttpClientModule takes place in the generated file.
- Steps:
cd ./server&npm ito install all dependencies for Server side- Have an instance of MongoDB running (
mongod). If you use an IDE like WebStorm, I have a script called:mongo:localthat is going to runmongodsubsequently so you can setup aCompound Run Configurationwithstart:devandmongo:localto start the Backend with ease. npm run start:devto start the server
- Note: If there's issue connecting to local MongoDB and you make sure that you already have
mongodrunning, go toconfig/default.tsand check if theMONGO_URIis correct.
This repository houses the Project's frontend written using Angular 6
- Ant Design: The components design is by AntDesign (https://ng.ant.design/docs/introduce/en). I really like the subtle looks of AntDesign.
- Steps:
npm ito install all the dependencies then just start the application withng serve - Note: Might be worth it to take a look at
proxy.conf.jsonand how I setup the CLI to use theproxyfile when serving so that we can call our backend onlocalhost:3000. This is so-called Cross Domains Request and our backend does not have CORS setup. Proxy will help us making the requests from4200to3000.
Docker is supported.
- Branch:
docker - Steps: Just clone the repository, check out
dockerbranch then fromrootdirectory, rundocker-compose upand Docker will take over. - Note: Angular application will be served by NGINX on
localhost; Nest application will be running onlocalhost:3000; cAdvisor which monitors our containers will be running onlocalhost:8080. Again, it's worthwhile to explore the Dockerfile in bothclientandserverdirectory; alsonginx.confanddocker-compose.ymlto get the gist of how Docker and Docker Compose work.
P.S: Pull Requests, Contributions are most definitely welcomed :)