JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q37830F
  • License SEE LICENSE IN LICENSE

Extended scripts, enhanced lifecycle hooks, integrated dependencies, and environment setup — Your all in one script execution tool.

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (jko) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    j•ko

    jko License

    j•ko is a script execution tool that extends scripts and integrates dependencies from external files, promoting organization and sharing.

    🚀 Quick Start

    1. Install jko:
    $ npm install -g jko
    1. Confirm that the jko is installed correctly and check out the available options.:
    $ jko --help
    1. List available scripts defined in the jko.js file (or in package.json):
    $ jko
    1. Run one of your scripts:
    $ jko yourScript arg1 ... argN

    📦 Sharing Scripts and Dependencies across Projects

    jko was designed to streamline project management by organizing and sharing scripts and dependencies across projects, leveraging JavaScript’s dynamic capabilities to import files. This modular approach enables you to build complex dependency trees and automate tasks with ease.

    jko.js:

    import extraScripts from './extra-scripts'
    import fromSomePackageScripts from 'somePackage'
    import { devDependencies } from './another/path/dependencies'
    import { dependencies } from 'anotherPackage/dependencies'
    
    
    export default {
      scripts: {
        yourScript1: "someCommand",
        yourScript2: function (param1, paramN) {
          // do something
        },
        ...extraScripts,
        ...fromSomePackageScripts.scripts
      },
      envFile: './path/to/.env',
      dependencies: {
        packageName1: "#.#.#",
        packageNameN: "#.#.#",
        ...dependencies
      },
      devDependencies: {
        devPackageName1: "#.#.#",
        devPackageNameN: "#.#.#",
        ...devDependencies
      },
      packageManager: 'npm',
      logLevel: 'error',
    }

    Run your script:

    $ jko yourScript2 arg1 ... argN

    or install your dependencies:

    $ jko install

    📜 Declarative Syntax

    jko provides a structured and declarative way to manage scripts, and orchestrate tasks.

    • $pre – Defines pre-execution steps that must run before the script.
    • $post – Specifies post-execution actions that run after the script.
    • $catch – Handles errors within the script, allowing custom error responses.
    • $disable – Prevents a specific script from executing.
    • $comment – Adds a descriptive remark for a specific script.
    export default {
      scripts: {
        "$pre (yourScript)": "echo 'Preparing for ...'",
        "yourScript": "someCommand",
        "$comment (yourScript)": "This script will ..."
        "$post (yourScript)": "echo 'Done!'",
        "$catch (yourScript)": "echo 'An error occurred during execution!'",
        "$disable (yourScript2)": function (param1, paramN) {
          // do something
        }
      }
    }

    Run your script:

    $ jko yourScript arg1 ... argN

    📖 Full Documentation

    j•ko https://jko-doc.github.io/

    Support

    ko-fi

    liberapay