Giter Site home page Giter Site logo

mgmeyers / obsidian-kanban Goto Github PK

View Code? Open in Web Editor NEW
3.0K 3.0K 176.0 16.86 MB

Create markdown-backed Kanban boards in Obsidian.

Home Page: https://publish.obsidian.md/kanban/

License: GNU General Public License v3.0

TypeScript 86.92% JavaScript 6.76% CSS 0.33% Stylus 1.91% Less 4.09%
obsidian obsidian-md obsidian-plugin

obsidian-kanban's Introduction

obsidian-kanban's People

Contributors

5toliv avatar algabl avatar andrewslotin avatar chrisgrieser avatar coxde avatar firebelley avatar gamergirlandco avatar georghendrik avatar imryanide avatar jannismoeller avatar mgmeyers avatar muya avatar neurosock avatar nmwtf avatar ntlv1 avatar ouatis avatar pgebert avatar phibr0 avatar pjeby avatar pleahmacaka avatar pryley avatar quorafind avatar shorian avatar snuggle avatar sunyatasattva avatar tfthacker avatar tillahoffmann avatar tripleight avatar tymotex avatar yo-goto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

obsidian-kanban's Issues

Visual artifacts + CSS oddities introduced with Markdown support

This is a minor issue and might be unavoidable, but I figured I 'd let you know. When rearranging items there is a somewhat jarring flickering that happens. I don't recall seeing this before markdown was introduced.

ghosting

Also, since adding markdown, kanban seems to utilize obsidian general css, specifically paragraph css (which makes sense). My margin-block-start and end were too extreme for kanban and it made the blocks way too tall. I manually added this snippet to shorten them:

.kanban-plugin p{ margin-block-start: 5px !important; margin-block-end: 5px !important; }

... which worked like a charm, except now when I drag an item I get strange behavior where the title shifts down.

css

I cannot figure out the problem via inspector and I suspect other people will run into this issue. Am I doing something wrong here, or is a fix needed at the base level to solve for people's paragraph css conflicting with kanban css?

Lost switcher between Kanban and Markdown since updating to 0.0.6

I just updated from 0.0.6, and for my existing Kanban board, the switcher in the menu has disappeared. I can use Command+E to switch between edit and preview, but no Kanban.

I created a new Kanban board via the Palette and added some stuff to it, all ok. But can't switch that one at all, no menu item.

Could not link to files like pdf in Kanban board

In obsidian when you typing [[]], it will give you some selectable options of both related notes and files in the vaults, but in kanban typing [[]] will only give you related notes, and if you use the "open as markdown" option of kanban, although you can have both files and notes in [[]] and you can select a file in [[]], once you switch back to "open as kanban" the things you typed will just disappear totally.

  1. no file in [[]]
    image
  2. could select a file in "open as markdown" mode
    image
  3. the file selected disappeared in "open as kanban" mode
    a.selected file in "open as markdown" mode
    image
    b.selected file disappeared once switched to "open as kanban" mode
    image
    c. you cannot find it even when you switch back to "open as markdown“ mode
    image

Feature Request: Page links in card titles

Desired workflow: use a kanban board view to manage writing process for articles. Since I do my writing in Obsidian, it would be great to be able to use the [[pagetitle]] formatting when creating cards.

[Bug] clicking [[wikilinks]] keep opening new pane// [Feature request] allow to open [[wikilink ]] in same pane similar to vanilla Obsidian

I really like this plugin, but I have problem when clicking on wiki link to other note.

In Obsidian preview mode clicking on note open it in the same pane, Ctr + click open note in new pane.

In Kanban Plugin up to Version 0.2.3 clicking and Ctrl + Click bring the same behaviour - opening new pane. In a newer version Ctrl + Click will edit the card.

There is no way to open a wikilink "in place" .

Example

Pin Kanban Note with card containing wiki link.
Click several times on card containing wiki link.
Current behaviour:
(Note will open several times, every time in new pane)
image

Expected:
(apart pinned note, that doesn't change, only one additional pane is created, all wiki links are opened in it )
image

Solution:
Have an additional way to open wiki link in card the same way as standard obsidian "click wiki link" work (in same pane);

Linux PopOS
Obsidian 0.12.3

Edit:
I was able to observe erratic behaviour in Obsidian "Click link" with Kanban plugin activated, or deactivated but without restarting Obsidian.

Basically "only click"(Open a new note in the same pane) in preview mode sometimes acted as "Ctrl +click"(opening a note in a new pane). While experiencing this, after once using "Ctrl + click" the next opening of notes using "Click" were normal (it opened notes in the same pane)

After restarting Obsidian with Kanban plugin deactivated I was not able to observe this behaviour (I don't use that often preview mode, so I dont know if this may be a genuine Obsidian bug)

Emit an event on the `workspace` when an item changes lanes

I'm currently figuring out how to improve my task management workflow within Obsidian and had this idea. Basically, my goal is to make some of the metadata within my "Task" files stay in sync with the board.

image

Since I think this is probably out of scope for the plugin, I think emitting an event for other plugins to listen to could get me most of the way there. Something like:

app.workspace.trigger("kanban:lanes-changed", boardFile: TFile, item: Item);

Then I could listen for the event and update inline metadata within the linked card.

[Bug] The plugin throws error if there is a series of three or more hyphens

Plugin version: 0.1.2

Examples of Cases

Listed below are examples of cases that causes the plugin throw an error message of Failed to load "filename.md". bad indentation of a sequence entry ...:

  • Example 1
    ## List
    
    - [ ] The following sequence of hyphens---will throw an error message.
    - [ ] The following hyphens ------ also will.
    - [ ] A series of three or more hyphens wrapped in backticks `---` also will.
    - [ ] The following hyphens -- -- will not.
    
  • Example 2
    ## List
    
    - [ ] item
    - [ ] ---
    
  • Example 3
    ## List
    
    - [ ] ----
    

Examples of cases that causes the plugin throw an error message of Failed to load "filename.md". expected a single document in the stream, but found more:

  • Example 1
    ## List
    
    - [ ] ---
    
  • Example 2
    ## List
    
    - [ ] ---
    - [ ] item
    
  • Example 3
    ## List---wow
    
    - [ ] item
    

Steps to reproduce the bug

  1. In a kanban board, create task list items or 2nd level headings with content like in the aforementioned examples.
  2. Then close the file (the kanban board).
  3. Open the file again.

Feature Request: Progress bar

Away to either add or have the kannan board scan the linked .md file of any checkboxes and display a progress bar depending on the checkboxes.

Probably smart to make it optional for every card, if the scan method is chosen.

[Feature Request] Indicate that a File is a Kanban Board in the File Explorer

@deathau's File Extension Plugins (CSV-Editor and ini-Editor) both state in the Explorer that these files aren't default. I think it would be good to support that for Kanban's aswell.
Of course the Files are still Markdown Files and thus don't normally have this Indicator in Obsidian.

image
Example

I think deathau "reverse engineered" the obfuscated Obsidian JS to get this method, which generates the Indicator the same as Obsidian would normally:

  // this function used the regular 'document' svg,
  // but adds the supplied extension into the icon as well
  addDocumentIcon = (extension: string) => {
    addIcon(`document-${extension}`, `
  <path fill="currentColor" stroke="currentColor" d="M14,4v92h72V29.2l-0.6-0.6l-24-24L60.8,4L14,4z M18,8h40v24h24v60H18L18,8z M62,10.9L79.1,28H62V10.9z"></path>
  <text font-family="sans-serif" font-weight="bold" font-size="30" fill="currentColor" x="50%" y="60%" dominant-baseline="middle" text-anchor="middle">
    ${extension}
  </text>
    `);

Code block render error

When I insert a code block to a card to render, it works well. But next time I open the kanban, it will leave me one line ,and other text had gone.

"Same folder as current file" sends new notes to parent folder and new boards to the root

If your default folder location is "Same folder as current file", this plugin sends the file to the wrong folder. This is because in

: view.app.fileManager.getNewFileParent(view.file.parent.path);
it is using the path of the file's parent, instead of the path. (i.e. the .parent should be deleted from that line)

The "new kanban" command should also be passing the path of the file currently active in the workspace (this.app.workspace.getActiveFile()?.path, rather than ""), so that boards are created in the same folder as what you're working on, instead of the vault root.

No going back from Markdown view

The functionality of the plugin is awesome, but I've found that once I view as Markdown I can't get back to the actual board view. Here's my steps:

  1. Use Command Palette to create new kanban board
  2. Edit the kanban board and name the file
  3. Click on "More Options" and select "Open as Markdown"
  4. The icon changes from he cube stack to a sheet of paper and can't view as kanban again

Add board filtering

Since you can easily add Obsidian tags to Kanban cards, it would be neat to be able to filter the board based upon those tags so you can see only the cards with the selected tags.

Right now, clicking on a tag opens the search pane -- which can work if you only use those tags on the board. The caveat here is you can only jump to the markdown view.

This could be implemented via a search box or a tag selector. A search box might be more flexible, though.

Obsidian file menu not working on card links

Normally, right-clicking a link to a file in Obsidian brings up a context menu to perform operations on the file (such as renaming, moving, open in default app, etc.). It isn't working on Kanban cards, however.

It appears the issue is that the Kanban view is cloning the markdown preview via innerHTML, which ends up stripping the event handlers that would perform this and other preview functions, and so then the card's default context menu takes over.

As a workaround (in the event the markdown preview can't be mounted directly instead), I suppose you could add back in a contextmenu event handler for a.internal-link within the card, and trigger the file-menu event via something like:

const linkedFile = this.app.metadataCache.getFirstLinkpathDest(obsidian.getLinkpath(link), pathOfKanbanFile);
if (linkedFile) {
    const menu = new Menu(this.app)
    // The following will add items like "rename", "star", "reveal in nav", etc.:
    this.app.workspace.trigger("file-menu", menu, linkedFile, "link-context-menu", view.leaf);
    // ... add kanban-specific items to menu here w/a separator above
    menu.showAtPosition({x: event.pageX, y: event.pageY});
}

This would avoid the need to switch to markdown mode in order to access the standard obsidian link menu.

Change card or date text color for date(s) that are overdue

Hi,

Now that the KanBan board supports dates, it would be nice if the dates can visually change when they are overdue. For example every day in the past gets a red color, dates in the future grey, and day today green. It is also nice if it can be reflected in the background color of the card but that might require a CSS styling that can be exposed and altered for people with different themes.

In any case, since my workload can be beautifully visualized in a KanBan view, it reduces the anxiety of forgetting tasks that I should do before a certain date.

Can the unordered list be used?

Can it use the unordered list?
Because this will make Markdown data common across different software.
Using the "-" unordered list allows Markdown data to be used in a variety of different software more than "##".

---

kanban-plugin: basic

---

- A
	- [ ] A1  
	- [ ] A2  
- B
	- [ ] B2  
- C
	- [ ] C1  

For example, remnote supports Markdown's unordered lists.
demo
v2-866a7dd821c986b98ed10a61c20894bb_b

Feature Request: Embed kanban board in a page

Right now, the only way to create a kanban board is as a separate page/document. It would be great if the board was embeddable though and could be included (maybe in a code block?) on a page with other text. For example: A page for a project that could include links to all other relevant project information + a kanban view of the tasks associated with that project.

Feature Request: Kanban Transclusion

An idea for how the transclusion might look:

image

No idea if this is possible, and it is just a minor request! But thought it would be a neat addition to daily note template.

New Note from Card - link is not permanent with release v 0.2.5

  1. Creating a new note from card seems to work - on return to Kanban Board the card shows with the link established.
  2. on exit from Kanboard on return the link is no longer inplace on that card.
  3. the new note that has been created exists but is no longer linked from the Kanban card
  4. creating a new note from card will create a note "card name 1" but the link in this case is again transient

Links from cards to new notes that were in place prior to the update to v 0.2.5 still remain in place with functionality as expected.

Autocomplete wonkiness in 0.2

As of version 0.2, double brackets no longer trigger autocomplete in the card title - UNLESS there is an additional character at the front of the line.

For example, this text on a new card will NOT trigger autocomplete:

[[H

But this one will:
_[[H

Suggestions for autocomplete do no filter though - just gives a giant list of titles.

Currently using app version 0.11.13

New note from card does not use the chosen template

Hello there,

I really love this plugin and love the ability to personalize the settings for each board.
It seems however that the "create new note from card" just generates an empty note even if a template has been specified.

Card movement incompatible with Snippets plug-in

Moving cards from one list to another is incompatible with the Snippets plug-in.

When Snippets and Kanban active at the same time, the card dragged from one list to another will disappear when hovering over the second list.

Feature request: i18n support?

Why I need this

I don't know if it is doable by using api directly. Or you have to create a module to show i18n text?

Add date to archived cards

Hi,

It would be great to see a log of my completed tasks, but there is no date to relate to. It would be great if a date can be added upon archiving. Something among the lines of;

## Archive

### 2021-05-08
- [x] Completed task

### 2021-05-07
- [x] Completed task
- [x] Completed task

This has the benefit to unarchive tasks when they need to be copied (without altering title)
Another option maybe is prefixing it with a date like;

## Archive

- [x] 2021-05-08 Completed task
- [x] 2021-05-07 Completed task
- [x] 2021-05-07 Completed task

Which makes he list clean and tidy and I can still see what I did on what day.

Thank you for this wonderful plugin!

[Feature request] Japanese IME Support

Hi, @mgmeyers. Thank you for developing this kanban plugin.

I have a feature request.
Typing Japanese sentences requires to convert characters and then confirm the input with IME. So, we have to push the Enter key twice. In the current version, we can't type full sentences and I found characters are duplicated automatically into the next kanban card.
can't convert

Reference: previous solved issue about IME. really similar
https://forum.obsidian.md/t/japanese-file-name-title-copied-to-a-note/8720?u=padaone

Feature request: store Kanban and card notes in directory of note selected

First - excellent plugin, thank you so much.

It would be even better :-) if I could place a Kanban (and its dependent card notes) within the directory/context that was active when I issues the Kanban: Create New Board command. Currently I have to put all Kanbans in one specific directory as set up in settings (unless I'm missing something?)

UPDATE: If I use the context menu from a selected folder in the explorer, then the Kanban's markdown file is placed in that directory. Great - but then any notes I create from cards in that Kanban are placed somewhere else, not in that same directory.

Cheers.

Horizontal Scroll Key confilcts wiht sliding panes plugin

I wonder if this can be chmaged or whether its an eclipse thing.

Both the Kanban plugin and the Sliding Panes plugin use shift + mousewheel. In Kanban Board its scrolls the board, in the sliding panes its moves/rotates through all your open panes.

Problem is that if a kanban is open things get stuck as the hotkey effects the Kanban horizontal scroll when you get to that note and the panes dont rotate through unless you move off the note. I can overcome it by holding on the title bars of each notes rather than in the open the page as I scroll through my notes. But would be nice if the experience was seamless. Can ther be a different hot key for horizontal scroll?

Dragging on iPad in circular motion moves view

When I drag with a finger in a rotating motion/sometimes when long-holding on cards to move them, the view is moved.

47A02408-E675-46DA-84D4-0CD06A67B8CE

(The screenshot was taken with some plugins activated, however also with only the kanban plugin activated and no custom CSS it showed the same behaviour.)

[Feature] Add description to card to avoid needing to make a separate note for added details

Hi,

First up, really nice plugin, I just started using Obsidian and came across yours for making a Kanban board.

One thing that I found myself doing a lot with another Kanban board solution was adding both a title and description to a specific card. But with this plugin and Obsidian at the moment it looks like adding a separate note to a card is the only way to add more details about a card but this leads to a number of non-ideal situations:

For example, I had a card title with Verify webhooks without extra API call and I wanted to add more context around this by adding a description of:

You can check the signature of the webhook in the HTTP header instead of having to look up the event afterwards as a separate API call.

Details: https://stripe.com/docs/webhooks/signatures#verify-manually
  • I made a new note from this card but now it dumped the note in the root of my vault, except my Kanban board is a few directories deep so it took a bunch of clicks and drags to move it there.

  • Then I decided I really wanted to rename that card to Verify Stripe webhooks without extra API call so I renamed the card, except the note file associated to it still has the old name so I now I need to manually rename the note file or it's out of sync with the card name.

  • Then I added 15 cards to 1 column and started moving them across the Kanban board but now I have this single directory of files sitting there and it's hard to tell which state those files are in and trying to micro manage them by creating sub-directories for each list name and moving them there feels like getting bogged down in the details.

Perhaps all of these problems could be solved by supporting a new description field that you can add to a card so you can write your own notes for a card without needing an explicit note file, and now everything about your Kanban board is self contained to 1 file.

Then as an end user you have the option of treating this more like daily notes where you keep your card titles short, add sprinkles of a description to it for extra context and link out to dedicated notes that are unrelated to the Kanban board itself. This way you can use your Obsidian "world" to store and cross link all of your notes and the Kanban items are treated more like references to that world with temporary or TL;DR descriptions of things for a tiny bit of context that are board specific.

What do you think?

Show cards from a search (or dataview query)

As discussed here: https://discord.com/channels/686053708261228577/840286238928797736/841748907273093120

It would be pretty neat to live-import cards matching a certain search or dataview query.

A couple of use cases:

  • A kanban for writing. Lists might be drafts, editing, scheduled, published. An "inbox" list might grab items from across the vault so that they can be easily dragged into other lists.
  • A kanban for project management. Same as above—an inbox list would make sure you catch every new project note you create.

I recognize that this is probably non-trivial, though—namely because the plugin would need to recognize that a search-generated card needs to be converted to a "real" card once it's dragged from the search to another list.

Feature request: Filtering

Many thanks for this great plugin. Being able to filter which cards are visible with a text string would make it even more powerful. I could imagine e.g. filtering with a tag or a person’s name to see all cards related to them. This would diminish the need to have separate boards for different projects and make it easier to navigate a growing board.

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.