Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michowski/ts-init
Minimalist TypeScript package initializer - like `npm init`, but for TS.
https://github.com/michowski/ts-init
javascript javascript-library npm npm-package typescript
Last synced: about 2 months ago
JSON representation
Minimalist TypeScript package initializer - like `npm init`, but for TS.
- Host: GitHub
- URL: https://github.com/michowski/ts-init
- Owner: michowski
- License: mit
- Created: 2017-10-10T16:12:44.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2017-10-13T20:08:51.000Z (about 7 years ago)
- Last Synced: 2024-04-10T15:07:05.753Z (8 months ago)
- Topics: javascript, javascript-library, npm, npm-package, typescript
- Language: JavaScript
- Homepage:
- Size: 7.81 KB
- Stars: 29
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome - ts-init - Minimalist TypeScript package initializer - like `npm init`, but for TS. (JavaScript)
README
# ts init
Minimalist TypeScript package initializer - like `npm init`, but for TS.
Install globally:
```sh
npm i -g ts-init
```From now, whenever you want to create a new TypeScript project, just run:
```sh
npm init
ts-init
```**What does it actually do?** Well, not a lot! It will:
1. Install dev dependencies: [typescript](https://github.com/Microsoft/TypeScript), [ts-node](https://www.npmjs.com/package/ts-node) and [rimraf](https://github.com/isaacs/rimraf) (for cross-platform `rm -rf`).
2. Create npm scripts to build your project with TS compiler and run it with `ts-node`. Build files will be also properly declared in your `package.json` and added to `.gitignore`.
3. Create a minimalist `tsconfig.json` file with sane defaults: ES6 with the following flags set to true: `alwaysStrict`, `strictNullChecks`, `noImplicitAny`.## Scripts
* `npm run build` - build your project
* `npm run ts` - run your project with `ts-node`## Project structure
* `src/` - your source files, must contain `index.ts` file.
* `test/` - your test files
* `es/` - ES6 build using ES modules
* `lib/` - ES5 build using CommonJS (npm) modules. This directory contains `*.d.ts` declaration files too.## Motivation
> Almost every JavaScript library should be written in TypeScript.
This project is meant to provide everything you need in order to create an npm library (and potentially any other JS project) with modern TypeScript compiler. This way you can use modern ES6 features and static types without any cost.
In the same time, it tries not to force you to use something which is just an opinionated tool. **It doesn't include** a linter, testing library like Jest or some heavy TS configuration. Everything is kept as minimal as it's possible.
## License
MIT