npm package: @net-lobster/prettier-config
Description: Net Lobster Prettier config
Author: Tony Brown
Latest version: 1.2.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @net-lobster/prettier-config

A shared [Prettier](https://prettier.io) configuration for Net Lobster projects.  
Use this to keep consistent formatting across all SuiteScript / SDF projects.

---

## 🚀 Installation

Install Prettier and this config as **dev dependencies**:

```bash
npm install --save-dev prettier @net-lobster/prettier-config
```

or with Yarn:

```bash
yarn add -D prettier @net-lobster/prettier-config
```

---

## ⚙️ Setup

Once installed, this Prettier config will work automatically in your project. However, it's **best practice** to create a **`.prettierrc.mjs`** file to make it explicit which config you're using and to enable project-specific overrides if needed.

### Automatic Setup

To automatically create your **`.prettierrc.mjs`** and **`.prettierignore`** files, run:

```bash
npx setup-netlobster-prettier
```

This script will:

- Create a `.prettierrc.mjs` file in your project root (if it doesn't already exist)
- Create a `.prettierignore` file that excludes `src/FileCabinet/SuiteScripts/NetLobster/lib/**` (if it doesn't already exist)

The `.prettierrc.mjs` file will contain:

```js
import netLobsterPrettierConfig from "@net-lobster/prettier-config";

/**
 * @type {import("prettier").Config}
 */
//! As of 10-21-25 you MUST RESTART VS CODE before any overrides take effect. See https://github.com/prettier/prettier-vscode/issues/3644
const config = {
  ...netLobsterPrettierConfig,
  // Add any project-specific overrides here
};

export default config;
```

### Manual Setup

If you prefer to do it yourself, create a file named **`.prettierrc.mjs`** in your project root with the following contents:

```js
import netLobsterPrettierConfig from "@net-lobster/prettier-config";

/**
 * @type {import("prettier").Config}
 */
//! As of 10-21-25 you MUST RESTART VS CODE before any overrides take effect. See https://github.com/prettier/prettier-vscode/issues/3644
const config = {
  ...netLobsterPrettierConfig,
  // Add any project-specific overrides here
};

export default config;
```

**You may need to restart your editor for it to recognize the new congfig.**

That's it! Prettier will now explicitly use the shared Net Lobster settings.

---

## 🧩 Optional Overrides

If a specific project needs small tweaks, you can extend the config by adding ovverrides to the prettierrc.mjs file that we added during setup.

```js
import netLobsterPrettierConfig from "@net-lobster/prettier-config";

/**
 * @type {import("prettier").Config}
 */
const config = {
  ...netLobsterPrettierConfig,
  // Add any project-specific overrides here
  printWidth: 120, // example override
};

export default config;
```

See [Prettier options docs.](https://prettier.io/docs/options)

---

## 🧹 Usage

To format your code manually:

```bash
npx prettier --write .
```

Or enable **"Format on Save"** in your code editor.

---

## 📄 Notes

- A `.prettierignore` file is automatically created by the setup script to exclude the `lib/**` directory. You can add additional patterns to skip other files (e.g. `/Objects`, `/FileCabinet/Images`, etc.). See [Prettier ignore docs.](https://prettier.io/docs/ignore)
- Prettier will automatically pick up this config as long as it’s installed in your project.

---

© Net Lobster – Shared developer tooling