Skip to content

Commit

Permalink
Website updates for v10 release (#1297)
Browse files Browse the repository at this point in the history
  • Loading branch information
cspotcode committed May 15, 2021
1 parent 6084866 commit 907f7bb
Show file tree
Hide file tree
Showing 42 changed files with 5,302 additions and 3,529 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ contact_links:
-
name: "Help! My Types Are Missing!"
about: "This is likely a configuration problem. Check our README"
url: "https://github.com/TypeStrong/ts-node/blob/main/README.md#help-my-types-are-missing"
url: "https://typestrong.org/ts-node/docs/types"
-
name: "TSError or SyntaxError"
about: "These errors come from TypeScript and node, respectively. Use StackOverflow or Discord for usage and configuration help."
url: "https://stackoverflow.com/questions/tagged/ts-node"
url: "https://typestrong.org/ts-node/docs/troubleshooting"
52 changes: 52 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
*This guide is best-effort and will be improved as necessary.*

## Features, bugfixes, and other code

We use npm scripts for building, testing, and linting. Read the scripts to become familiar with our build process. The big ones are:

```
npm install
npm run build
npm run test
npm run lint-fix
```

`npm prepare` is maintained so that anyone can install `ts-node` from git, which is useful for testing experimental branches and unreleased features.

Source lives in `src` and is compiled to `dist`. Some shim files live outside of `src` so that they can be imported at
certain paths. For example, to allow users to import `ts-node/register`, we have `register/index.js` which is a shim to
compiled code in `dist`.

`dist-raw` is for larger chunks of code which are not compiled nor linted because they have been copy-pasted from `node`'s source code.

We publish using `np`: https://npm.im/np

## Documentation

Documentation is written in markdown in `website/docs` and rendered into a website by Docusaurus.

To edit documentation, modify the markdown files in `./website/docs` and the sidebar declaration in `./website/sidebars.js`

Docs for the latest stable release live in a `docs` branch. The "Edit this page" links on the website link to the `docs`
branch so that the website can be improved in parallel with new feature work.

Docs changes for unreleased features are merged to `main` in the same PR which implements the feature, adds tests, etc.
When we release a new version, we merge `main` into `docs` and `docs` into `main`, unifying the two.

```shell
cd ./website
yarn
yarn start
# Will host live website locally
```

This site was used to generate the favicon from a high-res PNG export of the SVG. https://realfavicongenerator.net/

## Release checklist

1. Merge `docs` into `main`
2. Rebuild the README (see instructions above, necessary because npmjs.com renders the readme)
3. Publish with `np`
4. Add changelog to the Github Release; match formatting from previous releases
5. Merge `main` into `docs` (this automatically rebuilds the website)
6. If tsconfig schema has changed, send a pull request to schemastore. [Example](https://github.com/SchemaStore/schemastore/pull/1208)

0 comments on commit 907f7bb

Please sign in to comment.