|
6 | 6 | [](https://snyk.io/test/github/ais-one/cookbook)
|
7 | 7 | [](https://madewithvuejs.com/p/cookbook/shield-link)
|
8 | 8 |
|
9 |
| -## IMPORTANT - Read Me First! |
| 9 | +### 1 - IMPORTANT - Read Me First! |
10 | 10 |
|
11 |
| -### 1 - Updateable Templates |
| 11 | +### 1.1 - Updateable Templates |
12 | 12 |
|
13 | 13 | Your project is created using a template. If template has updates, can the upstream changes be managed with minimal impact on userland codes?
|
14 | 14 |
|
15 |
| -Yes and our project achieve this through: |
16 |
| - |
| 15 | +Yes and this is achieved through: |
17 | 16 | - Design
|
18 |
| - - Exclude configurable files from repo (e.g. .env), but include sample (e.g. .env.sample) for reference |
19 | 17 | - Create folder where all userland code is placed, template must NOT touch this folder
|
| 18 | + - template should not to be part of a monorepo |
20 | 19 | - Process
|
21 |
| - - clone template repo |
22 |
| - - create a remote called `upstream` pointing to template repo |
| 20 | + - clone template and create remote called `upstream` pointing to template |
23 | 21 | - update framework when necessary by merging `upstream` into `origin`
|
24 | 22 |
|
25 |
| -Updateable template should not to be part of a monorepo |
26 |
| - |
27 |
| -### 2 - Manageable Sharing |
| 23 | +### 1.2 - Manageable Sharing |
28 | 24 |
|
29 | 25 | You have code shared between multiple projects and libraries. If the code is updated. Can you avoid breaking your dependents and dependencies?
|
30 | 26 |
|
31 |
| -Yes, by basing on the following principles |
| 27 | +Yes, based on the following principles: |
32 | 28 | - Shared libraries should be isolated and versioned, dependents can stay on last-known-good version and update when ready
|
33 | 29 | - Isolation and versioning can be extended to `types` (for Typescript) and `contracts` (for API)
|
34 | 30 | - minimize inter & nested dependencies, and technical debt
|
35 | 31 |
|
36 | 32 | ---
|
37 | 33 |
|
38 |
| -### 3 - General Requirements |
| 34 | +### 2 - General Requirements |
39 | 35 |
|
40 | 36 | - git, github (for actions, secrets, etc) & IDE (e.g. vscode), Docker
|
41 |
| -- use unix shell (Windows use git-bash or WSL2) |
| 37 | +- unix shell (Windows use git-bash or WSL2) |
42 | 38 | - node 18+ LTS & npm 9+ (npm i -g npm@latest `to update`)
|
43 | 39 |
|
44 |
| -### 4 - Recipies |
| 40 | +### 3 - Recipies |
45 | 41 |
|
46 | 42 | [Projects](recipies/README.md) that can be used (express and vuejs template, shareable libraries and tools)
|
47 | 43 |
|
@@ -77,19 +73,19 @@ Yes, by basing on the following principles
|
77 | 73 |
|
78 | 74 | ---
|
79 | 75 |
|
80 |
| -### 5 - Sandbox |
| 76 | +### 4 - Sandbox |
81 | 77 |
|
82 | 78 | Research and exploration [projects](sandbox/README.md)
|
83 | 79 |
|
84 |
| -### 6 - Docker Dev Env |
| 80 | +### 5 - Docker Dev Env |
85 | 81 |
|
86 | 82 | Container setups for supporting apps for local development and testing [docker-devenv/README.md]()
|
87 | 83 |
|
88 |
| -### 7 - Documentation |
| 84 | +### 6 - Documentation |
89 | 85 |
|
90 |
| -The [docs](docs/home.md) folder contains documentation on other related/unrelated topics and is in the midst of a major update |
| 86 | +The [docs](docs/home.md) folder contains useful information is in the midst of a major cleanup |
91 | 87 |
|
92 |
| -### 8 - Useful scripts - For Use By Maintainers |
| 88 | +### 7 - Useful scripts - For Use By Maintainers |
93 | 89 |
|
94 | 90 | - `bulk-git.sh`: script to diff, pull, push git (for repos in `recipies`)
|
95 | 91 | - `bulk-npm.sh`: script to check for and/or update dependencies in package.json (for repos in `recipies`)
|
|
0 commit comments