{"id":20248,"library":"office-addin-lint","title":"Office Add-in Lint","description":"A configuration package that provides ESLint and Prettier integration for Office Add-in projects. Current stable version is 3.0.7, with monthly releases. It simplifies setting up linting and formatting by bundling shared ESLint configs, Prettier options, and TypeScript support. Differentiates from raw ESLint/Prettier by providing pre-tuned rules for Office Add-in development and automatic dependency management.","status":"active","version":"3.0.7","language":"javascript","source_language":"en","source_url":"https://github.com/OfficeDev/Office-Addin-Scripts","tags":["javascript","Office","Office Add-in","typescript"],"install":[{"cmd":"npm install office-addin-lint","lang":"bash","label":"npm"},{"cmd":"yarn add office-addin-lint","lang":"bash","label":"yarn"},{"cmd":"pnpm add office-addin-lint","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core linting engine","package":"eslint","optional":false},{"reason":"Code formatting","package":"prettier","optional":false}],"imports":[{"note":"Package is ESM-only since v3","wrong":"const officeAddinLint = require('office-addin-lint')","symbol":"officeAddinLint","correct":"import { officeAddinLint } from 'office-addin-lint'"},{"note":"Named export, not default","wrong":"import configure from 'office-addin-lint'","symbol":"configure","correct":"import { configure } from 'office-addin-lint'"},{"note":"Type import for TypeScript users","wrong":"import { ConfigOptions } from 'office-addin-lint'","symbol":"ConfigOptions","correct":"import type { ConfigOptions } from 'office-addin-lint'"}],"quickstart":{"code":"import { configure } from 'office-addin-lint';\nconst config = configure({\n  eslint: { fix: false },\n  prettier: { printWidth: 100 }\n});\nconsole.log(config);","lang":"typescript","description":"Shows how to import and use the configure function to set up ESLint and Prettier options."},"warnings":[{"fix":"Use import syntax instead of require(). Ensure your project is configured for ESM (e.g., type: 'module' in package.json).","message":"Modules are ESM-only since v3, require() not supported","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Replace officeAddinLint() with configure() as shown in the quickstart.","message":"officeAddinLint() function deprecated in v3; use configure() instead","severity":"deprecated","affected_versions":">=3.0.0"},{"fix":"Run npm install eslint prettier --save-dev in your project.","message":"ESLint and Prettier must be installed as peer dependencies","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run npm install office-addin-lint --save-dev then clear cache with npm cache clean --force","cause":"Package not installed or outdated npm cache","error":"Cannot find module 'office-addin-lint'"},{"fix":"Use configure() instead of officeAddinLint(). See documentation.","cause":"Using deprecated v2 function name in v3","error":"TypeError: officeAddinLint is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}