qmljsify - Convert an NPM package into a QML friendly JavaScript file

  • Qt Champions 2016


    I would like to share a experimental project here. It is qmljsify , a tool that could converts an NPM package into a QML friendly JavaScript file.

    Project Site

    Usage: qmljsify [options] command package
    qmljsify - Download and convert an NPM package to a QML friendly JavaScript file
      -h, --help   Displays this help.
      --no-minify  Turn off JavaScript Compression
      command      Command [Available Commands: convert]
      package      NPM package to be qmljsified


      qmljsify convert sprintf

    Then it will fetch sprintf from NPM and create two files

      sprintf.orig.js # A compiled and minified sprintf library
      sprintf.js # A Wrapper of the compiled sprintf library for QML

    That is what sprintf.js looks like:

    .pragma library
    var object_stringify = QML.object_stringify;
    var format = QML.format;
    var cache = QML.cache;
    var parse = QML.parse;
    var sprintf = QML.sprintf;
    var vsprintf = QML.vsprintf;

    Then you could use it in your QML file:

    import "./sprintf.js" as SPrintf
    // [snipped]
    SPrintf.sprintf("%d %d", 1 , 2);

    It is just the first release and not every package works. If you have any problem / suggestion , please feel free to tell me.

  • Lifetime Qt Champion


    Looks nice ! Thanks for sharing !

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.