
Product
Rust Support Now in Beta
Socket's Rust support is moving to Beta: all users can scan Cargo projects and generate SBOMs, including Cargo.toml-only crates, with Rust-aware supply chain checks.
A really naive way to flavor your JavaScript.
Currently, it takes 3* different files to flavor your code, a source file, an output file, and a flavor.config.js file.
$ touch source.js output.js flavor.config.js
In the flavor.config.js
file you need to export an array named "keys", and fill it with alias objects:
module.export.keys = [
{
alias: /\b(aint)\b/g,
translation: '!=='
}
]
When writing your alias specification, make sure to include \b
word boundaries to enforce that the keyword must be separate from other characters and omit it when not, like in this regex /\b(unless\()/g
.
The above regex would match unless(false)
and will translate the unless(
part into anything you'd like such as if(!false)
.
Also note the /g
global modifier to ensure this keyword matches in the whole program.
These :key:s will provide flavor with a way to find and replace your aliases with proper code.
Then in your source file write some weird code:
'This string' aint false
Run the flavor command:
$ flavor source.js output.js
And your output.js
file should give you real JavaScript.
'This string' !== false
*The output file will be autogenerated by specified path + name if it wasn't created before compile time.
Just download the config file and rename to flavor.config.js
or require()
it in your config file and concat the array onto your custom flavor.
This is just an experimental project on syntax translation, and is subject to change drastically. Please do not ship this to production.
Please join in on the fun with ideas of your own with a PR or Issue!
FAQs
Add some flavor
We found that flavor 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
Socket's Rust support is moving to Beta: all users can scan Cargo projects and generate SBOMs, including Cargo.toml-only crates, with Rust-aware supply chain checks.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.