1.3.0 • Public • Published

    npm npm npm


    wip and naenae are command line utilities to better manage your WIP (Work In Progress) with Git.

    wip saves your progress by committing the current state of your Git repo with a commit message of "WIP" (a common convention). naenae squashes all your "WIP" commits together and lets you give the commit a better title. By periodically saving your progress, you're free to write, rewrite, and ship faster.

    Demo of the wip and naenae command line utilities


    wip and naenae run in Node.js, so you'll need to have that installed, type this in the terminal:

    $ npm install -g wip

    If you don't have it already, you'll need to install Git, too.


    When you want to save your work, type this in the terminal:

    $ wip

    When you've finished a big chunk of work and you're ready to ship it, type this:

    $ naenae

    Naenae will archive your work for safe keeping (using wip archive), and then sqash all your WIPs into a single git commit.


    No worries! Thanks to wip, you've been meticulously tracking your work with Git, so everything is gonna' be ok.

    When things break, you can see everything you've changed since the last commit with something like:

    $ git diff HEAD^ HEAD

    Or you could just download the GitHub Desktop app like the rest of us. SourceTree is also a great option, especially if you're looking for more control.


    Here's some answers to questions humans might ask if they ever read this.

    How do I turn the sound effects off?

    You read that right – wip and naenae have some sweet sound effects. They're on by default (so everyone around you can share in your progress), but you can turn them off by typing:

    $ wip silently

    Someone turned my sound effects off, how do I get them back?

    That's terrible! But all is not lost – just:

    $ wip loudly

    💩, why can't I see the emoji?

    Unfortunately, some shells don't support emoji. If you're on Windows, you may need to upgrade to something like Cygwin. If you want to avoid seeing the "unrecognized character" boxes (or if you just hate fun) you can:

    $ wip without emoji

    And when you're ready to rejoin civilization:

    $ wip with emoji

    All the hipsters use commitizen.

    And you can too! Turn it on:

    $ wip with commitizen

    You can also turn it back off:

    $ wip without commitizen

    Have you tried putting it in a watch task and commiting on save?

    npm install -g watch
    wip silently
    watch wip --ignoreDotFiles

    You won't be disappointed.



    xkcd commic about git

    Naming inspired by Silentó - Watch Me (Whip/Nae Nae):

    Silentó - Watch Me (Whip/Nae Nae) (Official)


    npm i wip

    DownloadsWeekly Downloads






    Last publish


    • jasondreyzehner