Viblo CLI - Cùng nhau xây dựng ứng dụng Viblo trên terminal với NodeJS và VibloSDK

Trong bài viết này mình sẽ cùng các bạn tạo ứng dụng Viblo trên terminal nhé 😄

1. Chức năng chính

✔ List posts with pagination

✔ Detail post

❌ Login/logout (sử dụng personal access token)

❌ Vote post

❌ Comment post

❌ Check/read new notifications

2. Chuẩn bị

  • Ngôn ngữ: NodeJS (>= 7.6 để support async await)
  • Thư viện:
    • VibloSDK: Official SDK của Viblo 👏
    • chalk: Hỗ trợ làm đẹp text 🍺
    • clear: Hỗ trợ xoá terminal
    • configstore: Lưu thông tin người dùng, token, ...
    • figlet: Phóng to chữ 🐦
    • inquirer: Hỗ trợ tương tác trong terminal. Giúp tương tác với terminal như form trên web vậy =))
    • marked: Hỗ trợ parse markdown ra abstract syntax tree (AST)
    • marked-terminal: Hỗ trợ render AST ra terminal. Khá đẹp 💩
    • node-pager: Brigde lệnh more cho nodeJS. Nôm na là enter để cuộn bài 😏

3. Một số hình ảnh

4. Tiến hành

GIT repository: https://github.com/tranduykhanh/viblo-cli

git clone [email protected]:tranduykhanh/viblo-cli.git 
cd viblo-cli 
yarn 
chmod +x viblo-cli.js 
./viblo-cli.js

Code cũng khá basic nên chắc mình cũng ko phải giải thích gì thêm 😃

Ngoài ra các bạn có ý tưởng gì hay hãy thoải mái comment hoặc gửi PR nhé.

Chung tay vì một cộng đồng Viblo ngày càng lớn mạnh 😄


Inspired by https://sitepoint.com/javascript-command-line-interface-cli-node-js