0.7.3 • Published 25 days ago

flik v0.7.3

Weekly downloads
-
License
MIT
Repository
github
Last release
25 days ago

flik

Build auto-documenting CLIs with an easy-to-use, declarative API.

CLI frameworks in NodeJS are a dime-a-dozen. I built flik anyways because I didn't love any solution out there. In particular, there was always a little bit of jank when working with TypeScript. flik is built from the ground-up to make the best use of TypeScript possible, especially when working with the dynamic nature of CLIs.

🔗 Installation

With NPM:

npm install -D flik

With Yarn:

yarn add -D flik

⚡️ Usage

W.I.P.

Building your first command

It's easy!™️

Just give your command some options & define some functionality:

// my-cool-cli/commands/hello-world.ts
import { createCommand } from 'flik';

export const helloWorld = createCommand(
  {
    /**
     * The name of your command.
     */
    command: 'hello',

    /**
     *
     */
    description: "I'm just here to say hello",

    /**
     * Provide some example usage(s) for your command.
     *
     * These will be printed (with the binary & command automatically prefixed)
     * in help text if the user provides the `--help` flag.
     */
    examples: [
      'testing testing one two three'
    ],

    /**
     * Define some strongly-typed inputs for your command.
     * (We'll take a deeper look at this in the next section)
     */
    inputs: { flags, positionalArgs, variadicArg },

    /**
     *
     */
    cleanup: async () => {
      console.log('I log something when the process is stopped.');
    }
  },

  /**
   * Do some stuff with your command!
   */
  async () => {
    console.log('hello!');
  }
);

Working with inputs

TODO

Putting it all together

// my-cool-cli/index.ts
import { start } from 'flik';

import { helloWorld } from './commands/hello-world';

start({
  /**
   *
   */
  binaryName: 'my-cool-cli',

  /**
   *
   */
  version: '1.0.0',

  /**
   *
   */
  commands: [helloWorld],
});
0.7.2

25 days ago

0.7.3

25 days ago

0.7.1

12 months ago

0.7.0

12 months ago

0.6.3

1 year ago

0.6.2

1 year ago

0.6.4

1 year ago

0.5.0

1 year ago

0.4.1

1 year ago

0.4.0

1 year ago

0.6.1

1 year ago

0.6.0

1 year ago

0.5.1

1 year ago

0.4.2

1 year ago

0.3.0

2 years ago

0.2.0

2 years ago

0.1.0

2 years ago