Terminal UI for leetcode. Lets you browse questions through different topics. View, solve, run and submit questions from TUI.

Overview

Leetcode TUI

Use Leetcode in your terminal.

Demo

Why this TUI:

My motivation for creating leetcode-tui stemmed from my preference for tools that are lightweight and consume fewer system resources. When I explored existing leetcode CLI tools on GitHub, I came across a few raw command-line interfaces, but they lacked the interactivity I desired. To address this, I decided to develop leetcode-tui, a Text-based User Interface, that provides an interactive and user-friendly experience for solving LeetCode problems.

Warning
This TUI is currently under active development. Please feel free to open an issue if you find errors.

Installation

cargo install leetcode-tui-rs

Post installation

leetui

# This is going to create `~/.config/leetcode_tui/config.toml`.

# Get the Cookies from the browser `LEETCODE_SESSION` and `csrftoken` and paste it in `~/.config/leetcode_tui/config.toml`

# run the command again to populate db
leetui

Features

  • Question grouped by categories
  • Read Question
  • Jump to question using vim like keybinding (123G).
  • Open question in EDITOR
  • Solve question in multiple languages
  • Submit and run solution in multiple languages
  • Read Stats of your performance
  • Solved questions are marked with ✔️
  • Neetcode 75
  • For Fuzzy search questions in the question list use /

Few related projects:

You might also like...
A bit like tee, a bit like script, but all with a fake tty. Lets you remote control and watch a process

teetty teetty is a wrapper binary to execute a command in a pty while providing remote control facilities. This allows logging the stdout of a process

ISG lets you use YouTube as cloud storage for ANY files, not just video
ISG lets you use YouTube as cloud storage for ANY files, not just video

I was working on this instead of my finals, hope you appreciate it. I'll add all relevant executables when I can Infinite-Storage-Glitch AKA ISG (writ

⚡️(cd with env) Is a configurable cd wrapper that lets you define your environment per directory.
⚡️(cd with env) Is a configurable cd wrapper that lets you define your environment per directory.

⚡️cdwe (cd with env) A simple configurable cd wrapper that provides powerful utilities for customizing your envionment per directory. (For ZSH / BASH

An anyrun plugin that lets you search NixOS options.

anyrun-nixos-options An anyrun plugin that lets you search NixOS options. how 2 build? nix build ... or cargo build optionally :) Configuration This p

Lets you tweak Assassin's Creed Mirage in various ways.

Mirage Tweaks Lets you tweak Assassin's Creed Mirage in various ways. Currently supports adjusting the eject height and sprint speed. Usage Get the la

A filesystem driver that allows you to view your Blackboard course contents as if they were normal files and folders on your system!
A filesystem driver that allows you to view your Blackboard course contents as if they were normal files and folders on your system!

BlackboardFS Blackboard: noun A website so bad that it might as well be a network drive. BlackboardFS is a filesystem driver that allows you to view y

A small command-line application to view images from the terminal written in Rust.
A small command-line application to view images from the terminal written in Rust.

A small command-line application to view images from the terminal written in Rust. It is basically the front-end of viuer

❗️ Small script to view GitHub notifications in the terminal
❗️ Small script to view GitHub notifications in the terminal

github-notifications Small script to view GitHub notifications in the terminal Shows and color-codes the notification source, eg if you're the owner o

View Source, but for terminal escape sequences
View Source, but for terminal escape sequences

Escape Artist Escape Artist is a tool for seeing ANSI escape codes in terminal applications. You interact with your shell just like you normally would

Comments
  • v0.3.0

    v0.3.0

    [0.2.1] - 2023-08-10

    Demo

    Added

    • Neetcode 75 question list.
    • Search feature on keypress /

    Changed

    • Not null constraints on the fields that are never null from the server.
    • QuestionModelContainer { question: RefCell<QuestionModel> } changed to Rc<RefCell<QuestionModel>>
      • As prior implemented hash. Hashables should not be mutable.
    • Colorscheme as per tokyonight style.

    Fixed

    • Some questions did not appear in the "All" question list because they were not attached to any topic.
      • To resolve Unknown topic tag is added to the questions with no topic tag.
    • App now successfully restores the terminal state. No residual prints on closing the app.
    • High CPU usage due to 100ms tick interval. Now tick interval changed to 5 seconds.
    opened by akarsh1995 0
  • v0.2.0

    v0.2.0

    v0.2.0

    Added

    • Read question view is scrollable using up and down keys.
    • Question line is colored by easy => green, medium => yellow, hard => red.
    • Show helps at the bottom/top.
    • Open file in the editor to solve by pressing the key e.
    • Create solution file in the preferred language
    • Run/test the solution against test cases
      • Show test case submission stats in the popup
    • Submit solution file
    • Update table question if solution accepted
    • Loading spinner at the top.
    • Fix config directories setup for windows
    • Submission stats upon successful submit
    • Added gif demo using vhs tape
    • Vim like keybinding to jump to a problem (number followed by G (123G) in topic tag "all" questions)

    Fixed

    • Failing build windows
    opened by akarsh1995 0
  • v0.1.0

    v0.1.0

    Added

    • List all tags

      • Array
      • Hash Table
      • Linked List
      • Math
      • Recursion
      • Etc
    • List questions related to the tag.

    • Stats of the selected tag.

      • Total Attempted, Solved (Easy, Medium, Hard) by tag.
    • Scrollable View of questions corresponding to the tags.

    • Read question in the popup using Enter key on the selected question.

    opened by akarsh1995 0
Releases(v0.3.0)
  • v0.3.0(Aug 10, 2023)

    [0.2.1] - 2023-08-10

    Demo

    Added

    • Neetcode 75 question list.
    • Search feature on keypress /

    Changed

    • Not null constraints on the fields that are never null from the server.
    • QuestionModelContainer { question: RefCell<QuestionModel> } changed to Rc<RefCell<QuestionModel>>
      • As prior implemented hash. Hashables should not be mutable.
    • Colorscheme as per tokyonight style.

    Fixed

    • Some questions did not appear in "All" question list because they were not attached to any topic.
      • To resolve Unknown topic tag is added to the questions which do not have any topic tag.
    • App now successfully restores the terminal state. No residual prints on closing the app.
    • High CPU usage due to 100ms tick interval. Now tick interval changed to 5 seconds.
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(Jul 30, 2023)

    [0.2.0] - 2023-07-30

    Demo

    Added

    • Read question view is scrollable using up and down keys.
    • Question line is colored by easy => green, medium => yellow, hard => red.
    • Show helps at the bottom/top.
    • Open the file in the editor to solve by pressing the key e.
    • Create a solution file in the preferred language
    • Run/test the solution against test cases
      • show test case submission stats in the popup
    • Submit the solution file
    • Update table question if solution accepted
    • Loading spinner at the top.
    • Fix config directories setup for Windows
    • Submission stats upon successful submit
    • Added gif demo using vhs tape
    • Vim-like keybinding to jump to a problem (number followed by G (123G) in topic tag "all" questions)

    Fixed

    • Failing to build windows
    Source code(tar.gz)
    Source code(zip)
    leetui-x86_64-unknown-linux-gnu.tar.gz(3.45 MB)
  • v0.1.0(Jul 19, 2023)

    Added

    • List all tags

      • Array
      • Hash Table
      • Linked List
      • Math
      • Recursion
      • Etc
    • List questions related to the tag.

    • Stats of the selected tag.

      • Total Attempted, Solved (Easy, Medium, Hard) by tag.
    • Scrollable View of questions corresponding to the tags.

    • Read question in the popup using Enter key on the selected question.

    Source code(tar.gz)
    Source code(zip)
Owner
Akarsh
Data Scientist | Freelancer | Open to opportunities
Akarsh
Trying to solve Advent of Code 2022 in 25 different languages (1 day = 1 language)

Advent of Code 2022: 15/25 langs I’ll try to solve this Advent of Code using different language for each day. Any programs needed to run the code will

Max “Goldstein” Siling 2 Dec 15, 2022
Workflows make it easy to browse, search, execute and share commands (or a series of commands)--without needing to leave your terminal.

Workflows The repo for all public Workflows that appear within Warp and within commands.dev. To learn how to create local or repository workflows, see

Warp 369 Jan 2, 2023
Workflows make it easy to browse, search, execute and share commands (or a series of commands)--without needing to leave your terminal.

Workflows The repo for all public Workflows that appear within Warp and within commands.dev. To learn how to create local or repository workflows, see

Warp 227 Jun 1, 2022
Browse and listen to thousands of radio stations across the globe right from your terminal 🌎 📻 🎵✨

TuneIn CLI A command line interface for TuneIn Radio. You can search for stations, play them, and see what's currently playing. ?? Installation Compil

Tsiry Sandratraina 8 Mar 2, 2023
hackernews_tui is a Terminal UI to browse Hacker News with vim-like key bindings.

hackernews_tui is written in Rust with the help of Cursive TUI library. It uses HN Algolia search APIs to get Hacker News data.

Thang Pham 364 Dec 28, 2022
A terminal ASCII media player. View images, gifs, videos, webcam, YouTube, etc.. directly in the terminal as ASCII art.

Terminal Media Player View images, videos (files or YouTube links), webcam, etc directly in the terminal as ASCII. All images you see below are just m

Max Curzi 36 May 8, 2023
FastSSH is a TUI that allows you to quickly connect to your services by navigating through your SSH config.

Connect quickly to your services ?? FastSSH is a TUI that allows you to quickly connect to your services by navigating through your SSH config. Instal

Julien 85 Dec 14, 2022
A simple tui to view & control docker containers

oxker A simple tui to view & control docker containers Built in Rust, making heavy use of tui-rs & Bollard Download & install See releases download &

Jack Wills 119 Dec 28, 2022
Fully-typed global state management with a topics subscription system for Dioxus 🧬

dioxus-radio ???? ⚠️ Work in progress !! ⚠️ . Fully-typed global state management with a topics subscription system for Dioxus ??. Who is this for You

Dioxus Community 6 Dec 14, 2023
Utility for barcoderdev/unitypackage_godot, submit issues there.

unitypackage_util Requires barcoderdev/FBX2glTF to extract FBX in GLTF(glb) format. Place the binary in the same folder, or in PATH. Usage: unitypacka

Barcoder 4 May 25, 2023