Upgrade to Pro — share decks privately, control downloads, hide ads and more …

iPipeTo - An interactive cli workflow

iPipeTo - An interactive cli workflow

ipt (pronounced iPipeTo) introduces the missing cli interactive workflow. It takes any kind of list as an input and uses that list to build an interactive interface to let you select an element from it.

A record of this talk is available on Youtube: https://youtu.be/EeuvAFSq9Ho

Find more: https://github.com/ruyadorno/ipt

Presented 13 July 2016 at the js-montreal meetup

Ruy Adorno

July 13, 2016
Tweet

More Decks by Ruy Adorno

Other Decks in Technology

Transcript

  1. iPipeTo
    An interactive cli workflow
    https://github.com/ruyadorno/ipt

    View Slide

  2. Ruy Adorno
    @ruyadorno
    http://ruyadorno.com
    ! "

    View Slide

  3. The Command-line interface
    • Command-line interfaces are often preferred by
    more advanced computer users, as they often
    provide a more concise and powerful means to
    control a program or operating system.
    • Programs with command-line interfaces are
    generally easier to automate via scripting.

    View Slide

  4. The Command-line interface
    • Lack/loss of context awareness

    View Slide

  5. Inquirer.js
    • A collection of common
    interactive command line
    user interfaces

    View Slide

  6. View Slide

  7. Initial
    implementations

    View Slide

  8. grunt-menu

    View Slide

  9. git-bc

    View Slide

  10. ntl

    View Slide

  11. • All very specific
    • Not really modular or reusable

    View Slide

  12. Unix Pipes
    Commands can be composed together using
    Unix standard output and input

    View Slide

  13. Introducing: iPipeTo
    • Takes a list of items from the standard input
    • Builds an interactive menu using Inquirer.js
    • Allows for user to manually filter items
    • Outputs selected item(s) to the standard output

    View Slide

  14. Go get it
    Install it using npm:

    View Slide

  15. Demo time

    View Slide

  16. Using pipes to send selected
    value to next command

    View Slide

  17. Using the multiple choices option

    View Slide

  18. Using file as input data

    View Slide

  19. Using the copy to clipboard feature

    View Slide

  20. One more thing...

    View Slide

  21. Workflow Gallery
    A showcase of great ideas for aliases/functions

    View Slide

  22. View Slide

  23. That's it!
    Thank you very much,

    for more info visit:
    https://github.com/
    ruyadorno/ipt
    http://ruyadorno.com
    ! "

    View Slide