markdown 用于大规模Universal JS项目的monorepo结构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown 用于大规模Universal JS项目的monorepo结构相关的知识,希望对你有一定的参考价值。

> The evolutionary path is: 
> monolithic backend-web-framework-based repo -> multi repos with shared infra -> monorepo contains shared infra
>
> The tool support is becoming matured ([Yarn Workspace](https://code.facebook.com/posts/274518539716230), [VSCode's Multi Root Workspaces](https://code.visualstudio.com/updates/v1_16#_preview-multi-root-workspaces))

```
[monorepo]/
 ├── universal-js-app project for product A/
 │    ├── node_modules/
 │    ├── common/
 │    │    ├── components/
 │    │    ├── utils/
 │    │    └── ... (other role folders)
 │    ├── entry point A/
 │    │    ├── common/
 │    │    │    ├── components/
 │    │    │    ├── utils/
 │    │    │    └── ... (other role folders)
 │    │    ├── feature set A/
 │    │    │    ├── components/
 │    │    │    ├── utils/
 │    │    │    └── ... (other role folders)
 │    │    ├── feature set B/
 │    │    │    ├── components/
 │    │    │    ├── utils/
 │    │    │    └── ... (other role folders)
 │    │    └── ... (other feature set folders)
 │    ├── entry point B/
 │    ├── ... (other entry point folders)
 │    ├── Dockerfile
 │    ├── .eslintrc
 │    └── package.json
 ├── API gateway project for product A/
 │    ├── node_modules/
 │    ├── common/
 │    ├── restful/
 │    │    ├── API A/
 │    │    └── ... (other API folders)
 │    ├── Dockerfile
 │    ├── .eslintrc
 │    └── package.json
 ├── universal-js-app project for product B/
 │    ├── node_modules/
 │    ├── common/
 │    ├── entry point X/
 │    │    ├── common/
 │    │    ├── feature set X/
 │    │    ├── feature set Y/
 │    │    └── ... (other feature set folders)
 │    ├── ... (other entry point folders)
 │    ├── Dockerfile
 │    ├── .eslintrc
 │    └── package.json
 ├── API gateway project for product B/
 ├── ... (other project folders)
 ├── common/
 │    ├── components/
 │    ├── utils/
 │    ├── constants/
 │    └── ... (other role folders)
 ├── universal-js-app infra (like webcube)/
 │    ├── node_modules/
 │    ├── framework/
 │    │    ├── AppSkeleton.js
 │    │    └── ...
 │    ├── toolchain/
 │    │    ├── webpack.config.js
 │    │    ├── gulpfile.js
 │    │    ├── docker-compose.yml
 │    │    └── ...
 │    ├── scaffold/
 │    └── package.json
 ├── nodejs-microservice infra (like nodecube)/
 │    ├── node_modules/
 │    ├── framework/
 │    │    ├── restfulService.js
 │    │    ├── graphqlService.js
 │    │    ├── logger.js
 │    │    ├── error.js
 │    │    └── ...
 │    ├── toolchain/
 │    ├── scaffold/
 │    └── package.json
 ├── ... 
 ├── node_modules/ 
 │    ├── universal-js-app infra/  (symlink) -> ../universal-js-app infra/
 │    ├── nodejs-microservice infra/  (symlink) -> ../nodejs-microservice infra/
 │    ├── common/  (symlink) -> ../common
 │    ├── react/
 │    ├── babel-core/
 │    └── ... (other shared dependencies)
 └── package.json
```

以上是关于markdown 用于大规模Universal JS项目的monorepo结构的主要内容,如果未能解决你的问题,请参考以下文章

Angular Universal 不适用于 Angular Google 地图

Tailwind 的 @apply 指令适用于前端,但不适用于 Angular Universal 的后端

将迁移学习用于文本分类 《 Universal Language Model Fine-tuning for Text Classification》

Angular 2 Universal - 使用手写笔和 pug 模板的服务器端渲染

iOS Universal Link问题

Angular 2 Universal 中的身份验证,nodejs