An open API service indexing awesome lists of open source software.

https://github.com/tylim88/ts-hajime

Delightfully bootstraps TypeScript npm libraries.
https://github.com/tylim88/ts-hajime

bootstrap npm-package typescript

Last synced: about 1 month ago
JSON representation

Delightfully bootstraps TypeScript npm libraries.

Awesome Lists containing this project

README

        

# TS-Hajime ๐ŸŒธ

Effortlessly bootstrap strongly-typed TypeScript npm libraries with minimal configuration and a focus on developer experience.

## ๐ŸŒŸ Features

- **Minimal Setup & Visual Clarity**: Enjoy sensible defaults that keep your project setup clean.
- **Developer-Centric**: Built with tools like `pkgroll`, `tsx`, `tsup`, `vitest`, and `cac`.
- **Comprehensive Configurations**:
- Preconfigured `tsconfig`, `eslint`, `vitest`, `prettier`, `package.json`, and `.gitignore` files.
- Ready-to-use GitHub Actions, pre-commit hooks, and npm scripts.
- Examples and tests included for both library code and `npx` commands.
- **TypeScript npx Commands**: Write `npx` commands directly in TypeScript.
- **ESM & CJS Support**: Outputs both ESM and CJS modules.
- **Optimized for VSCode**: Pre-configured with file nesting, auto-prettify on save, and a specified TypeScript TSDK path.
- **Fully Customizable**: Exposed configurations allow for complete customization to fit your needs.

## ๐Ÿš€ Getting Started

1. Run the command below to bootstrap your project:

```bash
npx ts-hajime your-app-name-here
```

Hereโ€™s what your project structure will look like:

![Folder Structure](./img.png)

2. Replace all occurrences of `my-app` with your appโ€™s name, and `my-description` with a description.

## โš™๏ธ Key Commands

- **Build**: `npm run build`
- **Test**: `npm test`
- **Lint & Fix**: `npm run lint`
- **Type Check**: `npm run tsc`
_(Note: Type checking is automatically done in GitHub Actions as part of the build step with `pkgroll`.)_
- **Try `npx` Command Locally**: `npm run npx something`
_(Modify the `npx` script in `package.json` to suit your project requirements.)_

Enjoy coding! ๐ŸŒธ