Contact : thecoder38@gmail.com
the architecture of each feature is based on the clean architecture of Uncle Bob which is constituted mainly of 3 layers :
- Data
- Domain
- Controllers
📦features
┗ 📂say_hello_to_world
┃ ┣ 📂controllers
┃ ┣ 📂data
┃ ┗ 📂domain
📦project
┣ 📂.vscode
┃ ┗ 📜settings.json
┣ 📂envs
┃ ┣ 📜dev.env
┃ ┣ 📜prod.env
┃ ┗ 📜staging.env
┣ 📂lib
┃ ┣ 📂src
┃ ┃ ┣ 📂core
┃ ┃ ┃ ┣ 📂configs
┃ ┃ ┃ ┃ ┣ 📜inversify.config.ts
┃ ┃ ┃ ┃ ┣ 📜middle.config.ts
┃ ┃ ┃ ┃ ┗ 📜server.config.ts
┃ ┃ ┃ ┗ 📜init.ts
┃ ┃ ┣ 📂modules
┃ ┃ ┃ ┗ 📂hello_mod
┃ ┃ ┃ ┃ ┗ 📂features
┃ ┃ ┃ ┃ ┃ ┗ 📂say_hello_to_world
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂controllers
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜say_hello_to_world_controller.ts
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂data
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂data_source
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂impls
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜hello_to_world_impl.ts
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📂interfaces
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜hello_to_world_inter.ts
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂models
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜.gitkeep
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📂reposit_impls
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜system_greet_the_world_reposit_impl.ts
┃ ┃ ┃ ┃ ┃ ┃ ┗ 📂domain
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂entities
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜.gitkeep
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂reposit_interfaces
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜system_greet_the_world_reposit_inter.ts
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📂usecases
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜say_hello_word_usecase.ts
┃ ┃ ┗ 📂shared
┃ ┃ ┃ ┣ 📂constants
┃ ┃ ┃ ┃ ┣ 📜api.const.ts
┃ ┃ ┃ ┃ ┣ 📜number.const.ts
┃ ┃ ┃ ┃ ┣ 📜string.const.ts
┃ ┃ ┃ ┃ ┗ 📜version.const.ts
┃ ┃ ┃ ┣ 📂extensions
┃ ┃ ┃ ┣ 📂global
┃ ┃ ┃ ┃ ┗ 📜string.variable.ts
┃ ┃ ┃ ┣ 📂logs
┃ ┃ ┃ ┃ ┗ 📜logger.ts
┃ ┃ ┃ ┣ 📂middlewares
┃ ┃ ┃ ┗ 📂services
┃ ┃ ┃ ┃ ┣ 📂images
┃ ┃ ┃ ┃ ┗ 📂security
┃ ┗ 📜index.ts
┣ 📂test
┃ ┗ 📜.gitkeep
┣ 📜.eslintignore
┣ 📜.eslintrc
┣ 📜.gitignore
┣ 📜.prettierignore
┣ 📜.prettierrc
┣ 📜babel.config.json
┣ 📜jest.config.json
┣ 📜nodemon.json
┣ 📜package.json
┣ 📜readme.md
┣ 📜tsconfig.json
┗ 📜typedoc.json
After downloading or cloning the Git Repository
-
go to the project folder and copy all the content in your server's project
-
go into your package.json file, fill the following points:
- "name" : Specify the Project Name
- "description" : Specify the Project Description
- "url" : "git+url" (complete the url line with the git url of your repository)
- "author" : Specify the Project Author (Organisation name)
-
and type npm install to install all packages of Dependencies and Dev_Dependencies
Copyright © 2024 James Brel All Rights Reserved