https://github.com/lexmin0412/create-any-project
一个专用于构建 TypeScript 库的工具,1分钟快速初始化你的 TypeScript 工具库。
https://github.com/lexmin0412/create-any-project
cli packages project-creator typescript
Last synced: about 1 year ago
JSON representation
一个专用于构建 TypeScript 库的工具,1分钟快速初始化你的 TypeScript 工具库。
- Host: GitHub
- URL: https://github.com/lexmin0412/create-any-project
- Owner: lexmin0412
- License: mit
- Created: 2022-06-21T17:50:30.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2024-05-16T13:06:57.000Z (about 2 years ago)
- Last Synced: 2024-11-03T06:53:43.202Z (over 1 year ago)
- Topics: cli, packages, project-creator, typescript
- Language: TypeScript
- Homepage: https://lexmin0412.github.io/typescript-project-creator/
- Size: 854 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Create Any Project


English | [中文](./README.zh-CN.md)
Create any project as you want.
Install create-any-project globally:
```bash
npm install create-any-project --global
```
From now, whenever you want to create a new project, just run:
```sh
create-any-project
```
**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
## More
This project was inspired by [michowski/ts-init](https://github.com/michowski/ts-init).