Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

grunt-jscrambler

Package Overview
Dependencies
Maintainers
11
Versions
136
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

grunt-jscrambler

Obfuscate your source files using the Jscrambler API.

  • 6.3.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
218
increased by120.2%
Maintainers
11
Weekly downloads
 
Created
Source

Jscrambler

grunt-jscrambler

Add obfuscation to your build process with grunt and grunt-jscrambler.

How to Use

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins.

Version Compatibility


The version's compatibility table match your Jscrambler Version with the Jscrambler Grunt Client. Please make sure you install the right version, otherwise some functionalities might not work properly.

Jscrambler VersionClient and Integrations
<= 7.1<= 5.x.x
>= 7.2>= 6.0.0

Install

Once you're familiar with that process, you may install this plugin:

npm install grunt-jscrambler --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-jscrambler');

Setup your Jscrambler Grunt task

In your project's Gruntfile, add a section named jscrambler to the data object passed into grunt.initConfig().

Relative path
grunt.initConfig({
  jscrambler: {
    main: {
      options: {
        keys: {
          accessKey: '',
          secretKey: ''
        },
        applicationId: '',
        params: [
          {
            name: 'whitespaceRemoval'
          },
          {
            name: 'charToTernaryOperator'
          }
        ]
      },
      files: [
        {expand: true, src: ['foo.js', 'bar.js'], dest: 'dist/'},
      ],
      // (Optional) Retrieve the protection Id
      successCallback(protectionId) {
        // console.log('Protection Id: ', protectionId);
      }
    }
  },
});
Absolute path
grunt.initConfig({
  jscrambler: {
    main: {
      options: {
        keys: {
          accessKey: '',
          secretKey: ''
        },
        applicationId: '',
        params: [
          {
            name: 'whitespaceRemoval'
          },
          {
            name: 'charToTernaryOperator'
          }
        ]
      },
      files: [
        {
          expand: true,
          cwd: '/example/src/'
          src: ['foo.js', 'bar.js'],
          dest: '/destination/'
        },
        {
          expand: true,
          cwd: '/otherexample/'
          src: ['foo.js', 'bar.js'],
          dest: '/otherdestination/'
        }
      ],
      // (Optional) Retrieve the protection Id
      successCallback(protectionId) {
        // console.log('Protection Id: ', protectionId);
      }
    }
  },
});

You will need your credentials and Application ID in order to protect your application. Navigate to your Settings page and grab your accessKey and secretKey at the API Credentials section.

Your applicationId can be found inside your application page just below your application name. Click the copy to clipboard icon to copy the applicationId.

Application ID

You can also grab your current configuration on your application page. This will download a .json file containing a valid configuration with your currently selected options.

download config file location

Keep in mind that the params object is optional and if it is not provided we will use your previous configuration.

Usage Example

You can find some working examples here.

Keywords

FAQs

Package last updated on 10 Nov 2022

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc