Awhile ago, me and @cedrickmandocdoc talked about some new folder structures most especially in the server side. Currently, we have the server folder then inside it contains www folder which mainly focus on starting the server, not the starting/creating the whole application. They are different. The other folder is the app which contains another sub-folder modules.
We defined the modules based from the entities or what we call folder-by-feature. So for example, if we have a User entity we would have a user folder inside it. If we have another entity like Location entity we would have a location folder inside it. Basically it is a modular type based from the entities of the application.
The changes that might come would be the following:
Inside the src folder we would (this is also for the client structure) we would have the app as the root of application. Then inside the app folder contains core, shared and other "feature modules" as the Angular docs say.
By the way, I'm trying to apply the the LIFT principle by the Angular team. Here's the link for reference. Setting one structure for both client and server since nest.js is inspired by the Angular. I think it would be better to follow some guidelines from them.
Awhile ago, me and @cedrickmandocdoc talked about some new folder structures most especially in the server side. Currently, we have the server folder then inside it contains
www
folder which mainly focus on starting the server, not the starting/creating the whole application. They are different. The other folder is theapp
which contains another sub-foldermodules
.We defined the
modules
based from the entities or what we callfolder-by-feature
. So for example, if we have a User entity we would have auser
folder inside it. If we have another entity like Location entity we would have alocation
folder inside it. Basically it is a modular type based from the entities of the application.The changes that might come would be the following:
Inside the
src
folder we would (this is also for the client structure) we would have theapp
as the root of application. Then inside theapp
folder containscore
,shared
and other "feature modules" as the Angular docs say.By the way, I'm trying to apply the the
LIFT
principle by the Angular team. Here's the link for reference. Setting one structure for both client and server sincenest.js
is inspired by theAngular
. I think it would be better to follow some guidelines from them.Here are my 3 proposals structure: