https://github.com/ymehmetcan/blazzi-toolkit
⚡️ JavaScript Toolkit that contains common configurations for building web applications.
https://github.com/ymehmetcan/blazzi-toolkit
commitlint-config eslint-config eslint-plugin javascript monorepo prettier-config toolkit typescript
Last synced: 11 months ago
JSON representation
⚡️ JavaScript Toolkit that contains common configurations for building web applications.
- Host: GitHub
- URL: https://github.com/ymehmetcan/blazzi-toolkit
- Owner: ymehmetcan
- License: mit
- Created: 2024-01-09T19:57:58.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-24T23:56:10.000Z (12 months ago)
- Last Synced: 2025-07-25T05:24:36.956Z (12 months ago)
- Topics: commitlint-config, eslint-config, eslint-plugin, javascript, monorepo, prettier-config, toolkit, typescript
- Language: TypeScript
- Homepage:
- Size: 639 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
Blazzi Toolkit
[](LICENSE)
JavaScript Toolkit that contains common configurations for building web applications.
## Usage
This repository is structured as a monorepo, comprising several npm packages. Each package within this monorepo is self-contained with its own `README` and dedicated documentation. These documents provide detailed instructions on the package's usage and any other relevant information.
### Package Index
| Package | NPM |
| ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| [`@blazzi/commitlint-config`](./packages/commitlint-config) | [](https://npmjs.com/package/@blazzi/commitlint-config) |
| [`@blazzi/eslint-config`](./packages/eslint-config) | [](https://npmjs.com/package/@blazzi/eslint-config) |
| [`@blazzi/eslint-plugin`](./packages/eslint-plugin) | [](https://npmjs.com/package/@blazzi/eslint-plugin) |
| [`@blazzi/stylelint-config`](./packages/stylelint-config) | [](https://npmjs.com/package/@blazzi/stylelint-config) |
| [`@blazzi/prettier-config`](./packages/prettier-config) | [](https://npmjs.com/package/@blazzi/prettier-config) |
| [`@blazzi/ts-config`](./packages/ts-config) | [](https://npmjs.com/package/@blazzi/ts-config) |
## Prerequisites
Before you begin, ensure you have `node: >=20.18` installed on your system. This project uses `pnpm` as the package manager.
### Installing pnpm
> [!TIP]
> If you don't have `pnpm` installed, you can install it either globally on your system or activate it for this project only.
#### Global Installation
To install `pnpm` globally, run the following command:
```bash
npm install -g pnpm
```
#### Using Corepack
With Node.js v16.17 or newer, you may install the `latest` version of pnpm by just specifying the tag:
```bash
corepack prepare pnpm@latest --activate
```
## Installing Project
To set up the project on your local machine, install dependencies by running the following command:
```bash
pnpm install
```
## Development
This project leverages `pnpm workspaces`, optimizing the management of package dependencies across the monorepo. Key tools and frameworks used in this project include:
- [**CommitLint**](https://commitlint.js.org/): Ensures that commit messages adhere to a conventional format.
- [**Prettier**](https://prettier.io/): Maintains consistent code formatting across the codebase.
- [**ESLint**](https://eslint.org/): Enforces code quality and style guidelines.
- [**Tsup**](https://github.com/egoist/tsup): Simplifies the TypeScript bundling process.
- [**Turbo**](https://turborepo.org/): Efficiently manages and runs build tasks across workspace projects.
> [!IMPORTANT]
> For developers contributing to this project, it's important to familiarize yourself with these tools, as they are integral to the workflow and code quality standards.
## Semantic Versioning
This project adheres to [Semantic Versioning (SemVer)](https://semver.org/). This approach allows users and contributors to understand the impact of updates and changes at a glance.
### Key Principles
- **MAJOR version** increments signify backward-incompatible changes.
- **MINOR version** increments indicate the addition of new, backward-compatible functionality.
- **PATCH version** increments are for backward-compatible bug fixes.
## Contributing
Your contributions are welcome! Please adhere to commit message and code-style conventions when submitting pull requests.
## License
This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
© 2024 [Mehmetcan YILMAZ](https://github.com/ymehmetcan)