Skip to content

An interactive Codewars TUI to downloads and explore katas

License

Notifications You must be signed in to change notification settings

Ilingu/codewars-tui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Codewars TUI

➡ An interactive codewars terminal user iterface (TUI), to search, explore and download kata in a graphical way.

Basic demo of Codewars CLI

Purpose

  • Learn rust
  • Learn TUI design pattern
  • Having fun

Installation

This TUI might not works (at all) on OS other than linux.

Build from source with cargo, or download an executable from the release page

cargo build --release # will creates a single executable for your os in ./target/release

Chromium must be installed in your pc!

  • on linux just run:
sudo snap install chromium
# or
sudo apt update
sudo apt install chromium-browser

Made with:

  1. Elegance
  2. RUST ✨🦀
  3. tui-rs ♥ (awesome lib btw)
  4. headless_chrome, automated browser for scrapping page that require JS loading (like selenium..., it's the reason why chromium must be installed)
  5. go see Cargo.toml

Improvement roadmap

  • message to user (e.g: "download successfully", "failed: reason"...)
  • detailed view of kata with the use of the API
  • DONE store the latest download path locally for future uses (setting page + editor terminal command)
  • DONE search kata by id
  • DONE fix rust bug when init cargo (output on screen)
  • DONE dynamic text input with cursor
  • DONE path input auto-completion on the path (with tab or idk) (>/< to change suggestion, Right to confirm)
  • DONE in downloading windows, display the kata name to download
  • DONE trim all special chars when created the kata folder
  • DONE automatic projects init (e.g: for rust, run cargo init then delete .git folder)

Credit zone