@hloth/scaffold
v1.0.7
Published
NPX tool for me to easily scaffold new project, containing TypeScript config for modern ES, eslint with my favorite code style and Jest tests with ts support
Downloads
9
Readme
Scaffold
NPX tool for me to easily scaffold new project, containing TypeScript config for modern ES, eslint with my favorite code style and Jest tests with TS support.
Moreover, this tool was scaffolded with itself! It tests itself automatically with Jest after each build by creating simple test project and testing Jest with Jest's test.
This project is mostly for demonstrating which defaults I use, it is not intended to be used by anyone, simply because everyone has it's own preferences, so don't judge me for using X here. Though I'm still accepting any criticism that may help me improve this setup to work faster and better :)
Size of generated project is just 142 MB with all dependencies
I think there is a better alternatives to some things I use here, so suggest me alternative tools in the Issues tab if you know:
- ~~Append .js extension to imports during build~~
- ~~Currently is done using external
@zoltu/typescript-transformer-append-js-extension
plugin withttypescript
~~
- ~~Currently is done using external
- ~~Build replacing process~~
- ~~Currently ./out dir is removed via external
del-cli
package and then files are copied viacpy-cli
which may pose threat with security vulnerabilities. Maybe change to native commands such asrm
andcp
?~~
- ~~Currently ./out dir is removed via external
- Add support for Yarn when installing dependencies
Tool usage
npx @hloth/scaffold project-name --tests
or
git clone https://github.com/VityaSchel/scaffold && cd scaffold && npm i && npm run set && sf project-name
Generated project usage
Project structure
.
├── src
│ ├── .env.ts
│ └── index.ts
├── out
├── test
│ └── index.test.ts
├── .env
├── babel.config.cjs
├── jest.config.js
├── tsconfig.json
├── .swcrc
├── LICENSE.md
├── package.json
└── package-lock.json
Scripts
Build: npm run build
Run: npm start
or node out/index.js
Test (with TypeScript): npm test
Building
Previusly building was done with ttsc which is a postprocessor for Typescript with plugins support. In v1.0.1 it was replaced with esbuild and then swc. swc was faster, so now we're using it.