Local development setup
Prerequisites
- Node.js 22.23.2 or newer (see
enginesin package.json). - npm 10.9.3 or newer.
- Salesforce CLI (
sf) - installed automatically via the@salesforce/clidev dependency, but a global install is convenient. - A Salesforce Dev Hub org with scratch org creation enabled.
Clone and install
git clone https://github.com/jongpie/NebulaLogger.gitcd NebulaLoggernpm installThe install step pulls in Salesforce CLI, sfdx-lwc-jest, Prettier, ESLint, and everything else needed to build and test.
Create a scratch org
sf org create scratch --definition-file config/scratch-orgs/base-scratch-def.json --alias nl-dev --set-default --duration-days 7Adjust the definition file for your needs - config/scratch-orgs/ contains a few variants.
Deploy the core
sf project deploy start --source-dir ./nebula-logger/core --target-org nl-devAssign permission sets
sf org assign permset --name LoggerAdmin --target-org nl-devAdd other permsets as needed:
LoggerLogEntryArchiveAdminfor the Big Object Archiving plugin.LoggerRecipesAdminfor the recipes.LoggerSlackPluginAdminfor the Slack plugin.
Deploy plugins (optional)
Each plugin lives under nebula-logger/plugins/<name>/plugin/<name>. Deploy the ones you want:
sf project deploy start --source-dir ./nebula-logger/plugins/slack/plugin/slack --target-org nl-devOpen the org
sf org open --target-org nl-devNavigate to the Logger Console app to verify the install worked.
Where next
- Testing - running the Apex, LWC, and e2e suites.
- PR conventions - commit and PR style.