You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+126-8
Original file line number
Diff line number
Diff line change
@@ -16,15 +16,15 @@ The main focus will be to create a maintainable and highly testable architecture
16
16
<br>
17
17
Following are the features of this project:
18
18
***This backend in written in Typescript**: The type safety at build time and having intellisense for it in the IDE like vscode is unparallel to productivity. We have found production bug reduced to significant amount, since most of the code vulnarabilties are identified during the build phase itself.
19
-
***Separation of concern principle is applied**: Each component has been given a particular role. The role of the components are mutually excllusive. This makes the project easy to be unit tested.
20
-
***Feature enpasulation is adopted**: The files or components those are related to a particular feature has been grouped together unless that components is required in multiple features.This enhances the ability to share code across projects.
21
-
***Centralised Error handling is done**: We have created a framework where all the error is handled centrally. This reduces the abiguity in the developement when the project grows larger.
19
+
***Separation of concern principle is applied**: Each component has been given a particular role. The role of the components are mutually exclusive. This makes the project easy to be unit tested.
20
+
***Feature enpasulation is adopted**: The files or components those are related to a particular feature has been grouped together unless that components is required in multiple features.This enhances the ability to share code across projects.
21
+
***Centralised Error handling is done**: We have created a framework where all the errors are handled centrally. This reduces the ambiguity in the developement when the project grow larger.
22
22
***Centralised Response handling is done**: Similar to Error handling we have response handling framework. This makes it very convinient to apply a common API response pattern.
23
23
***Mongodb is used through Mongoose**: Mongodb really fits very well to the nodejs application. Being nosql, fast, and scalable makes it ideal for the modern web applications.
24
24
***Async execution is adopted**: We have used async/await for the promises and made sure to use non blocking version of all the functions with few exceptions.
25
-
***Docker compose has been configured**: We Dockerfile has been created to assist in easy deployability without setup and much configurations.
25
+
***Docker compose has been configured**: We have created the Dockerfile to provide the easy deployability without any setup and configurations.
26
26
***Unit test is favoured**: The tests has been written to test the functions and routes without the need of the database server. Integration tests has also been done but unit test is favoured.
27
-
***A pure backend project**: We have experienced that when a backend is developed clubed with a frontend then in the future it become really difficult to scale. We would want to use a single backend project to server many websites and mobile apps.
27
+
***A pure backend project**: We have experienced that when a backend is developed clubed with a frontend then in the future it become really difficult to scale. We would want to create a separate backend project that servers many websites and mobile apps.
0 commit comments