@szum-tech/prettier-config
v1.6.5
Published
Prettier shareable configuration.
Maintainers
Readme
📚 Features
- Opinionated code formatter with support for: JavaScript, Typescript, JSX, ...
- Sort the keys of a
package.jsonfile - Automatically sorts classes for Tailwind CSS v3.0+ based on recommended class order. This feature is OPTIONAL - is automatically enabled if tailwindcss package is used in project
📖 Table of Contents
- 📚 Features
- 📖 Table of Contents
- 🎯 Getting Started
- 💻 Scripts
- 🚀 Minimal GitHub Prettier check workflow
- 🛠️ Developer Info
- 📓 Changelog
- 📜 License
🎯 Getting Started
⚙️ Installation
@szum-tech/prettier-config is available as npm package.
# NPM
npm install --save-dev prettier @szum-tech/prettier-config
# YARN
yarn add -D prettier @szum-tech/prettier-config
# PNPM
pnpm add --save-dev prettier @szum-tech/prettier-config
# BUN
bun add --dev prettier @szum-tech/prettier-configConfiguration
Full documentation on how to create a Prettier configuration can be found in Prettier docs.
Configuration could be set via either:
- A
.prettierrcfile, written in YAML or JSON, with optional extensions:.yaml/.yml/.json/.json5/.js/.cjs/.mjs/.ts/.mts/.cts - A
prettier.config.(js|cjs|mjs|ts|cts|mts)file that exports an object - A
prettierkey in the project'spackage.jsonfile
The following examples show how to integrate predefined configuration in project:
- Via
prettier.config.mtsfile:
export { default } from "@szum-tech/prettier-config";Configurations also could be used to extends:
import { type Config } from "prettier";
import szumTechPrettierConfig from "@szum-tech/prettier-config";
export default {
...szumTechPrettierConfig,
semi: false
} satisfies Config;- Via
prettier.config.mjsfile:
export { default } from "@szum-tech/prettier-config";Configurations also could be used to extends:
import szumTechPrettierConfig from "@szum-tech/prettier-config";
/**
* @type {import("prettier").Config}
*/
export default {
...szumTechPrettierConfig,
semi: false
};- Via
prettier.config.cjsfile:
module.exports = require("@szum-tech/prettier-config");OR extend configuration:
const szumTechPrettierConfig = require("@szum-tech/prettier-config");
/**
* @type {import("prettier").Config}
*/
module.exports = {
...szumTechPrettierConfig,
semi: false
};- Via
prettierkey in the project'spackage.jsonfile:
{
"prettier": "@szum-tech/prettier-config"
}- Via
.prettierrcfile:
"@szum-tech/prettier-config"[!TIP] You can ignore files by adding it to
.prettierignore.
💻 Scripts
Suggested scripts you can add to package.json file:
{
"scripts": {
"prettier:check": "prettier --check .",
"prettier:write": "prettier --write ."
}
}🚀 Minimal GitHub Prettier check workflow
Here are the minimal steps required to run an Prettier check. Creating or adding any content to a PR will trigger this event. This action validate the code and return its results.
name: PR Checks ✅
on:
pull_request:
env:
NODE_VERSION: 22.x
jobs:
prettier:
name: Prettier 🧹
runs-on: ubuntu-latest
steps:
- name: Checkout code 📚
uses: actions/checkout@v4
- name: Set up Node 🟢
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
cache: "npm"
- name: Install packages ⚙️
run: npm ci
- name: Prettier Check 🧹
run: npm run prettier:check🛠️ Developer Info
Dependencies
Peer Dependencies
📓 Changelog
The changelog is regularly updated to reflect what's changed in each new release.
📜 License
This project is licensed under the terms of the MIT license.
