qcam / 3llo Goto Github PK
View Code? Open in Web Editor NEW3llo - Trello interactive CLI aplication
Home Page: https://github.com/qcam/3llo
License: MIT License
3llo - Trello interactive CLI aplication
Home Page: https://github.com/qcam/3llo
License: MIT License
Sorry for the spam, just really loving the idea, especially since Trello can get slow with boards with a lot of cards. Would be great if when adding a card you could include labels and members into a name. It's something that Trello does by default when creating card inside a list directly and it makes things even faster.
E.g.
3llo > new card
Choose a list: ...
Name: name #bug @me
Great work, very useful, please keep going!
Hi @qcam, I think we should implement the label command, how do you think? It would be a very beginning step for adding members and labels on card add
.
Archive card obviously
I get the following exception when attempting to list lists, or card list mine
/Users/nmenge/.rvm/gems/ruby-2.4.0/gems/3llo-0.1.5/lib/3llo/client.rb:23:in get': invalid id (RuntimeError) from /Users/nmenge/.rvm/gems/ruby-2.4.0/gems/3llo-0.1.5/lib/3llo.rb:77:in
list_lists'
from /Users/nmenge/.rvm/gems/ruby-2.4.0/gems/3llo-0.1.5/bin/3llo:38:in block in <top (required)>' from /Users/nmenge/.rvm/gems/ruby-2.4.0/gems/3llo-0.1.5/lib/3llo/interface.rb:9:in
print_frame'
from /Users/nmenge/.rvm/gems/ruby-2.4.0/gems/3llo-0.1.5/bin/3llo:34:in <top (required)>' from /Users/nmenge/.rvm/gems/ruby-2.4.0/bin/3llo:22:in
load'
from /Users/nmenge/.rvm/gems/ruby-2.4.0/bin/3llo:22:in <main>' from /Users/nmenge/.rvm/gems/ruby-2.4.0/bin/ruby_executable_hooks:15:in
eval'
from /Users/nmenge/.rvm/gems/ruby-2.4.0/bin/ruby_executable_hooks:15:in `
Because of interactive base of 3llo its hard for example to add multiple cards at the same time or assign multiple cards to some one
How can I do this?
$ 3llo card list | grep animation
For me, the main value of a command-line tool is that at I can combine it (through pipes, among other things) with other command-line tools. But if one can only run 3llo
through it's own interactive "shell," then I do not have any options to do this.
In such a case, the 3llo
is not that usable for me, very unfortunately. (Because the installation was a breeze.) 😕
Hi,
Recently discovered this CLI and loving it a lot! I noticed there is code written in here for adding in labels, but when I tried typing label in the CLI I get this message "label" is not a valid command. Run "help" to display the document.
I suspect this must be related to how the ruby source code is not being compiled properly from the gem install 3llo
command? I'm not too sure since I've never touch ruby projects before.
Hi,
I have the following err on listing a card comments :
3llo > Thales SF > card comments #33
Traceback (most recent call last):
14: from /usr/local/bin/3llo:23:in `<main>'
13: from /usr/local/bin/3llo:23:in `load'
12: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/bin/3llo:9:in `<top (required)>'
11: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/application.rb:36:in `start'
10: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:23:in `start'
9: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:23:in `loop'
8: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:28:in `block in start'
7: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:49:in `execute_command!'
6: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command.rb:14:in `execute'
5: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command.rb:54:in `build_command'
4: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/card.rb:36:in `execute'
3: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/card/comments.rb:11:in `execute'
2: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/api/card.rb:86:in `list_comments'
1: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/api/card.rb:86:in `map'
/Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/api/card.rb:90:in `block in list_comments': uninitialized constant Tr3llo::API::Card::DateTime (NameError)
FYI the card look like this
(2) [TIMEBOX] ETQSF J'ai une strat d'utilisation du Grafana (@me) [#Monitoring, #Observability]
[xxx #10]
Link: https://trello.com/c/xxxx
https://URL.io/docs/k8saas-public-documentation/Architecture/Monitoring/README.html
DOD [xxx #1]
[x] J'ai une liste de dashboard avec les données que je veux afficher (pour toutes les apps!) [xxx #1]
[x] Je connais les datasource sur lesquelles je veux me brancher [xxx #2]
[x] J'ai une strat pour mettre tout ça en place [xxx #3]
[x] J'ai une page Notion avec toutes ces infos [xxx #4]
[ ] J'ai des next steps pour les points non traités [xxx #5]
And the comments
Com' 1
problème :point_right: https://URL.io/docs/k8saas-public-documentation/Architecture/Monitoring/README.html#howto-setup-your-own-dashboards TODO
Com' 2
### Recap
- [doc](https://www.notion.so/URL) :point_left:
- [Nouveaux tickets créés]()
3llo > Board > card comments #6 Traceback (most recent call last): 14: from /usr/local/bin/3llo:23:in
load' 12: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/bin/3llo:9:in
<top (required)>'start' 10: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:23:in
start'loop' 8: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:28:in
block in start'execute_command!' 6: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command.rb:14:in
execute'build_command' 4: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/card.rb:36:in
execute'execute' 2: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/api/card.rb:86:in
list_comments'map' /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/api/card.rb:90:in
block in list_comments': uninitialized constant Tr3llo::API::Card::DateTime (NameError)`When I list cards I see the members assigned to them, unfortunately, it doesn't seem to work for list cards
method.
Great work, very useful, please keep going!
Is it possible to tag a card? Thanks!
What I did
Entered list
or board
in the 3llo commandline
What I expected
An Invalid command
warning (Which gets printed when you e.g. just enter card
without any arugments)
What happend instead
The programm crashes with a NoMethodError.
3llo > board
Traceback (most recent call last):
7: from /home/fleaz/.gem/ruby/2.5.0/bin/3llo:23:in `<main>'
6: from /home/fleaz/.gem/ruby/2.5.0/bin/3llo:23:in `load'
5: from /home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/bin/3llo:31:in `<top (required)>'
4: from /home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/lib/3llo/controller.rb:14:in `start'
3: from /home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/lib/3llo/controller.rb:14:in `loop'
2: from /home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/lib/3llo/controller.rb:20:in `block in start'
1: from /home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/lib/3llo/command_factory.rb:20:in `factory'
/home/fleaz/.gem/ruby/2.5.0/gems/3llo-0.1.11/lib/3llo/board_command_factory.rb:13:in `factory': undefined method `to_sym' for nil:NilClass (NoMethodError)
Best regards,
Felix
Is it possible to use the (excellent) 3llo in an automated way?
I'd like to use it to fetch data for another process to consume, e.gl.
3llo --board 123456789 card list mine | some-other-process
or something along those line. I'm more than happy to try and help add that if it isn't there but you'll need to point me in the direction.
Assign members to the card
Show all the comments of the card.
Would be great to have an option to archive a whole list!
Great work, very useful, please keep working on it 😄 !
3llo > Traceback (most recent call last):
6: from /home/isak/.gem/ruby/2.5.0/bin/3llo:23:in `<main>'
5: from /home/isak/.gem/ruby/2.5.0/bin/3llo:23:in `load'
4: from /home/isak/.gem/ruby/2.5.0/gems/3llo-0.3.1/bin/3llo:45:in `<top (required)>'
3: from /home/isak/.gem/ruby/2.5.0/gems/3llo-0.3.1/lib/3llo/controller.rb:14:in `start'
2: from /home/isak/.gem/ruby/2.5.0/gems/3llo-0.3.1/lib/3llo/controller.rb:14:in `loop'
1: from /home/isak/.gem/ruby/2.5.0/gems/3llo-0.3.1/lib/3llo/controller.rb:20:in `block in start'
/home/isak/.gem/ruby/2.5.0/gems/3llo-0.3.1/lib/3llo/command_factory.rb:16:in `factory': undefined method `strip' for nil:NilClass (NoMethodError)
Hi,
> label
list is broken too
3llo > Thales SF > label list
Traceback (most recent call last):
19: from /usr/local/bin/3llo:23:in `<main>'
18: from /usr/local/bin/3llo:23:in `load'
17: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/bin/3llo:9:in `<top (required)>'
16: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/application.rb:36:in `start'
15: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:23:in `start'
14: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:23:in `loop'
13: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:28:in `block in start'
12: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/controller.rb:49:in `execute_command!'
11: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command.rb:14:in `execute'
10: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command.rb:58:in `build_command'
9: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/label.rb:13:in `execute'
8: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/label/list.rb:11:in `execute'
7: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/interface.rb:10:in `print_frame'
6: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/command/label/list.rb:12:in `block in execute'
5: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/view/label/list.rb:9:in `render'
4: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/view/label/list.rb:9:in `map'
3: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/view/label/list.rb:9:in `block in render'
2: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/view/label/list.rb:16:in `render_label'
1: from /Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/utils.rb:44:in `paint'
/Library/Ruby/Gems/2.6.0/gems/3llo-1.2.0/lib/3llo/utils.rb:44:in `fetch': key not found: nil (KeyError)
Because is not very easy to copy the id in a tmux pane with mouse. Easier is to use the Name.
Hi
Just wondering if we could add an enhancement that displays the current board on the command line. Something similar to how directories are displayed on Powerlevel10k.
Something like the picture below.
Personally I think this is useful because sometimes my boards are pretty similar to each other but are meant for different teams. And I want to be able to know which board I'm on without having to do board list
and board select
to make sure I'm on that board.
The command
3llo > A board name > list cards the_second_list_id
The error
/usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/utils.rb:44:in `fetch': key not found: "pink_dark" (KeyError)
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/utils.rb:44:in `paint'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:26:in `format_label'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:16:in `block in render_card'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:16:in `map'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:16:in `render_card'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:8:in `block in render'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:8:in `map'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/view/list/cards.rb:8:in `render'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/command/list/cards.rb:14:in `block in execute'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/interface.rb:10:in `print_frame'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/command/list/cards.rb:13:in `execute'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/command/list.rb:22:in `execute'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/command.rb:56:in `build_command'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/command.rb:14:in `execute'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/controller.rb:49:in `execute_command!'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/controller.rb:28:in `block in start'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/controller.rb:23:in `loop'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/controller.rb:23:in `start'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/lib/3llo/application.rb:36:in `start'
from /usr/lib64/ruby/gems/3.0.0/gems/3llo-1.3.1/bin/3llo:9:in `<top (required)>'
from /usr/bin/3llo:25:in `load'
from /usr/bin/3llo:25:in `<main>'
Thoughts:
card add "Foo foo"
card add
then prompt for title.First of all, thanks for your work.
Would it be possible to introduce a board name argument to board select command instead of selecting board from list?
[AS-IS]
3llo > board select
Board to select:
board 1
‣ board 2
board 3
3llo > board select
Board to select: board 2
Board board 2 selected
3llo >
[TO-BE]
[AS-IS]
3llo > board select "board 2"
3llo > board select "board 2"
Board to select: board 2
Board board 2 selected
3llo >
The reason why I'm requesting this feature is to use 3llo for trello automation(batch mode). I'd think all of commands of 3llo works by piping series of command like the following:
echo 'card show aaaaaaaaaaaaaaaaa
> exit' | 3llo
3llo - CLI for Trello
Usage:
board list - Show list of board
board select - Select board
card list - Show list of cards grouped by list
card list mine - Show list of my cards
card add - Create a card
card show <card_id> - Show card information
card move <card_id> - Move card to a list
card self-assign <card_id> - Self-assign a card
card assign <card_id> - Assign a user to a card
card comments <card_id> - Load recent comments of a card
card comment <card_id> - Add a comment to a card
card archive <card_id> - Archive a card
list list - Show all lists
list cards <list_id> - Show all cards in list
list archive-cards <list_id> - Archive all cards in list
help - Show help menu
exit - Exit program
3llo > card show aaaaaaaaaaaaaaaaa
ID: aaaaaaaaaaaaaaaaa
Name: Title
Description:
...
3llo > exit
Bye bye
However, this trick doesn't work for board select and I have failed to find another trick. If I can use board select command with board name argument, without any extra enhancement, I will be able to use 3llo for automation which is great.
Lucas
I'm on Mac OS X Sierra (10.12.3), with ruby 2.4.0(p0) installed via Homebrew. (I also have rbenv installed, but I'm in my home directory where there is no particular ruby specified.) I installed 3llo via gem install 3llo
, set my environment variables, but then on execution, I get the following error:
/usr/local/Cellar/ruby/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- bundler/setup (LoadError)
from /usr/local/Cellar/ruby/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/local/lib/ruby/gems/2.4.0/gems/3llo-0.1.7/bin/3llo:3:in `<top (required)>'
from /usr/local/bin/3llo:22:in `load'
from /usr/local/bin/3llo:22:in `<main>'
Can anyone shed some light on why this might be happening?
Error:
▲ ~gem install 3llo
Fetching 3llo-0.2.0.gem
Successfully installed 3llo-0.2.0
Parsing documentation for 3llo-0.2.0
Installing ri documentation for 3llo-0.2.0
Done installing documentation for 3llo after 0 seconds
1 gem installed
▲ ~ 3llo --configure
/Users/solrevdev/.gem/ruby/3.0.0/gems/3llo-0.2.0/bin/3llo:14:in `block in <top (required)>': Have you set TRELLO_USER? (RuntimeError)
from /Users/solrevdev/.gem/ruby/3.0.0/gems/3llo-0.2.0/bin/3llo:14:in `fetch'
from /Users/solrevdev/.gem/ruby/3.0.0/gems/3llo-0.2.0/bin/3llo:14:in `<top (required)>'
from /Users/solrevdev/.gem/ruby/3.0.0/bin/3llo:25:in `load'
Ruby Env:
▲ ~ ruby -v;gem -v;bundler -v
ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-darwin19]
3.2.32
Bundler version 2.3.4
OS
▲ ~ screenfetch -n
solrevdev@macmini-2012
OS: 64bit Mac OS X 10.15.7 19H1519
Kernel: x86_64 Darwin 19.6.0
Uptime: 14d 13h 16m
Packages: 525
Shell: zsh 5.8
Resolution: 1920x1080
DE: Aqua
WM: Quartz Compositor
WM Theme: Blue
Disk: 11G / 480G (5%)
CPU: Intel Core i7-3615QM @ 2.30GHz
GPU: Intel HD Graphics 4000
RAM: 9031MiB / 16384MiB
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.