# 100 days of MANN > Name: Asaju E. Michael > Stack: MANN(MongoDB, Angular, NestJs, NodeJs) > Want's to Learn: Production level MANN --- | Start Date | End Date | | ------------ | ------------ | | 4 May, 2020 | --------| ## Goals - Make habit of coding daily & learn everyday - Learn MANN for deeper knowledge - Make some real world projects for my portfolio - Get a good grap on Node JS & server-side typescript ## Log ### Day 1: May 4, 2020, Monday **Today's Progress**: - Revised File upload using angular and nestjs - Completed add user by current user with profile picture <!-- **Link to work:** - [Flat Login Template](https://github.com/mimukit/html5-templates-collection#1-flat-login-template "Flat Login Template") --> **New thing(s) learned:** - Never append `Content-Type` to angular interceptor. It does it automatically <!-- **Thoughts:** At last able to start the chellenge and do some real coding. Enjoyed the time and work. Wish to have a great journey. --> ------------ ### Day 2: May 5, 2020 Tuesday **Today's Progress**: - Documentation **New thing(s) learned:** - Learnt how to document a project in progress **Thoughts:** Documenting is kind of boring and at the same opens the eye to new things ----------- ### Day 3: May 6, 2020 Wednesday **Today's Progress**: - Nothing done **Thoughts:** Need a better source of electricity ---------- ### Day 4: may 7, 2020 Thursday **Today's Progress**: - Worked with datatables - Learnt how to make inline code functions and reload the datatable without querying the database for data **Thoughts:** Using Subject Observables is better than having to reload the component. Also dtTrigger needs a fix --------- ### Day 5: May 8, 2020 Friday **Today's Progress**: - Revisited file upload - Worked with different file extensions - Worked with SweetAlert2 for custom alerts **Thoughts:** - Not all answers on stackoverflow are right - There's always a way to create custom functions from installed packages --------- ### Day 6: May 9, 2020 Saturday **Today's Progress**: - Read up on different data manipulation on NestJs - Worked with Directives on Angular **Thoughts:** - `@Input` works for passing data from parent component to child component - `@Output` works for passing data from child component to parent component --------- ### Day 7: May 10, 2020, Sunday > Took long rest --------- ### Day 8: May 11, 2020, Monday **Today's Progress**: - Revisited `@Input` Directive **Thoughts:** - Need to learn the jagons of MANN -------- ### Day 9: May 12, 2020, Tuesday > Had to go to work -------- ### Day 10: May 13, 2020, Wednesday **Today's Progress**: - Added a feature of inline component - Revisited `@Output` directive **Thoughts:** - `@Output` can be used to pass any form of data - Will try to see if I can pass data from child component to child component -------- ### Day 11: May 14, 2020, Thursday **Today's Progress**: - Added a page loader for when getting data from server - Used [`ngx-loading`](https://www.npmjs.com/package/ngx-loading) to show loading animation while data is fetched **Thoughts**: - Page loading animation before data display makes it easier for users to know what is going on ------- ### Day 12: May 15, 2020, Friday **Today's Progress**: - Utilised image upload using firebase - Sourced image from firestore **Thoughts:** - For performance issues, I recommend storing files on firebase rather than on the server itself - Have different components for tasks, makes it easier to deug and reuse ------- ### Day 13: May 16, 2020, Saturday **Today's Progress**: - Read up on loading bar for file uploads - Changed file upload from server to firebase ------ ### Day 14: Sunday, May 17, 2020 **Today's Progress**: - Had a demo with project manager - Revamped the upload page to contain progress bars **Thoughts:** - Using `[ngClass]` for angular still has bugs with bootstrap ----- > Had to put a hold on the project for 6 days > **reason**: Client want a revamp of the UI > ### Day 21: Monday, May 24, 2020 **Today's Progress**: - Revamped the child routing for Angular - Used modules to differentiate each dashboard ----- ### Day 22: Tuesday, May 25, 2020 **Today's Progress**: - Continued work on child routing > Adding different routes and having to change the routes **New knowledge:** - Found out the difference between setting `pathMatch: 'full'` & `pathMatch: 'prefix'` ----- ### Day 23-26: Wednesday, May 26, 2020 - Saturday, May 29, 2020 **Today's Progress**: - Continued work on child routing > Adding different routes and having to change the routes by making sure I have only services in providers and entitities in Typeorm Modules ----- ### Day 28: Monday, May 31, 2020 **Today's Progress**: - Made a small visit to server code - Added code for Agent Methods > Was able to overcome the fear of cyclic redundancy in NESTJs ----- ### Day 29: Tuesday, June 1, 2020 **Today's Progress**: - Created assign Project to Agent method - Created page to show projects assigned to Agent ----- ### Day 30: Wednesday, June 2, 2020 **Today's Progress**: - Added option to unassign project from agent - Added `ng-bootstrap` to ease UI design ---- ### Day 31: Thursday, June 3, 2020 **Today's Progress**: - Removed `ng-bootstrap` - Added View Details to Agent Dashboard ---- ### Day 32: Friday, June 4, 2020 **Today's Progress**: - Revamped Admin Dashboard to; Added Datatables options - Changed the way projects display - Removed Graph ------ ### Day 33: Sunday, June 5, 2020 **Today's Progress**: - Started with agent reports - Wrote the backend code for crud reports -----