Skip to content

docs: rewrite package READMEs#452

Open
Codeneos wants to merge 2 commits into
mainfrom
claude/update-package-readmes-OmQlH
Open

docs: rewrite package READMEs#452
Codeneos wants to merge 2 commits into
mainfrom
claude/update-package-readmes-OmQlH

Conversation

@Codeneos

Copy link
Copy Markdown
Owner

Reworks the Vlocode VS Code extension README to lead with a feature
overview and Marketplace-friendly raw image URLs, with deeper sections
following. Adds READMEs for @vlocode/core, @vlocode/salesforce and
@vlocode/util, expands the stub READMEs for @vlocode/vlocity and
@vlocode/omniscript, and cleans up typos and structure in the existing
ones. The monorepo root README gets a consolidated package table.

https://claude.ai/code/session_016d7mmn49VLtmX3E2CWUAT9

Reworks the Vlocode VS Code extension README to lead with a feature
overview and Marketplace-friendly raw image URLs, with deeper sections
following. Adds READMEs for @vlocode/core, @vlocode/salesforce and
@vlocode/util, expands the stub READMEs for @vlocode/vlocity and
@vlocode/omniscript, and cleans up typos and structure in the existing
ones. The monorepo root README gets a consolidated package table.

https://claude.ai/code/session_016d7mmn49VLtmX3E2CWUAT9
Copilot AI review requested due to automatic review settings May 15, 2026 01:29

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Documentation-focused update that refreshes the monorepo and package READMEs to better explain Vlocode’s VS Code extension and the underlying @vlocode/* libraries, with more structured sections and Marketplace-friendly image URLs.

Changes:

  • Rewrites the VS Code extension README to lead with a clearer feature overview and raw GitHub image URLs suitable for the Marketplace.
  • Adds/expands package-level READMEs across the monorepo (new READMEs for core/util/salesforce; expanded stubs for others).
  • Updates the root README with a consolidated packages table and refreshed setup/testing/release notes.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
README.md Refreshes monorepo landing page, package table, and contributor setup/testing/release docs.
packages/vscode-webviews/README.md Clarifies purpose of the internal Angular webviews package and its build outputs.
packages/vscode-extension/README.md Major rewrite for Marketplace/readability: highlights features, workflows, screenshots, and settings.
packages/vlocity/README.md Expands package overview for shared Vlocity/OmniStudio domain layer.
packages/vlocity-deploy/README.md Reworks library README to emphasize differentiators, quick start, options, and extensibility hooks.
packages/util/README.md Introduces a new README describing utilities plus a few usage examples.
packages/sass/README.md Updates README to describe the SCSS/SESS transpiler and provide an example.
packages/salesforce/README.md Introduces a new README describing the high-level Salesforce client and examples.
packages/omniscript/README.md Expands README for the OmniScript → LWC compiler with examples.
packages/core/README.md Introduces a new README for IoC/logging/filesystem foundation package with examples.
packages/cli/README.md Reworks CLI README with installation, quick start, command help, and updated FAQ.
packages/apex/README.md Updates README for the ANTLR-based APEX/SOQL parser with corrected examples and structure.

Comment thread README.md
## Setup development environment

Vlocode uses `pnpm` as package manager and lerna release manager. To setup a developer environment for Vlocode you should always use the latest LTS version of node with corepack. VScode is the preferred IDE for developing and debugging.
Vlocode uses `pnpm` as package manager and `lerna-lite` for releases. Use the latest LTS version of Node with corepack. VS Code is the preferred IDE.
Comment thread packages/core/README.md

The foundation that the rest of the `@vlocode/*` libraries (and the Vlocode VS Code extension) are built on. It bundles a small dependency-injection container, a configurable logging framework and a minimal filesystem abstraction that works both inside VS Code and in plain Node.js.

`@vlocode/core` has a single peer dependency on the matching version of [`@vlocode/util`](../util).
Comment on lines +48 to +53
import { SalesforceService } from '@vlocode/salesforce';

const result = await salesforce.executeAnonymous(`
List<Account> accs = [SELECT Id, Name FROM Account LIMIT 5];
for (Account a : accs) System.debug(a.Name);
`);

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cbb08a9fdf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +37 to +41
await sf.connect({ sfdxUsername: 'my-scratch-alias' });

const accounts = await sf.query<{ Id: string; Name: string }>(
'SELECT Id, Name FROM Account WHERE Industry = :industry LIMIT 10',
{ industry: 'Technology' }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Fix the nonexistent SalesforceService.connect example

This query example cannot be copied into a consumer project: SalesforceService is constructed from an injected SalesforceConnectionProvider and does not expose a connect() method, and its query() method only accepts the query object/string (no bind-variables argument). Users following this SFDX-alias example will hit TypeScript/runtime failures before they can run a query, so the README should show the actual provider/DI setup and query signature.

Useful? React with 👍 / 👎.

Comment on lines +61 to +65
import { SalesforceDeployService, PackageBuilder } from '@vlocode/salesforce';

const pkg = new PackageBuilder({ apiVersion: '60.0' })
.addFiles(['./force-app/main/default/classes/MyClass.cls'])
.build();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use the real package builder API

The metadata-deploy example imports PackageBuilder, but the package exports SalesforcePackageBuilder, and addFiles()/build() are async methods rather than a synchronous chain. As written, anyone following this README gets an unexported symbol plus a Promise where the example expects a package, so the snippet should be updated to the actual SalesforcePackageBuilder flow.

Useful? React with 👍 / 👎.

Comment on lines +31 to +35
const bundle = await compiler.compile({
type: 'Account',
subType: 'Onboarding',
language: 'English',
definition, // OmniScript definition JSON

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Pass an OmniScriptDefinition to compile

OmniScriptLwcCompiler.compile() takes a full OmniScriptDefinition as its first argument and reads fields such as propSetMap, bpType, bpSubType, and bpLang; it does not accept a wrapper object with type, subType, language, and definition. Following this example will throw the compiler's missing-propSetMap error instead of generating an LWC.

Useful? React with 👍 / 👎.

Comment on lines +49 to +52
await activator.activate({
connection, // @vlocode/salesforce connection
filter: 'Account/Onboarding/*', // type/subType/language wildcard
parallel: 4,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Show the actual OmniScript activation signature

OmniScriptActivator.activate() activates one script identified by an id or { type, subType, language } plus an options object; it does not accept a connection/filter/parallel job object. A user copying this bulk-activation example will pass none of the fields used by OmniScriptAccess.find() and fail to find the intended script, so the README should either show the single-script API or point users to the CLI for wildcard/parallel activation.

Useful? React with 👍 / 👎.

Comment thread packages/util/README.md
```ts
import { sfdx } from '@vlocode/util';

const connection = await sfdx.getConnection('my-scratch-alias');

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Replace the missing sfdx.getConnection helper

The sfdx namespace does not export getConnection; the available helpers in packages/util/src/sfdx.ts are things like getOrg() and the deprecated getSfdxForceConnection(). This is the only SFDX connection example in the util README, so consumers following it will immediately get Property 'getConnection' does not exist instead of a working connection.

Useful? React with 👍 / 👎.

Comment thread packages/sass/README.md
Comment on lines +28 to +29
const compiler = new SassCompiler();
const css = await compiler.compileFile('./templates/MyTemplate/style.scss');

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use a concrete Sass compiler method

SassCompiler is an abstract interface with only compile(source, options), and there is no compileFile() implementation in this package. This example therefore cannot compile or run as written; it should instantiate/use a concrete implementation (or the DI-provided compiler) and pass the file contents to compile().

Useful? React with 👍 / 👎.

CLI README now documents all seven commands (deploy, activate, export,
bulk-export, convert, build-export-definitions, impacted-tests) with
their full option set, and pulls the shared global / Salesforce
connection options into one table so they are not repeated per command.

Extension README gets a few polish passes: clearer additive-to-SFDX
framing, the SFDX-auth advantage promoted into "Why Vlocode?",
re-ordered images so each demo matches the section it sits under,
a new REST-from-.sfhttp example, and more conspicuous screenshot
placeholders for the OmniScript LWC and visual-editor sections.

https://claude.ai/code/session_016d7mmn49VLtmX3E2CWUAT9
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants