The Invoice app
This project uses the following technology:
- yarn - node package manager
- lerna - a tool for managing JavaScript projects with multiple packages.
- NodeJS for back-end.
- Video referered to integrate Redis and Node. -Draw.io to create diagrams.
- mLabs used to store sessions in MongoDB.
- AWS for deployment.
- Heroku to deploy front-end.
- Decided the project idea and road-map.
- Decided what technology stack should be used.
- Went through multiple project ideas and discussed each one.
- Need to distribute tasks related to development to team members leveraging expertise knowledge.
- Discussed how each microservices services would integrate with each other.
Agenda: Road-map for Project and Task Distribution
Number of meeting hours this week: 2
- Finally agreed on provoice App prototype.
- Finished wrapper API individually for database clusters.
- Reviewed as a team - Feasible timeline of tasks and responsibilities.
- Started coding for back-end.
Agenda: To select the Application. Talk about API Document. Make trello Board to get the project done in desired timeline.
Number of meeting hours this week: 2
- Created a design architecture.
- Discussed how the functionalities will split.
- Created a docker instance for different services.
- Defined best api gateway for service discovery.
- Front-end in ANGULAR finished.
Agenda: Design Architecture, Functional Split, Sharding, Replication stratgy.
Number of meeting hours this week: 3
- UI Improvements.
- Finished all the functionalities.
- Hosted the front-end on Heroku.
- Hosted the back-end on AWS.
- Connected MongoDB to maintain session.
- Added load balancers.Nginx
Number of meeting hours this week: 5
- Finished writing the Project Journal.
- Tested the performance of the Provoice App prototype.
Number of meeting hours this week: 1
- Creating the design of the system.
- Set up the tools required for the application to work.
- Integrating front-end and back-end.
- Integrating Several APIs.
- Some conflicts in the code took significant amount of time to resolve.
- How to achieve functionality split.
You can install all packages (including respective dependencies) and link them using the following command:
$ cd <provoice>
## only needed to run occasionally...
$ yarn install
## run to link project packages listed above...
$ yarn run bootstrap
To add new node module say angular
$ lerna add angular@version --scope=provoice-web
NOTE: Changes made to any individual package must follow the normal process of creating a PR, adding, committing, and pushing to its own repo.