Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. ๐
`create-typescript-app` is a one-stop-shop solution to set up a new or existing repository with the latest and greatest TypeScript tooling.
It includes options not just for building and testing but also automated release management, contributor recognition, GitHub repository settings, and more.
## Usage
First make sure you have the following installed:
- [Node.js](https://nodejs.org)
- [pnpm](https://pnpm.io)
- _(optional, but helpful)_ [GitHub CLI](https://cli.github.com) _(you'll need to be logged in)_
Then in an existing repository or in your directory where you'd like to make a new repository:
```shell
npx create-typescript-app
```
You can read more about the supported runtime modes in their docs pages:
- [**Setting up from the terminal**](./docs/Setup.md): creating a new repository locally on the command-line _(recommended)_
- [**Transitioning an existing repository**](./docs/Transition.md): adding this template's tooling on top of an existing repository
- [**Using the template repository**](./docs/UseThisTemplate.md): creating a new repository with the [_Use this template_](https://github.com/JoshuaKGoldberg/create-typescript-app/generate) button on GitHub
## Documentation
You can read more about `create-typescript-app` and the tooling it supports:
1. [**Blocks**](./docs/Blocks.md): a breakdown of all the pieces this template can set up.
2. [**CLI**](./docs/CLI.md): providing granular options to customize how the template is run.
3. [**FAQs**](./docs/FAQs.md): frequently asked questions and troubleshooting
> [!NOTE]
> This template is opinionated and not endorsed by the TypeScript team.
> It can be configured to set up a _lot_ of tooling out of the box.
> If you don't want to use any particular tool, you can always remove it manually.
## Development
See [`.github/CONTRIBUTING.md`](./.github/CONTRIBUTING.md), then [`.github/DEVELOPMENT.md`](./.github/DEVELOPMENT.md).
Thanks! ๐
## Contributors