www/prettier.config.js
2025-05-28 13:43:44 +12:00

57 lines
1 KiB
JavaScript

/**
* @type {import('prettier').Config}
*/
export default {
// Basic formatting
printWidth: 100,
tabWidth: 2,
useTabs: false,
semi: false,
singleQuote: false,
quoteProps: "as-needed",
trailingComma: "es5",
bracketSpacing: true,
bracketSameLine: false,
arrowParens: "avoid",
// Language-specific formatting
overrides: [
{
files: "*.astro",
options: {
parser: "astro",
},
},
{
files: ["*.json", "*.jsonc"],
options: {
trailingComma: "none",
},
},
{
files: ["*.md", "*.mdx"],
options: {
printWidth: 80,
proseWrap: "always",
},
},
{
files: ["*.yml", "*.yaml"],
options: {
singleQuote: false,
},
},
],
// Plugins
plugins: [
"prettier-plugin-astro",
"prettier-plugin-tailwindcss", // Must be last
],
// Plugin-specific options
tailwindFunctions: ["clsx", "cn", "twMerge"],
// Astro-specific options
astroAllowShorthand: false,
};