
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
@scaleleap/utils
Advanced tools
Initializing (starting) new JavaScript projects is tiring and time consuming. A lot of boilerplate needs to be created before a codebase can be ready for productive work.
Keeping existing projects updated is also challenging as dependencies get stale and they need to be maintained.
To create a single project (might be a monorepo) that contains useful tooling that helps with project initialization and upkeep.
This project (package(s)) would help to minimize boilerplate in the Product project.
Ideally, it should be as simple as:
$> npx some-tool-name project-name
$> code project-name
Where some-tool-name is an initializer tool that:
git setup (from git-extras) inside itWe do not want to create any new major tools from scratch, but rather rely on existing tooling from the NodeJS ecosystem. Creation of small helper scripts is ok.
Most of the work that we do at Scale Leap is TypeScript based. Only some legacy projects rely on JavaScript (NodeJS). The focus of tooling should be primarily to support TypeScript workflows.
Configuration files should use .js extension (syntax), where possible. E.g. .eslint.js is
preferred over .eslint.json, where it is possible. It is understood that not all Utility Packages
will offer this option.
The Product should not depend directly on Utility Packages. Utility Packages should be self contained in the SL Utils package where possible. This might be also be achieved via shims in the Product project that links to, or otherwise calls the binary from the Utils package.
"lint:js": "node_modules/@scaleleap/utils/.bin/eslint --ext .js .""lint:js": "eslint --ext .js ."We don't want to create copies of configurations or setting files, if we can avoid it. It is better to just reference the config in SL Utils package insteaf, where possible.
commitlint --config node_modules/@scaleleap/utils/commitlint.config.jscommitlint --config ./commitlint.config.jsIf it is not possible to not copy a config file, then the next best thing is to make a copy and
require the contents of the file from the Utils package. E.g.
module.export = require('@scaleleap/utils/eslint-js')
All linters should be setup to run, where possible, for these use cases:
npm run lint -- runs all linters in parallel via npm-run-allnpm run lint:js or npm run lint:style -- for specific lintersNeed to make sure that all plugins are compatible with each other and imported in the right order. This is pretty tricky and needs a good amount of attention.
typescript-eslint is expecting a 2.0 release which should be really good, so we should
probably start with that right away. Can use GitHub repo as a dependency for now until the final
NPM package gets released.Exact rules are TBD.
feat: implements foofeat(some-scope): implements foopackage.jsoncz-customizable to customize the commit message prompts
trueSet up Git hooks for various uses, such as commit message validation and npm install like in the
example of ghooks.
Our primary editor is VS Code.
Should provide a file with Workspace recommended extensions for all extensions that are required for the Utils to work with IDE.
Should provide VS Code settings with all of the required settings to make Utils work with the IDE.
The goal is to get to somethign similar to the following repos:
npm run scripts in the Utils package too
FAQs
Scale Leap Utils
We found that @scaleleap/utils demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.