{"id":15648014,"url":"https://github.com/trstringer/jersey","last_synced_at":"2025-04-30T13:51:16.448Z","repository":{"id":147740065,"uuid":"91250165","full_name":"trstringer/jersey","owner":"trstringer","description":":spaghetti: A to-do/backlog CLI with Trello for a backend","archived":false,"fork":false,"pushed_at":"2018-05-09T01:16:48.000Z","size":969,"stargazers_count":40,"open_issues_count":0,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-30T16:39:37.088Z","etag":null,"topics":["python","trello"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trstringer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-14T14:48:08.000Z","updated_at":"2024-12-11T16:31:04.000Z","dependencies_parsed_at":"2023-05-27T09:15:27.439Z","dependency_job_id":null,"html_url":"https://github.com/trstringer/jersey","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trstringer%2Fjersey","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trstringer%2Fjersey/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trstringer%2Fjersey/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trstringer%2Fjersey/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trstringer","download_url":"https://codeload.github.com/trstringer/jersey/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251714931,"owners_count":21631806,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python","trello"],"created_at":"2024-10-03T12:22:43.832Z","updated_at":"2025-04-30T13:51:16.409Z","avatar_url":"https://github.com/trstringer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jersey\n\n*Where you go when you need to get things done*\n\nA command line interface (CLI) to-do/backlog tool to stay organized. This uses Trello as a backend with an opinionated workflow.\n\n![jersey demo](./demo.gif)\n\n# Install\n\n```\n$ git clone https://github.com/tstringer/jersey.git\n$ cd jersey\n$ sudo make\n```\n\n# Configuration\n\nJersey not only uses Trello as a backend, but also the awesome [py-trello](https://github.com/sarumont/py-trello) wrapper around the API. Because of this, there are a few steps you need to take before you can use Jersey. Some of the steps below are from py-trello requirements/documention.\n\n1. Create a Trello account if you don't already have one\n1. Create Trello board named `Backlog` (this is currently not configurable, but if there is enough desire to make this configurable I can develop that into the product)\n1. Create the following lists in your new Backlog board: `need_to_do`, `doing`, `blocked`, `done` (again, this is not configurable, but if there is interest then please create an issue on this repo)\n1. (Optionally) create labels that are relevant to your requirements (my labels are `work`, `personal`, `pressing`, and `urgent`. Feel free to use these same ones, or create as few or many as you desire)\n1. Set the following environment variables. The API key and secret for your Trello account can be found here\n    - `TRELLO_API_KEY`\n    - `TRELLO_API_SECRET`\n    - `TRELLO_EXPIRATION` (optionally set this to `never` for the token to never expire)\n1. From the root directory of Jersey, run the following: `$ python venv/lib/python3.6/site-packages/trello/util.py`\n1. The output from running that py-trello utility will be used to now set the following environment variables\n    - `TRELLO_TOKEN`\n    - `TRELLO_TOKEN_SECRET`\n\n# Usage\n\n```\nusage: nj [-h] {ls,list,show,move,add,labels,comment,modify,sort} ...\n\npositional arguments:\n  {ls,list,show,move,add,labels,comment,modify,sort}\n    ls                  list all cards with a label filter\n    list                list things\n    show                display a card and contents\n    move                move a card to a different list\n    add                 add a new card\n    labels              list labels\n    comment             add a comment to a card\n    modify              modify an existing card\n    sort                sort all cards in the board\n\noptional arguments:\n  -h, --help            show this help message and exit\n```\n\n:bulb: Each sub command has its own help menu to display possible args. E.g. `$ nj add --help`\n\n## Examples\n\nShow all active lists (need_to_do, doing, and blocked)\n\n```\n$ nj\n```\n\nShow all cards with a particular label\n\n```\n$ nj ls work\n```\n\nShow a particular list: `nj list \u003clist_name\u003e`\n\n```\n$ nj list doing\n```\n\nShow details about a card (including comments): `nj show \u003ccard_id\u003e`. `card_id` is retrieved from the `nj list` command\n\n```\n$ nj show 50e\n```\n\nDisplay all available labels\n\n```\n$ nj labels\n```\n\nAdd a new card: `nj add \u003ccard_name\u003e \u003clist_name\u003e -d \u003cdue_date\u003e -l \u003clabels\u003e` (due_date and labels are optional)\n\n```\n$ nj add 'review pull request' doing -d today -l work\n$ nj add 'review pull request' doing -d today\n$ nj add 'review pull request' doing -l work\n$ nj add 'review pull request' doing\n```\n\nModify an existing card's due date\n\n```\n$ nj modify \u003ccard_id\u003e -d tomorrow\n```\n\nRemove an existing card's due date\n\n```\n$ nj modify \u003ccard_id\u003e --remove-due\n```\n\nAdd a label to an existing card\n\n```\n$ nj modify \u003ccard_id\u003e -l \u003clabel_name\u003e\n```\n\nRemove a label from an existing card\n\n```\n$ nj modify \u003ccard_id\u003e --remove-label \u003clabel_name\u003e\n```\n\nAdd a comment to a card: `nj comment \u003ccard_id\u003e \u003ccomment\u003e`\n\n```\n$ nj comment 50e 'waiting on pull request author to reply'\n```\n\nMove a card to a different list: `nj move \u003ccard_id\u003e \u003clist_name\u003e`\n\n```\n$ nj move 50e done\n```\n\nSort all cards in all lists (this happens by-list when you add a new card)\n\n```\n$ nj sort\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrstringer%2Fjersey","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrstringer%2Fjersey","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrstringer%2Fjersey/lists"}