Skip to content

Commit 0483e99

Browse files
committed
full vsx MIT rewrite
1 parent b52aa61 commit 0483e99

28 files changed

+5633
-480
lines changed

README.md

Lines changed: 17 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -6,37 +6,32 @@
66

77
<p align="center"><i>Detect unsafe contexts, queries in loops, hardcoded IDs, and more to optimize Salesforce Flows</i></p>
88

9+
[![GitHub stars](https://img.shields.io/github/stars/Flow-Scanner/lightning-flow-scanner)](https://img.shields.io/github/stars/Flow-Scanner/lightning-flow-scanner)
10+
[![GitHub contributors](https://img.shields.io/github/contributors/Flow-Scanner/lightning-flow-scanner.svg)](https://gitHub.com/Flow-Scanner/lightning-flow-scanner/graphs/contributors/)
11+
[![License](https://img.shields.io/npm/l/lightning-flow-scanner.svg)](github.com/Flow-Scanner/lightning-flow-scanner/raw/main/LICENSE.md)
12+
[![core](https://img.shields.io/npm/v/@flow-scanner/lightning-flow-scanner-core?label=core)](https://www.npmjs.com/package/@flow-scanner/lightning-flow-scanner-core)
13+
[![cli](https://img.shields.io/npm/v/lightning-flow-scanner?label=cli)](https://www.npmjs.com/package/lightning-flow-scanner)
14+
[![VS Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/ForceConfigControl.lightning-flow-scanner-vsx?label=VS%20Marketplace)](https://marketplace.visualstudio.com/items?itemName=ForceConfigControl.lightning-flow-scanner-vsx)
15+
[![Open VSX Version](https://img.shields.io/open-vsx/v/ForceConfigControl/lightning-flow-scanner-vsx?label=Open%20VSX)](https://open-vsx.org/extension/ForceConfigControl/lightning-flow-scanner-vsx)
16+
917
---
1018

1119
## Table of contens
1220

13-
- **[Distributions](#distributions)**
1421
- **[Default Rules](#default-rules)**
1522
- **[Configuration](#configuration)**
1623
- [Defining Severity Levels](#defining-severity-levels)
1724
- [Configuring Expressions](#configuring-expressions)
1825
- [Specifying Exceptions](#specifying-exceptions)
1926
- [Include Beta Rules](#include-beta-rules)
2027
- **[Installation](#installation)**
21-
- [Salesforce CLI Plugin](#salesforce-cli-plugin)
22-
- [Core Module](#core-module)
28+
- [Distributions](#distributions)
2329
- [CICD Templates](#cicd-templates)
2430
- **[Quick Start](#quick-start)**
2531
- **[Development](#development)**
2632

2733
---
2834

29-
## Distributions
30-
31-
| Distribution | Best for | Install / Use |
32-
|----------------------------------------------------------------|-----------------------------------------------|---------------------------------------------------------------------------------------------------------|
33-
| **[Salesforce CLI Plugin](https://github.com/Flow-Scanner/lightning-flow-scanner/blob/main/packages/cli/README.md)** | Local development, scratch orgs, CI/CD | `sf plugins install lightning-flow-scanner` |
34-
| **[VS Code Extension](https://github.com/Flow-Scanner/lightning-flow-scanner-vsx)** | Real-time scanning inside VS Code | `code --install-extension ForceConfigControl.lightning-flow-scanner-vsx` |
35-
| **[Salesforce App (Managed Package)](https://github.com/Flow-Scanner/lightning-flow-scanner-app)** | Run scans directly inside a Salesforce org | `sf package install --package 04tgK0000007M73QAE` |
36-
| **[Core Library](https://github.com/Flow-Scanner/lightning-flow-scanner/tree/main/packages/core)** (Node.js + Browser) | Custom tools, scripts, extensions, web apps | `npm install -g @flow-scanner/lightning-flow-scanner-core` |
37-
38-
**Privacy:** Zero user data collected. All processing is client-side. → See our [Security Policy](https://github.com/Flow-Scanner/lightning-flow-scanner?tab=security-ov-file).
39-
4035
## Default Rules
4136

4237
<p>📌<strong>Tip:</strong> To link directly to a specific rule, use the full GitHub anchor link format. Example:</p>
@@ -260,29 +255,16 @@ New rules are introduced in Beta mode before being added to the default ruleset.
260255

261256
## Installation
262257

263-
[![GitHub stars](https://img.shields.io/github/stars/Flow-Scanner/lightning-flow-scanner)](https://img.shields.io/github/stars/Flow-Scanner/lightning-flow-scanner)
264-
[![GitHub contributors](https://img.shields.io/github/contributors/Flow-Scanner/lightning-flow-scanner.svg)](https://gitHub.com/Flow-Scanner/lightning-flow-scanner/graphs/contributors/)
265-
[![License](https://img.shields.io/npm/l/lightning-flow-scanner.svg)](github.com/Flow-Scanner/lightning-flow-scanner/raw/main/LICENSE.md)
266-
267-
### Salesforce CLI Plugin
268-
[![npm](https://img.shields.io/npm/v/lightning-flow-scanner?label=)](https://www.npmjs.com/package/lightning-flow-scanner)
258+
### Distributions
269259

270-
```bash
271-
sf plugins install lightning-flow-scanner
272-
```
273-
OR
274-
```bash
275-
npm install -g lightning-flow-scanner
276-
```
277-
278-
### Core Module
279-
[![npm](https://img.shields.io/npm/v/@flow-scanner/lightning-flow-scanner-core?label=)](https://www.npmjs.com/package/@flow-scanner/lightning-flow-scanner-core)
280-
281-
```bash
282-
npm install -g @flow-scanner/lightning-flow-scanner-core
283-
```
260+
| Distribution | Best for | Install / Use |
261+
|----------------------------------------------------------------|-----------------------------------------------|---------------------------------------------------------------------------------------------------------|
262+
| **[Salesforce CLI Plugin](https://github.com/Flow-Scanner/lightning-flow-scanner/blob/main/packages/cli/README.md)** | Local development, scratch orgs, CI/CD | `sf plugins install lightning-flow-scanner` |
263+
| **[VS Code Extension](https://github.com/Flow-Scanner/lightning-flow-scanner/blob/main/packages/vsx/README.md)** | Real-time scanning inside VS Code | `code --install-extension ForceConfigControl.lightning-flow-scanner-vsx` |
264+
| **[Salesforce App (Managed Package)](https://github.com/Flow-Scanner/lightning-flow-scanner-app)** | Run scans directly inside a Salesforce org | `sf package install --package 04tgK0000007M73QAE` |
265+
| **[Core Library](https://github.com/Flow-Scanner/lightning-flow-scanner/tree/main/packages/core)** (Node.js + Browser) | Custom tools, scripts, extensions, web apps | `npm install -g @flow-scanner/lightning-flow-scanner-core` |
284266

285-
---
267+
**Privacy:** Zero user data collected. All processing is client-side. → See our [Security Policy](https://github.com/Flow-Scanner/lightning-flow-scanner?tab=security-ov-file).
286268

287269
### CICD Templates
288270
Ready-to-use CI/CD templates and a **native GitHub Action**.

SECURITY.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,13 @@ We actively track and maintain an up-to-date inventory of all third-party depend
4242
| `@actions/core` | [MIT](https://github.com/actions/toolkit/blob/main/packages/core/LICENSE) | Toolkit for developing GitHub Actions |
4343
| `@actions/github` | [MIT](https://github.com/actions/toolkit/blob/main/packages/github/LICENSE) | Interact with the GitHub API in Actions |
4444
| `cosmiconfig` | [MIT](https://github.com/davidtheclark/cosmiconfig/blob/main/LICENSE) | Config file loader for JavaScript/Node |
45+
46+
### VSX
47+
48+
| Package | License | Purpose` |
49+
| ------------------------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------- |
50+
| `convert-array-to-csv` | [MIT](https://github.com/zemirco/convert-array-to-csv/blob/master/LICENSE) | Converts JavaScript arrays into CSV format |
51+
| `lightning-flow-scanner-core` | [MIT](https://github.com/Flow-Scanner/lightning-flow-scanner-core/blob/main/LICENSE.md) | Salesforce Flow scanning utilities |
52+
| `tabulator-tables` | [MIT](https://github.com/olifolkerd/tabulator/blob/master/LICENSE) | Interactive tables and data grids for web apps |
53+
| `uuid` | [MIT](https://github.com/uuidjs/uuid/blob/main/LICENSE.md) | Generates RFC-compliant UUIDs |
54+
| `cosmiconfig` | [MIT](https://github.com/davidtheclark/cosmiconfig/blob/main/LICENSE) | Config file loader for JavaScript/Node |

assets/media/vsx.gif

10.3 MB
Loading

packages/cli/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
<img src="https://raw.githubusercontent.com/Flow-Scanner/Lightning-Flow-Scanner/main/assets/media/banner.png" alt="Lightning Flow Scanner" width="41%" />
44
</a>
55
</p>
6+
<p align="center"><i>Detect unsafe contexts, queries in loops, hardcoded IDs, and more to optimize Salesforce Flows</i></p>
67

78
<p align="center">
89
<img src="https://raw.githubusercontent.com/Flow-Scanner/Lightning-Flow-Scanner/main/assets/media/sfdxgif.gif" alt="Flow Overview"/>
@@ -16,6 +17,8 @@
1617
- **[Default Rules](#default-rules)**
1718
- **[Configuration](#configuration)**
1819
- **[Installation](#installation)**
20+
- **[Development](#development)**
21+
1922
---
2023

2124
## Usage

packages/vsx/.github/workflows/deploy-RELEASE.yml

Lines changed: 0 additions & 57 deletions
This file was deleted.

packages/vsx/.vscodeignore

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
.vscode/**
2+
.vscode-test/**
3+
src/**
4+
webviews/**
5+
.gitignore
6+
vsc-extension-quickstart.md
7+
**/tsconfig.json
8+
**/.eslintrc.json
9+
**/*.map
10+
**/*.ts
11+
node_modules
12+
.wdio-vscode-service
13+
**.vsix
14+
media/demo.gif
15+
__mocks__/**
16+
coverage/**
17+
18+
build/
19+
rollup.config.*
20+
tailwind.config.*
21+
.turbo/
22+
CNAME

packages/vsx/CNAME

Lines changed: 0 additions & 1 deletion
This file was deleted.

packages/vsx/Contributing.md

Lines changed: 0 additions & 9 deletions
This file was deleted.

packages/vsx/LICENSE.md

Lines changed: 0 additions & 21 deletions
This file was deleted.

packages/vsx/README.md

Lines changed: 35 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,28 @@
11
<p align="center">
22
<a href="https://github.com/Flow-Scanner">
3-
<img src="media/bannerslim.png" style="width: 41%;" />
3+
<img src="https://raw.githubusercontent.com/Flow-Scanner/Lightning-Flow-Scanner/main/assets/media/banner.png" alt="Lightning Flow Scanner" width="41%" />
44
</a>
55
</p>
66
<p align="center"><i>Detect unsafe contexts, queries in loops, hardcoded IDs, and more to optimize Salesforce Flows</i></p>
77

88
<p align="center">
9-
<img src="media/demo.gif" alt="Flow Overview"/>
9+
<img src="https://raw.githubusercontent.com/Flow-Scanner/Lightning-Flow-Scanner/main/assets/media/vsx.gif" alt="Flow Overview"/>
1010
</p>
1111

1212
---
1313

14-
## Table of contents
14+
## Table of contens
1515

1616
- **[Usage](#usage)**
17+
- **[Default Rules](#default-rules)**
1718
- **[Configuration](#configuration)**
18-
- [Scanner Options](#scanner-options)
19-
- [Extension Settings](#extension-settings)
2019
- **[Installation](#installation)**
2120
- **[Development](#development)**
2221

2322
---
2423

2524
## Usage
2625

27-
2826
Lightning Flow Scanner VSX is plug-and-play. Open any project with flows and use our side bar or the **Command Palette** and type `flowscanner` to see the list of all available commands.
2927

3028
* `Configure Flow Scanner` - Set up rules in `.flow-scanner.yml`
@@ -34,6 +32,14 @@ Lightning Flow Scanner VSX is plug-and-play. Open any project with flows and use
3432

3533
**Privacy:** Zero user data collected. All processing is client-side. → See our [Security Policy](https://github.com/Flow-Scanner/lightning-flow-scanner-vsx?tab=security-ov-file).
3634

35+
| Extension Settings | Description | Default Value |
36+
| ---------------------------- | ------------------------------------------------------------------- | ------------- |
37+
| `flowscanner.SpecifyFiles` | Set to true to select .Flow file paths instead of a root directory. | `true` |
38+
39+
---
40+
41+
## Default Rules
42+
3743
---
3844

3945
## Configuration
@@ -74,12 +80,6 @@ Using the rules section of your configurations, you can specify the list of rule
7480

7581
Note: if you prefer JSON format, you can create a `.flow-scanner.json` file using the same format. For a more on configurations, review the [scanner documentation](https://flow-scanner.github.io/lightning-flow-scanner-core/#configuration).
7682

77-
### Extension Settings
78-
79-
| Extension Settings | Description | Default Value |
80-
| ---------------------------- | ------------------------------------------------------------------- | ------------- |
81-
| `flowscanner.SpecifyFiles` | Set to true to select .Flow file paths instead of a root directory. | `true` |
82-
8383
---
8484

8585
## Installation
@@ -100,61 +100,40 @@ code --install-extension ForceConfigControl.lightning-flow-scanner-vsx
100100

101101
## Development
102102

103-
> This project optionally uses [Volta](https://volta.sh) to manage Node.js versions. Install Volta with:
103+
> This project optionally uses [Volta](https://volta.sh) to guarantee the exact same Node.js and tool versions for every contributor. Install Volta with:
104104
>
105+
> MacOs/Linux:
105106
> ```sh
106107
> curl https://get.volta.sh | bash
107108
> ```
108-
>
109-
> Volta will automatically use the Node.js version defined in `package.json`.
110-
111-
1. **Clone the repository**
112-
113-
```bash
114-
git clone https://github.com/Flow-Scanner/lightning-flow-scanner-vsx.git
115-
```
116-
117-
2. **Install dependencies**
118-
119-
```bash
120-
npm install
121-
```
122-
123-
3. **Compile a new version**
124-
125-
```bash
126-
npm run build
127-
```
128-
129-
4. **Auto-compile new changes**
130-
131-
```bash
132-
npm run watch
133-
```
109+
> Windows:
110+
> ```sh
111+
> winget install Volta.Volta
112+
> ```
113+
> Volta will automatically install and lock the tool versions defined in `package.json`.
134114
135-
5. **Run end-to-end tests**
115+
1. Clone the repository
136116
137-
```bash
138-
npm run test
139-
```
117+
```bash
118+
git clone https://github.com/Flow-Scanner/lightning-flow-scanner.git
119+
```
140120
141-
6. **Linking** **Core Module (Optional)**
121+
2. Install dependencies:
142122

143-
If you’re developing or testing updates to the core module, you can link it locally:
123+
```bash
124+
pnpm install
125+
```
144126

145-
- In the core module directory, run:
146-
```bash
147-
npm run link
148-
```
149-
- In this CLI project directory, run:
150-
```bash
151-
npm link @flow-scanner/lightning-flow-scanner-core
152-
```
127+
3. Compile:
153128

154-
---
129+
```bash
130+
pnpm run build:vsx
131+
```
155132

156-
## VSCE to VSX
133+
4. Run tests:
157134

158-
`lightning-flow-scanner-vsce` was unpublished from the Visual Studio and Open VSX Marketplaces due to a vulnerability stemming from unsafe rule loading. The issue was addressed in [core v5](https://github.com/Flow-Scanner/lightning-flow-scanner-core/releases/tag/v5.1.0). This fork, created on 22/09/2025, emphasizes security and maintainability.
135+
```bash
136+
pnpm test:vsx
137+
```
159138

160139
<p><strong>Want to help improve Lightning Flow Scanner? See our <a href="https://github.com/Flow-Scanner/lightning-flow-scanner-core?tab=contributing-ov-file">Contributing Guidelines</a></strong></p>

0 commit comments

Comments
 (0)