https://github.com/rhdeck/ts-template
Template for a typescript project
https://github.com/rhdeck/ts-template
Last synced: over 1 year ago
JSON representation
Template for a typescript project
- Host: GitHub
- URL: https://github.com/rhdeck/ts-template
- Owner: rhdeck
- License: mit
- Created: 2020-08-05T13:21:32.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2023-08-12T12:10:46.000Z (almost 3 years ago)
- Last Synced: 2025-01-22T00:35:32.385Z (over 1 year ago)
- Language: JavaScript
- Size: 192 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Template for making easy-to-work-with tempates
# ts-template
## Usage
1. [Copy this template](https://github.com/rhdeck/ts-template/)
2. Clone to a local directory (eg `git clone https://github.com/me/my-repository/ && cd my-repository`)
3. Run `yarn && yarn setup` to initialize the node package (Get rid of template strings - and this readme!)
4. Happy Coding!
## Useful Scripts
1. `yarn build` will build using typescript pre-configured to node-compatible defaults
2. `yarn docs` will auto-generate a README.md that starts with TOP.md, then adds CLI documentation (via [commanderdoc](https://npmjs.com/package/commanderdoc)) for any tool you have set up, and then library documentation after that.
3. `yarn test` is pre-configured to test for typescript errors
4. `yarn watch` will watch the codebase for changes and rebuild (using [livelink](https://npmjs.com/package/@raydeck/livelink))
## Git code protections
1. `git commit` will be blocked on the `main` branch unless you set the environment variable `ALLOWMAIN=1` Branch commits and PRs are thus encouraged
2. `git commit` also tests messages for meeting the commitline standard conventions.
3. `git commit` blocks pushes that do not pass `yarn test` (as a base case, they must pass typescript compilation)
4. `npm publish` will always rebuild the code, the documentation, and push those changes back to the repository.
5. `npm publish` will only publish the lib and src directories - any others are no
## A note on "main"
I made a deliberate choice to change the primary branch from `master` to `main` for reasons that are obvious to some. This repository endeavors to make that just automatic.
PRs and feedback welcome via GitHub issues.
# Usage
```bash
npx template [options]
```
template - v1.0.0
# template - v1.0.0