Giter Site home page Giter Site logo

confusedoncoffee / wekan-cli Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 673 KB

A CLI to view, create, delete board, list and cards. Cards can also be updated.

License: Apache License 2.0

Dockerfile 0.09% Shell 4.42% Rust 94.74% Emacs Lisp 0.53% Makefile 0.22%
agile board cli kanban managment rust scrum server wekan

wekan-cli's Introduction

This is read only. Active work is done here:

Click here to Forgejo Git self-hosting

OBVIOUSLY DISCLAIMER

  • PRIVATE PROJECT BUT READY TO BE USED AND ADAPTED
  • BUILD AT YOUR OWN RISK, I try to assist. The CLI was tested on x86_64_linux, x86_64_MacOs and Apple ARM.
  • Message me if you find anything, which is criticial or against the rules.
  • I don't provide releases, maybe some tags if a new feature was added but HEAD will always be stable.

Wekan CLI

This projects aims to provide a CLI to view, create and update a WEKAN board, list and so on. Also I try to learn RUST with this, so if you have tips or isuses, please create one.

OPTIONS:
    -d, --no-store                         Disable store for your wekan artifacts
    -f, --filter <FILTER>                  Filter out artifacts by id
    -h, --help                             Print help information
    -o, --output-format <OUTPUT_FORMAT>    Output format: rust, elisp, long, extended
    -q, --quiet                            Less output per occurrence
    -r, --no-recommendations               Disable next recommended workflow
    -v, --verbose                          More output per occurrence
    -V, --version                          Print version information

SUBCOMMANDS:
    apply        Apply a change to an artifact
    board        Manage boards
    card         Manage tasks
    checklist    Manage checklists
    config       CLI configuration
    describe     Describe artfifact
    get          Get an artifact
    help         Print this message or the help of the given subcommand(s)
    inspect      Describe artifact by id
    list         Manage lists
    table        Show a board table

Features

  • Login via prompt, can be insecure as well or localhost
  • Set context to have multiple WEKAN hosts
  • Logout user and remove contexts
  • Show board, lists, cards and checklists
  • Remove board, list, cards and checklists
  • Update cards properties:
    • Move between lists of the same board
    • Update title, description, due_at, end_at and sort properties
  • Recommend your next workflow, after one command has been run
  • Store: Requests artifacts will be writen into the store locally. At the moment, this data can also be corrupted by the user. If the CLI doesn't find anything, it will do a new request. Using of local store can also be disabled with -d.
  • get subcommand tries to parse your input type/name, like kubectl
  • inspect subcommand takes the original id. You can get the Id in the URL if you have a session open or if you use -o ext.
  • table build are table of one board, where all lists and cards are arrange in the same order as on the webpage

View

By default, we will show table style, highly inspired by Docker. The detail view also has date information and more.

ID    TITLE
1234  my_title

ARCHITECTURE

Please take a look in DEVELOPMENT.

INSTALL

Download the binary from the release page or clone the repository and build it yourself. Afterwards you get binary in crates/wekan-cli/target/release/${platform}/wekan-cli to use.

BUILD

  • Clone the repo
  • Run one of the following steps:
    • cargo build -r --features wekan-cli/store and move it where you want it
    • cargo install --features wekan-cli/store and use it
    • make use and move it where you want it
    • docker build -name wekan-cli -t wekan-cli:YOUR_TAG . and docker cp wekan-cli:/usr/local/cargo/bin/wekan-cli $PWD/wekan-cli to install it via Docker

ENV VARIABLES

The CLI places everything inside WEKAN_CLI_CONFIG_PATH.

USAGE

  • WEKAN_CLI_CONFIG_PATH sets the config_path. If you don't like $HOME/.config/wekan, you can change it.

LOGGING

  • WEKAN_LOG prints logging messages.
  • WEKAN_BACKTRACE also printss external crates module messages.
  • WEKAN_LOG_MFILTER allows to filter the logs, based on the modules.

All the ENV variables can be used in any combination, but MFILTER only filters wekan-* modules.

DEVELOPMENT

DEVELOPMENT

TESTS

Unittests

cargo run test for wekan-cli and wekan-core. WekanCommon doesn't need tests.

E2E

E2E

Coverage

COVERAGE

THANK YOU

Obviously, a lot of the usually research and thanks for the wonderful documentation from the RUST community, the rust book and especially the RUST compiler. <3

REFERENCES

LICENSE

Based on RUST and different crates. This project uses Apache and MIT license, please see the files LICENSE-APACHE and LICENSE-MIT.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.