Help us understand the problem. What is going on with this article?

名刺の代わりにCLIアプリを書く

More than 1 year has passed since last update.

ここ1週間自己紹介用のCLIアプリを書くのが流行ってる。
はじまりはいつものSindre Sorhus。

nodeが入っていれば

npx sindresorhus

すると自己紹介CLIアプリが起動。

基本的には、このレポジトリを適当に書き換えれば簡単にできる。
はじめてのnpmライブラリにちょうどいいかも知れない。

https://github.com/sindresorhus/sindresorhus

また、使っている技術がちょっとおもしろくて、inkを使っている。
これは何かとCLIのためのReactだ。

https://github.com/vadimdemedes/ink

普通にReactでCLIを書くことができる。
なお、v0.5がちょっと壊れている雰囲気あってエラーが出るのでv0.4推奨です。

const {h, render, Component, Color } = require('ink');

class Counter extends Component {
    constructor() {
        super();

        this.state = {
            i: 0
        };
    }

    render() {
        return (
            <Color green>
                {this.state.i} tests passed
            </Color>
        );
    }

    componentDidMount() {
        this.timer = setInterval(() => {
            this.setState({
                i: this.state.i + 1
            });
        }, 100);
    }

    componentWillUnmount() {
        clearInterval(this.timer);
    }
}

render(<Counter/>);

また、本家では、import-jsxを使って実行時にばべっているのだけど、これだとインストールに時間かかるので、普通にバベるのがいいと思う。

それでは、よいCLIライフを。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away