{"id":20294,"library":"prettier-config-cityssm","title":"prettier-config-cityssm","description":"Prettier shared configuration for City of Sault Ste. Marie projects. Current stable version is 2.1.2, released monthly. It centralizes prettier settings (e.g., endOfLine: 'lf', disable formatting for embedded HTML, SQL support with presets for generic SQL, SQLite, SQL Server). Key differentiator: opinionated configuration tailored to city projects, includes SQL formatting, and ships TypeScript types. Releases are versioned semver with minor features and patches.","status":"active","version":"2.1.2","language":"javascript","source_language":"en","source_url":"https://github.com/cityssm/prettier-config-cityssm","tags":["javascript","prettier","prettier-config","typescript"],"install":[{"cmd":"npm install prettier-config-cityssm","lang":"bash","label":"npm"},{"cmd":"yarn add prettier-config-cityssm","lang":"bash","label":"yarn"},{"cmd":"pnpm add prettier-config-cityssm","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"ESM-only; does not export a CommonJS module. Use the default export in a prettier.config.js file with ESM.","wrong":"const config = require('prettier-config-cityssm')","symbol":"default","correct":"export { default } from 'prettier-config-cityssm'"},{"note":"Named import of `default` is not permitted; use default import syntax.","wrong":"import { default } from 'prettier-config-cityssm'","symbol":"default","correct":"import config from 'prettier-config-cityssm'; export default config"},{"note":"If using CJS in prettier.config.js (not recommended), require the module and assign to exports directly.","wrong":"const config = require('prettier-config-cityssm'); module.exports = config.default","symbol":"default","correct":"module.exports = require('prettier-config-cityssm')"}],"quickstart":{"code":"npm install --save-dev prettier-config-cityssm\n\n# In prettier.config.js (ESM):\nexport { default } from 'prettier-config-cityssm'\n\n# Or if using CJS (not recommended):\n// prettier.config.js\nmodule.exports = require('prettier-config-cityssm')","lang":"javascript","description":"Install the package and set up prettier.config.js to use the shared configuration."},"warnings":[{"fix":"Review your project's prettier configuration for SQL formatting conflicts. If you don't need SQL presets, ensure your prettier.config.js only extends the base config.","message":"Version 2.0.0 introduces SQL formatting support and presets for SQLite and SQL Server, which may override existing prettier settings if not used carefully.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Update to v2 by running `npm install prettier-config-cityssm@latest` and check for breaking changes.","message":"Version 1.x is deprecated; all projects should upgrade to v2 to get SQL formatting and other improvements.","severity":"deprecated","affected_versions":"<2.0.0"},{"fix":"Use `export { default } from 'prettier-config-cityssm'` or `module.exports = require('prettier-config-cityssm')`.","message":"The package exports a single default configuration object, not a function. Do not call it as a function.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"If you need HTML formatting in template literals, override the setting in your project's prettier config.","message":"In version 2.1.0, embedded HTML formatting is disabled to avoid breaking template literals. If you rely on HTML formatting inside template literals, this may be unexpected.","severity":"gotcha","affected_versions":">=2.1.0"},{"fix":"Set `.gitattributes` to `* text=auto eol=lf` to normalize line endings, or override `endOfLine` in your project config.","message":"The configuration enforces `endOfLine: 'lf'` since version 2.1.1. This may cause diff noise on Windows if your project uses CRLF.","severity":"gotcha","affected_versions":">=2.1.1"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run `npm install --save-dev prettier-config-cityssm` and ensure it's a devDependency.","cause":"Package not installed or not in node_modules.","error":"Error: Cannot find module 'prettier-config-cityssm'"},{"fix":"Rename file to .mjs or set `\"type\": \"module\"` in package.json. Alternatively, use CJS: `module.exports = require('prettier-config-cityssm')`.","cause":"Trying to use ESM `export` in a CommonJS file (e.g., .js file with no type: module in package.json).","error":"SyntaxError: Unexpected token 'export'"},{"fix":"Do not invoke it; use it directly as a config object: `export { default } from 'prettier-config-cityssm'`.","cause":"Calling the default export as a function, but it's an object.","error":"TypeError: prettierConfig is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}