Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/yashs662/rust_kanban

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/yashs662/rust_kanban

  • v0.10.4
  • Source
  • Go
  • Socket score

Version published
Created
Source

License Build Issues Crates.io Downloads Stars rust_kanban

Kanban App for the terminal written in rust

This kanban app will allow the user to be more productive by prioritizing tasks and achieving goals faster

Why?

I am new to rust and wanted to learn the language in a project-oriented manner, feel free to drop feedback on my code😁. Another reason for building a TUI is that I spend the majority of my time in the terminal whether it is testing or running code or writing code in neovim. I haven't been able to find any other alternatives so I have started to make my own!

Contribution

Feel free to make a pull request or make a new issue, I am open to suggestions ✌️

I currently do not own a Mac so I am unable to test the app on Mac, if you can test it on Mac, please let me know if there are any issues.

TODO

  • Create a vs code extension, for adding quick notes and tasks, with / commands for specific boards cards or types etc (think more about this in future)
  • Create a parallel web ui for the app that can be hosted from the app itself with a startup flag (e.g. --web-ui --port 8080)
  • Add ability to move boards (e.g. move a board to the left or right)
  • Optimize logger to handle high volumes of logs (app becomes sluggish when there are a lot of logs)
  • Make configuration for integer values more user-friendly (e.g. when changing the number of columns in the kanban board)
  • Implement animations for UI elements
  • Implement a way to sync with other services like notion
  • Write Tests
  • Add a Tutorial for new users (Preferably in the app itself with animations and highlighting of UI elements)
  • (Chore) Add documentation to functions and useful comments
  • (Chore) Refactor convoluted functions with many nested statements

Completed Features

  • While adding a new tag show a list of existing tags to choose from (like a context menu)
  • Implement selection in text input mode for editing text
  • Add a date picker for the date field
  • Unify all text input fields and improve the way they are handled (currently there are multiple ways to handle text input)
  • Drag and Drop cards with the mouse
  • Allow for vertical movement in text fields (e.g. card description)
  • Encryption for Cloud Saves
  • Implement Cloud saves
  • Ability to scroll through logs
  • Ability to Undo and Redo actions
  • Ability to change date formats
  • Ability to search for cards and boards in the command palette
  • Ability to filter cards by tags
  • Allow Card to be modified in Card View
  • Implement a way to add custom colors (Theme support)
  • Implement a way to interact with the kanban board using the mouse (Clicking, Scrolling are supported as of now)
  • Added ability to export kanban data to JSON
  • Implement a Command Palette (like in vs code (Ctrl + Shift + P)) as a way to interact with the app instead of using keybindings
  • Implement previews for loading a save
  • Toast Message Implementation -- (Inspired by nvim-notify)
  • Improve Help Messages
  • Custom Keybindings
  • Implement the Kanban Boards ( the main UI basically )
  • Auto Save on exit
  • Save/Load Kanban state
  • Hide/Un-hide UI elements
  • Refactoring UI Logic
  • Focusing and highlighting UI elements
  • Input Handling
  • Logging

Known Issues

  • Cursor for Card Tags and Comments is incorrect when tag is longer than available space

PSA (i.e. Public service announcement)

  • Cloud saves are now encrypted. Please keep your generated key safe. It is usually located in "config/rust_kanban/kanban_encryption_key" after signing up. If you lose your key, you will not be able to access your data (I Cannot see your data nor edit it/decrypt it). If you have lost your key, you will have to delete your data and generate a new key using the -g flag.
  • You can also provide an alternate key with the --encryption-key flag when starting the app. This will allow you to store your key in a password manager or a file that is not on disk.
  • linux example : rust-kanban --encryption-key $(cat ~/.config/rust_kanban/kanban_encryption_key)

How to use

Default Keybindings

KeybindingAction
'Ctrl + c' or 'q'Quit
'Tab'Next Focus
'BackTab'Previous Focus
'c'Configure
'Up'Move Up
'Down'Move Down
'Right'Move Right
'Left'Move Left
'i'Take User Input (when filling out a form)
'Insert'Exit user input mode
'h'Hide UI Element
'Ctrl + s'Save State
'b'New Board
'n'New Card
'd'Delete Card
'D' or 'Shift + d'Delete Board
'1'Change Card Status to Completed
'2'Change Card Status to Active
'3'Change Card Status to Stale
'4'Change Card Priority to High
'5'Change Card Priority to Medium
'6'Change Card Priority to Low
'r'Reset UI to Default
'm'Go to Main Menu
'Ctrl + p'Toggle Command Palette
'Esc'Go to Previous View
't'Clear Toast Messages
'Mouse Left Click'Select UI Element
'Mouse Middle Click'Open Command Palette
'Mouse Right Click'Go to Previous View
'Mouse Scroll Up'Scroll Up Cards
'Mouse Scroll Down'Scroll Down Cards (for cards)
'Ctrl + Mouse Scroll Up'Scroll to the right (for boards)
'Ctrl + Mouse Scroll Down'Scroll to the left (for boards)
'Ctrl + z'Undo
'Ctrl + y'Redo

Available Themes

  • Default Theme Default Theme
  • Light Light
  • Midnight Blue Midnight Blue
  • Slate Slate
  • Metro Metro
  • Matrix Matrix
  • Cyberpunk Cyberpunk
  • Dracula Dracula

FAQs

Package last updated on 12 Aug 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc