Skip to content

Commit 3eed943

Browse files
📝 docs: fill out DEVELOPMENT.md (#129)
1 parent 522043a commit 3eed943

File tree

2 files changed

+24
-4
lines changed

2 files changed

+24
-4
lines changed

.github/CONTRIBUTING.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ Be sure to fill out the pull request template's requested information -- otherwi
4747
PRs are also expected to have a title that adheres to [commitlint](https://github.com/conventional-changelog/commitlint) and uses a [gitmoji emoji](https://gitmoji.dev).
4848
Only PR titles need to be in that format, not individual commits.
4949
Don't worry if you get this wrong: you can always change the PR title after sending it.
50+
Check [previously merged PRs](https://github.com/LearningTypeScript/projects/pulls?q=is%3Apr+is%3Amerged+-label%3Adependencies+) for reference.
5051

5152
Please try not to force-push commits to PRs that have already been reviewed.
5253
Doing so makes it harder to review the changes.

.github/DEVELOPMENT.md

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,27 @@
11
# Development
22

3-
TODO
3+
Thanks for your interest in developing on _Learning TypeScript_'s projects! 💖
44

5-
Will mention:
5+
> Be sure to read through [CONTRIBUTING.md](./CONTRIBUTING.md) and [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md) before contributing.
66
7-
- only one package.json
8-
- CI tasks as they're created
7+
## Project Structures
8+
9+
Projects mostly have their directory and file structures standardized and verified by tests in `test/file.test.ts`.
10+
Each project should include a `tsconfig.json` in each "step" that extends the root `tsconfig.json` in this repository:
11+
12+
- 🥗 Appetizers should have a TSConfig in their root and in each step
13+
- 🍲 Entrees and 🍰 desserts should have just the TSConfig in their root
14+
15+
### Solutions
16+
17+
Project solutions are stored as `solution.ts` and/or `*.solution.ts` files alongside starting files.
18+
Each project should have two scripts:
19+
20+
- `test`: what learners run to verify their solutions have worked
21+
- `test:solution`: the same as `test`, but running on those `*solution.ts` files
22+
23+
CI tasks verify project solutions:
24+
25+
- [solutions.yml](./workflows/solutions.yml): that `test:solution` passes
26+
- [test.yml](./workflows/test.yml): that replacing original files with solutions passes `npm run test`
27+
- [tsc.yml](./workflows/tsc.yml): that replacing original files with solutions passes `npm run tsc`

0 commit comments

Comments
 (0)