This looks like Obsidian's first move away from using some dialect of markdown? The .canvas files appear to be human readable json, but certainly not as readable as markdown. I'm excited to try this out, but I hope this isn't a trend towards using proprietary formats.
If I understand it correctly, the use case is to link existing MD notes visually. That's a different way of looking at the data than the two-way backlink approach that was the foundation of Obsidian (and other personal wiki tools).
I'm interested in this, as I currently use a combination of Obsidian + SimpleMind, but currently SimpleMind has more features (full fledged mindmapping app), and I like having two separate spaces to sketch out ideas.
I also use both, Simplemind is a fantastic mind mapping app.
For smaller scale mindmapping though, I am finding Canvas very usable already for such an early release. The ability to easily link or embed to markdown files (or create new ones) is really nice, and I like having all my work in a common area. Community created plugins will also dramatically expand the app.
There will always be advantages for the dedicated apps as well, but this is going to be a great option for many.
The .canvas files are a JSON-based file format that we open-sourced under MIT license. Just like everything else in Obsidian, it's still all local files on your device.
We considered many options to use Markdown but came to the conclusion that Canvas is not something that can fit into a readable Markdown file. Either the Markdown file would so messy that it becomes pointless (i.e. you would never open it in Typora to edit), or it would severely limit the power of Canvas.
After much internal debate we chose the JSON format. We stay committed to keep it as open and easy to work with as possible. Plugin developers are already parsing and modifying the JSON file to programmatically change a Canvas view, and I think that's a fantastic start!
Now that you crossed that line, I hope the next "custom format" will be a "real" outliner. You are surely familiar with outliners ;-) It is about full block-level support really, and all what that allows (API, backlinks, query, aliases...)
Opportunity cost. I wrote on your forums about the decioson of using plain markdown. Consider other formats to stop bloating(yaml and dataview variables) markdown files. Now you have bloated md files and another format. Now i am saying you will add sqlite after one or two years. Waiting for extra file formats making existing files ugly.
Also obsidian needs multi user vaults. Start to think what extra file format needed for this.
I've been wanting a tool like this forever - ideally you can enter/exit these scopes/contexts so that everything above fades away. I like to think about problems in these scopes and then have the ability to "zoom out" to collect/link things, without disturbing the internal contents. Kinda like the C4/icepanel stuff but without so much pomp and circumstance.
That is fantastic! I've never been satisfied with Draw.io at a cross platform option for this after getting so comfortable with OmniGraffle in my OSX days. Can't wait to take this for a spin.
Still very different. Obsidian Canvas is about spatially organizing your already-existing knowledge base in Obsidian. Figjam is more like virtual whiteboarding. Big big fan of both Obsidian and Figma/Figjam, they don't really compete here though.
Obsidian is knowledge management tool, you can think of it like a personal wiki. So it gives you some different types of elements that you can place inside the Canvas, e.g. notes, PDFs, videos, audio, and even iframe web pages.
For example you can embed embed Markdown notes inside a Canvas, and embed a Canvas inside a Markdown note.
My new year resolution is to move from Notion to Obsidian. I found Notion unreliable in some situations and tbh, I'm not using the mobile application at all.
I would kill for some sort of integration between Remarkable and Obsidian. Both are excellent tools and the Remarkable is great for sketching on the go. I just wish I could keep both in sync somehow.
That's one of the reasons i went with an Onyx Boox tablet instead of a Remarkable - that way i have the Android Obsidian app, in sync, and i can sketch on it (with Excalidraw, i haven't tested Canvas yet).
It's still in beta for now, so it's definitely not flawless, but it does work! You can choose which files from your tree to sync, they will appear as pdf files in your vault.
I'm not 100% certain about quick sheets just yet, I'm going to do a more thorough test soon, but notebooks _are_ supported as of last week, the Roadmap hadn't been updated yet.
When this gets to reasonable stability, this may be enough to get me to buy ReMarkable just for it. It might be worth seeing if they have any sort of referral program. "Buy ReMarkable through me & get X months syncing free!" type deal.
A dream would be first-party integration. Syncing from one to the other is one thing, but a first-party obsidian application running on the ReMarkable? I'd let ReMarkable hire me to make this happen if this is something they'd be interested in
One thing that's really missing for me from Obsidian is a view similar to that of Google Keep. Like sometimes I want to drop a small note "my stuff is in locker 2130" or "Look into Open Library <> WikiData linking percentage" and then easily be able to see it again in a few of all notes most recent.
A thread on Reddit give me a small hope this update may do that but I don't think so.
PS: I'm aware of the daily notes viewer, and that's what I currently use for most of these situations. But it doesn't help with having a simple way to see contents of all recently created notes.
I'm using both Obsidian and Apple Notes, both on my iPhone and MacBook, and that's also the main thing I'm missing in Obsidian and keeps me partly on Apple Notes: it's faster and easier to create a note in Apple Notes, retrieve it (as they as are sorted from most recent by default, and also I can pin some notes), search, and navigate in folders (especially on mobile, navigating across folders is so much better with Apple Notes than Obsidian). I'd really like to see Obsidian takes some inspiration from Apple Notes there and improve his. Otherwise, it is fantastic tool and it's really good to know that everything is stored locally in plain text.
Preface: I am a massive Obsidian fan and use it everyday.
The problem is they wanted it multi platform on iOS, Android, Mac, Windows and Linux so they made it using electron. Unless they either do native versions for each platform (5 apps!) or rewrite the entire application in something quicker like Tauri it’s never going to be as fast as apple notes, and will only get worse every time you add a new plugin.
Dart/flutter sound good and I have heard good things. The downside is you’re rolling the dice on whether it will still exist in five years because it’s a Google project.
It’s open source, so it will likely exist in some form.
GWT still exists and had a release last year. It’s been 9 years since it fully transitioned to an open source project. I’m not sure at what point Google stopped contributing since I see old team members in the commit history.
A lot of companies would be really upset at Google if this happened.
Besides Google, who re-wrote several of their own apps with Flutter, like Pay and their Home devices (which some are apparently running fuchsia now?), there's BMW, eBay, STAIR (US Department of Veteran Affairs), Nubank, and plenty more.
> A lot of companies would be really upset at Google if this happened
There's lot of projects that Google has killed for which this is the case, though. Stadia had people building for it, and Reader had people building atop it to name maybe the two highest profile ones. Of course, the cost vs value of maintaining those for Google was a very different question, but on its own, other companies' interests don't seem to move the needle much for Google when it comes time to kill a project.
You can't just declare your interpretation of faster to be correct and then denigrate someone else's interpretation by classifying it as a rant. The comment:
> it's faster and easier to create a note in Apple Notes, retrieve it (as they as are sorted from most recent by default, and also I can pin some notes), search, and navigate in folders (especially on mobile, navigating across folders is so much better with Apple Notes than Obsidian).
Yes there are UI elements at play here. But even UI elements are dependent on the language and framework you have decided to use. For example, it is common on Android to use an expanding sidebar whereas on iOS it is more common to use a dropdown menu. If you are developing a one size fits all app then design choices that feel native on one platform are going to feel non-native on another.
And in addition, physical app speed matters. If you want to create a brand new note and you're not already in the app it takes significantly more time until you can start typing with Obsidian than if you use Apple Notes, 1Writer etc. If you're doing it multiple times a day this time adds up.
If you don't think physical app speed matters then why do you think big companies spend thousands optimising webpages to reduce latency? It is because the consumer gets bored of waiting and goes elsewhere. If another app comes along that offers the same functionality of Obsidian but is noticeably faster, people will migrate to it. Everything is a tradeoff, but pretending framework performance isn't a relevant factor does not help anybody.
> You can't just declare your interpretation of faster to be correct and then denigrate someone else's interpretation by classifying it as a rant.
I'm not declaring anything. I gave my interpretation of the intended meaning, which didn't mention speed or electron at all. Thus, there were two options:
- My interpretation was correct, and it was _the exact same rant every electron app thread ever has_
- Your interpretation was correct, and it was _the exact same rant every electron app thread ever has_
As it happens - it was the first.
The electron rant is about as useful an opinion as the "Python 2 to python 3 migration was botched" that is brought up in every single thread about python.
> The electron rant is about as useful an opinion as the "Python 2 to python 3 migration was botched" that is brought up in every single thread about python.
Just because you know about electron and its performance issues doesn’t mean everyone who is reading this thread does. There may be many people using who don’t even know what electron is or that Obsidian is an electron app and may find the information informative. Last time I checked, this site was for everybody. Or is it only for you and your superior knowledge, oh mighty one?
Part of the reason on iOS it takes longer, at least in my vault set-up, to begin throwing in a new note is that Obsidian has to finish syncing and show me notifications (that I wish I could turn off) from a plug-in I value before I can begin navigating to a "new note" screen.
Not just for the speed, but also for (personal) mental simplicity, this is one of many reasons I use [Drafts](https://getdrafts.com) for so much writing. I also use a few other notes apps in concert with Obsidian, and if I just hit Drafts on my iPhone or Apple Watch I can start getting the idea down. If it's going to Obsidian, it's an action from Drafts to just dump it in there without using Obsidian's interface at all. If it's not going to Obsidian (and instead going to Bear or OmniFocus or into an email or a text message or appending to an existing note or a million other things) then it's just a different action.
Your interpretation is correct: I meant "faster" (and easier) in terms of UI/UX, not app speed. I'm confident the problem I'm experiencing can be fixed only by improving the UI/UX within the current technical stack. No need for a rewrite or a port to native apps, Tauri or Flutter.
Agreed - I have the very same issue as well. Google Keep is my goto mobile app for most of my note capture just due to its speed and ease of use. Now I have a few github utilities to download my Keep notes to markdown for Obsidian use later - but that isn't really ideal yet.
PS - all I can say about Canvas is 'wow'!!! Awesome feature!
There are community-extensions for this. "Vault Changelog"recently edited files, and "Recent Files" recently opened files. Not sure how well they work on mobile.
But true, a google keep like tile-view with auto-layout and filters would be a useful enhancement for obsidian.
Could probably do it with obsidian dataview + embeds which would work on android at least. Not sure how they deal with community plugins + app store policy though on iOS.
Drop these quick notes into a folder (can be automated with Templater). Create another note that uses the DataView plugin to show you a table of all the files in this folder sorted by the creation date.
I use Craft for this. Short term notes or stuff like receipt scans. Then (where relevant) I copy paste into Obsidian for longer term linking or whatever
I use Nextcloud Notes for that. It has decent mobile app and works great with few notes (Nextcloud Notes doesn't work as second brain very much).
I have two notes in there - Buffer and Shopping list. Buffer is one note for all the small stuff you mentioned. I also have widget on phone homescreen for that note so I can access it pretty seamlessly.
Of course, it also means, you need to access some Nextcloud instance (I run my own).
Edit: I use Obsidian synced with Nextcloud for all the "second brain" things.
I honestly cannot grasp how is it possible for the Obsidian team to consistently release such high quality software on a regular basis, almost for free and with such a small team.
Just incredible, and if anybody from Obsidian reads that, you have my utmost respect.
I kind of wish they would plant a stake in the ground and declare it feature complete and then go into maintenance mode. It's almost inevitable that they are going to keep adding features, give up control to VCs, and then fade away like Evernote.
This feature is neat, but it feels like a turning point. I believe it's the first betrayal of the it's-just-a-folder-of-markdown-files principle.
It's just a plugin i believe, you can choose to not use it. There are _many_ community plugins that go well beyond just-markdown, i don't feel this is any different.
Remember, most of Obsidian is just plugins. Even core functionality. Which is a big reason i use Obsidian.
You can represent a collection of nodes like that, but human readable/machine readable flow configuration, highlighting, plus composition seems like a tall ask, and JSON is a small extension that's mostly human-readable as it is.
This is adhering to an obvious crack showing in Obsidian as it is: how do you store a graph view configuration? Right now, per vault, you get one slot unless you draw in something like Juggl, which is... well it raises serious usability concerns.
I agree that VC basically killed Evernote. Obsidian is completely user-supported, no investors, we're explicitly avoiding the VC route.
As far as features go, we're continuing down the path of a modular architecture. The core will continue to be as streamlined as possible. Canvas is like any other plugin, you can disable it. We think that flexibility is important, because not everyone thinks the same way. You should be able to create an environment that fits your way of thinking. However not everyone needs every feature, thus the modularity/extensibility approach.
Did the core of Obsidian have to be changed at all to support Canvas? If so, then I don't think it is like any other plugin.
If this were just another pluigin that you could download and use if you want, I really wouldn't care. It's the fact that it's considered part of the core product that gives me bad vibes. It feels like the project, even without VC money, is doing what almost every other successful project does - expand.
Do you think Obsidian will ever be considered "done"?
We did make some API changes that would make it easier for a third party to create a plugin like Canvas. But there was nothing changed in the core solely to support Canvas.
There were two under-the-hood changes required to properly facilitate Canvas:
1. Redoing "embeds." We decided it was important for cards to work the same way our inline embeds work. So we rewrote the embed system to be properly extensible and useable by plugins. Canvas is leveraging the same system that powers ![[embeds]]
2. Untangling our editor. Previously, editors were a construct constrained to a markdown view in Obsidian. We've also done some refactoring so that a "editor" can be used anywhere, and doesn't need to be backed by a file. We see this a another big win for plugins that want to build their own editing experience
We want to keep pushing what third party plugins can do on top of Obsidian, so implementing a feature like Canvas forces us to find the limitations that exist in the API.
The question of whether Obsidian will ever be "done" is a tough one because operating systems and user expectations are a shifting landscape. Our intention is that the writing and thinking you do inside of Obsidian can be future-proof for decades, even if Obsidian itself is no longer relevant. That's why we're focused on portable formats like Markdown. However we cannot know how operating systems will change, and what will be required for Obsidian to continue working well on macOS 30 or Windows 20. Similarly, we can't close ourself off to new UI paradigms like Canvas that open up new thinking modalities our users are asking for. We hope that the modular and flexible architecture of the app allows it to remain very performant regardless of what plugins a user has turned on.
I really wish the UI worked like excalidraw, the interface is seamless and something Obsidian could take ideas from. the end result could have been an SVG which makes it compatible with every other software out there.
Canvas is less of a piece of drawing software and more of brainstorm/mindmapping/idea workbench software. Excalidraw will satisfy different use case than Canvas and you can definitely use both!
I was using Excalidraw for (maybe unconventional?) mind-mapping, and one feature that I learned to appreciate is the ability to introduce unstructured objects into the diagram (e.g. add a box grouping arbitrary links, drop an image etc). I wonder how Canvas will hold up for such use cases.
Just like all other files in Obsidian, canvas files are your own and local to your device. You're still linking to your own Markdown files which are just as future-proof as ever.
We decided to create the .canvas format because there wasn't any pre-existing canvas-type format we could find that fit our priorities around longevity, readability, interoperability and extensibility.
The .canvas format is designed to be as easy to parse as possible. We've already seen a few plugins take advantage of it, and we hope that more tools will become available that can use the .canvas format.
Trello boards export to JSON, would you consider it open? OneNote notebooks are also an open and well-documented specification, as well as local first and backed by a very reliable company, which makes them just as open as Obsidian by those standards.
The Canvas JSON is not an export format, it is the file that the app actually reads and edits. Being explicitly MIT licensed also gives permission to other people/companies to build their own tools using that format.
OneNote and this canvas format might be equally open and interoperable, but it's a hard claim to justify that onenote notebooks are as open as a folder of mostly standard markdown (the two exceptions being wikilinks and embeds)
I peeked at the onenote format standard [1] and the obsidian canvas standard. The difference is hilarious. The onenote standard is painfully complex, provided as a .pdf, and binary to boot. Compare to an example obsidian canvas - this is obvious, text-based (I could read it with notepad++) and easy to understand just by reading it:
{
"nodes":[
{"id":"6c711bf8c24c4f5b","x":-226,"y":-62,"width":400,"height":400,"type":"file","file":"testin/2022-10-14.md"},
{"id":"4dd7d04cdd0b379c","x":-530,"y":-209,"width":250,"height":60,"type":"text","text":"this is a note"}
],
"edges":[
{"id":"0c589a4d6bbb06aa","fromNode":"4dd7d04cdd0b379c","fromSide":"bottom","toNode":"6c711bf8c24c4f5b","toSide":"left"},
{"id":"eda9f3edb3ec232a","fromNode":"6c711bf8c24c4f5b","fromSide":"top","toNode":"4dd7d04cdd0b379c","toSide":"right"},
{"id":"abf404722ba48c3b","fromNode":"4dd7d04cdd0b379c","fromSide":"top","toNode":"6c711bf8c24c4f5b","toSide":"right"}
]
}
The local first approach is the primary reason I use Obsidian. I trust that I can _depend_ on Obsidian because of this.
On the other hand, this has also caused some headaches around using it on mobile.. but so far this has been a worthwhile tradeoff. Thanks for all the hard work!
Does it not ultimately have the same problem? i.e. when you open obsidian, there's no guarantee the files are up to date as Android may have killed the third party sync program. And on iOS, there's no way for the sync program and obsidian to share the same filesystem short of the obsidian devs explicitly integrating
Android does have Content Providers [0], basically apps can provide a "filesystem" which isn't locally stored on your phone and act like Network Shares. Caveat is that you need an internet connection.
Good question, because it is indeed the default behavior.
But you can always tweak settings to run the 3rd party sync app always in the baclground, and override the battery optimization setting for that particular app.
Syncing bytes is easy, many solutions exist (and syncthing / syncthing-fork is good at it).
Syncing by merging changes and resolving possible conflicts is a much harder task. Theoretically git has all the right bits, including the pluggable diffing and merging. In practice, I haven't seen it seriously used in this capacity.
This is to say nothing about files you only want on one node but not on another (heavy stuff lives on server and laptop, but not mobile, etc.)
This is why special-case syncing tools that know how to sync semantically are indispensable.
Most apps aren't built to use it, especially on mobile. Think of the use case of your grocery list--you want one tap, open the list, type type type, and done. Anything else--having to tap save, sync, write a commit message, etc... anything, is a fail in my opinion. Git is great to use behind the scenes but I don't want to see it in the UI or slow down my workflow.
Indeed, this can be done, but usually isn't. And when it is done, it looks like another proprietary syncing protocol.
The thing is that you should not expect a user to explicitly host a git repo somewhere to for a grocery list app. Most apps are designed for users who are unwilling to do that, and are actually ready to pay to avoid whatever technical hurdles.
OTOH I see a niche for an app geared towards more technical users, chich would, among other things, allow you to point at a git / hg / whatever repo to use as the synchronization point.
Syncthing works well on Android for photos, music, movies, and downloads. Not so much for notes. You'll end up with conflicts, and there aren't many great ways to merge changes on mobile.
I went for the paid syncing because I want it to "just work" while still having the futureproof way of storing the data locally in an accessible way.
So far it has worked absolutely flawless. If I change a file it's changing on my connected device in seconds. Not exactly like working on a shared google doc but close enough that I would even use it as a hack to quickly share links between my mobile and my desktop
It depends on your workflow. I use git to sync my obsidian vault. There's plugins to automate this, but doing it manually isn't that bad either. I use mobile mostly to read notes, and occasionally I'll write down a short line or two which I can sync over and edit and organize on desktop.
Obsidian Sync is by no means cheap, but I've never used a better syncing service. I'm on my second year and can't think of a single issue I've had across laptops, desktops, an Android phone, and a Chromebook.
I love Obsidian Sync as well but to be devil's advocate, it doesn't "just work" as a lot of people claim. It's still a bit rough around the edges. For example, it doesn't sync settings or starred files immediately. I've also noticed it dropping some text if I edit the same file on multiple devices simultaneously (or even in quick succession before sync is able to catch up). I'm sure these issues and more would exist with a 3rd party syncing solution but Obsidian sync still needs some work before it's perfect.
When I say simultaneously I mean typing something on a file on my laptop and then putting that away and making more change on my phone a few seconds later (sometimes the gap is even longer than that). Sync is pretty slow especially since it doesn't sync in the background.
I can think of a number of other notes syncing that's better -- probably even Evernote's. As a happily paying Obsidian Sync customer, I'll drop some reality, so new people aren't caught off-guard.
- Obsidian Sync is pretty slow.
- Obsidian Sync doesn't happen in the background, at present. That means, if you just made a bunch of updates in Obsidian, or you haven't opened the Obsidian mobile app in a while, you're in for a wait.
- Obsidian Sync occasionally has sync errors that involve manual interaction.
That said, it's fine and the overall Obsidian experience makes it worth it (well, if you can swing a discounted price).
I use Microsoft Word’s multi-editing feature at work. The sync is essentially real-time (setting aside other opinions in Microsoft Office). You can see every change that your co-editors make as they make it. You can work on one file on two different devices at the same time. That is the kind of sync that I’d like.
More realistically, I used to use a custom sync setup with a WebDAV server I set up and Goodsync software. You can set it to sync in file change, and it was fast, with changes replicating in a few seconds.
As it is, the Obsidian sync takes a few minutes. And if you edit the file on another device before sync goes through, you’ll lose the changes from one device or the other.
> As it is, the Obsidian sync takes a few minutes. And if you edit the file on another device before sync goes through, you’ll lose the changes from one device or the other.
Clearly we have had very different experiences. I have mainly markdown notes, PDFs, and screenshots and it syncs everything continuously as I work. As for "losing" the changes, I'll have to push back on that. You have full version history, so while you might have to look at an old version, you won't lose anything. There's certainly nothing unique to Obsidian with respect to conflict resolution. If version history isn't working, you'll have to talk to the developers because there's a serious bug.
> "As it is, the Obsidian sync takes a few minutes. And if you edit the file on another device before sync goes through, you’ll lose the changes from one device or the other."
This has been my biggest fear using sync. So far I haven't had any issues, but I just get a" feeling" (maybe it's the lag between syncs) that this could definitely happen.
Can you explain in a little more detail how it might actually occur? Maybe so I can prevent it from happening.
Usually, I've had it happen when I try writing stuff on a device that's been offline and I haven't brought it online to pull in the latest changes. We essentially have a merge conflict. Thankfully, they're not a pain to resolve.
OK, got it. Thanks. So, to prevent from happening in the first place, it'd make sense to give the recently sleeping device a moment or two to catch up.
It significantly improved for me a few months ago. The syncing seems to start much more quickly after I open the app. Not perfect but much better than it had been when I had to keep the app open by constantly touching my screen and hoping it would even start the syncing process.
So simple, they combine the best of all eras: local first, open, published formats and pluggable/byo multi-device sync/backup – Cloud if you wish, but not required. It gives me hope for the future, I wish more software these days followed this model.
Caveat: not an obsidian user (although I am a big step closer after this)
Markdown was never intended for data with a graph structure, so I think it's the right decision to use a different simple format instead of creating yet another bloated non-standard Markdown variant.
Yes! Compliment the standard, don't obfuscate it even more.
As someone who mostly write org rather than md, but sometime have to write md in various places, it's confusing that they're not all the same.
Agreed here too. This was a poor choice IMO. They call it canvas but it looks like a poor hybrid between mind mapping and UML. Markdown already supports hierarchy. I am guessing this let's you set coordinates for how to lay the canvas out but this is exactly why I'd never use it.
You say you agree but then state the opposite opinion?
> I am guessing this let's you set coordinates for how to lay the canvas out but this is exactly why I'd never use it.
You wouldn't like a text editor that automatically rearranges source code or sections of a document without you having a say in it, and for the same reason I find manual layout for this graph feature absolutely necessary. And beside that it's very likely you'd want some other metadata that just have no place in standard Markdown. Maybe a viable alternative would have been generating graphviz dot code and embedding it in Markdown code blocks, which would make it compatible with other tools as well - that could still be added via plugins.
Photoshop is proprietary software with a well documented file format anyone can read and write.
So is this software. "Open source" is not branding, it means something.
It's okay to make and promote and sell proprietary commercial software. That's what you are doing, be proud and clear about it. Pretending your efforts have anything to do with free software is deceptive.
You are confusing two different ideas here. The Canvas format is MIT licensed in the same way that Markdown uses a BSD-type license. That means we are giving explicit permission for anyone to use the format and build apps, scripts, plugins on top of it.
This is a pretty grating response, given how pointed it is. It's not made any better by the first sentence; it seems that you are the one confusing two different (types of) things:
> The Canvas format is MIT licensed in the same way that Markdown uses a BSD-type license.
In no sense are these two things comparable. "Markdown uses a BSD-type license" is a true statement because "Markdown", in the context where it makes sense to say this, is a Perl script—a program, licensed in a way that is not uncommon for open source programs to be licensed. Your canvas format is not a program. It's a 70-line TypeScript interface definition, going by your own link:
To call this "open source" (let alone open source "in the same way that Markdown" is) is a very odd choice. It's less odd for anyone who recognizes that it follows a common pattern, where folks with something to sell often openwash what it is that they're selling based on the (not unfounded) perception that having it be thought of as more open than it really is tends to confer certain positive benefits. It's why Steve Jobs lied about FaceTime being an open standard, for example.
Whether or not you're giving any explicit permission to build apps, scripts, plugins, etc. is largely moot—to be frank, you don't have the power to dictate otherwise. On the other hand, if you're saying that you're aiming to steward and participate in what (you hope) turns out to be a vibrant ecosystem built on a common format, then that's cool. But say what you mean, though. Calling it an open format or an open standard would be fine; "open source", however, this is not.
I appreciate the distinction you're making. I could have been more accurate in my description. Markdown states in its own documentation that the name refers to two things, and "Canvas" to date fits mostly in (1)
> Thus, “Markdown” is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML.
What we have done so far is shared an open spec for the .canvas file format, with a type definition that helps developers understand how to create properly formed Canvas files. We also are giving permission to people/companies to use this format with the freedoms that come with the MIT license. In addition we're also putting forward the intention that there should be a free and open format for this type of canvas data, with some similar properties to Markdown. Perhaps in the future there will be more open source tooling fitting into definition (2).
The goal here is simply to help people feel more comfortable that the canvas files they create are their own, and can eventually accrue longevity as more tools get built around the format. I hope this will lead to a rich ecosystem outside of Obsidian. We're committing to keeping it an open format, and hope to collaborate with other people who might want to adopt it.
The same can't be said about the PSD format, so I do think there is a difference in the level of openness that we're aiming for.
Yeah and its developed by Adobe which creates a walled garden around there products making file format interoperability very difficult.
Obsidian on the other hand uses open formats with open standards. The difference is NIGHT and DAY.
And if the goal is taking freedom away from the people who are using your product, or to artificially keep people using your product because you know you are making the world a worst place to live in, making that type of propriety software is not OK, even though there are plenty of misguided organizations and people who do it.
We're using whatboard.app for this at present. A bit different in approach, but a more more manageable and less infinite canvas. That said, this looks really cool and may be worth the desktop-app install.
Just as a data point. This feature of one-note (text boxes where you click) is the single reason I’m looking for something else. I absolutely hate any interface that has me fiddle with layout when I’m trying to focus on semantics.
Not that this should impact Obsidian much, since I assume the canvas thing is optional there, just a data point.
Related to infinite canvas _do_ checkout “The Humane Environment” [1] it has a few interesting takes
As for a more semantic approach to layouting, I think Flying Logic[2] makes a decent job of it
I use OneNote extensively and as I understand each page is like a white board where you can write anything anywhere. If I wanted a linear interface I would be using Word instead.
I don't think you would need either sync or publish at work. I haven't used canvas yet, as it's a new feature, but obsidian is a key app at work for me. Up to this point at least, it's been free :)
Make a private repo, and git commit / push / pull your obsidian notes and canvases just like you would any other shared repo
Yes, I much prefer local and do my own backups (rclone to backblaze) on just about everything. I only drop stuff on iCloud when I need to share it and a couple of ongoing spreadsheets I use to track stuff.
small thing but downloading and installing the obsidian snap package requires the `--dangerous --classic` arguments with snap (since it's not coming from a repository); may want to add that to the instructions
What does it mean to open-source or MIT-license a "file format"?
The MIT license is a license about copyrighted software, allowing people to use/modify/publish that software. But a file format isn't a piece of software.
Are you open-sourcing the specification document for the file format? (people are still free to write software that reads+writes the file format even if the specification document isn't open-sourced).
Are you open-sourcing your particular library for reading the file format? (I'm confused here, because you stressed that the file format was so simple, so I'd have expected it easy and maybe even desirable for many people to come up with libraries for reading+writing the file foramt?)
I wish I could edit my post to simply say open format for now. The MIT license currently refers to the spec and the documentation. Over time it will also include any tooling we open source (e.g. validator, linter, migration tools). The intention here is to work towards a shared format for this type of relational+spatial data, and we're hoping to collaborate with other members of the ecosystem to make something that can have interoperability and longevity.
Anyone is free to write software that modifies a file - there is no copyright law protecting that. This is one of the reasons why many large corporations are pushing hard towards cloud - they can protect the format AND the platform then monetize it at will. End users lose control.
I will give them points for putting it in a readable file format. But placing it under an MIT license and "open sourcing" it, doesn't do anything - and they know that. It's just fluff to market their new features.
Edit: Re-reading what I posted, In case it's taken the wrong way, I am not disparaging the team at Obsidian in any way:
I think they do good work and make great software.
IANAL
> The file itself is considered instead to be an idea or a system and is therefore not protected by the laws of copyright. So the description of a file format is copyrightable, but the format as it exists in its medium is not.
I was just researching graph representations. I would have used dictionaries for edges and nodes indexed by their IDs.. because that representation is json-merge patchable, which is useful for specifying atomic bulk graph operations.
With the caveat that I'm very far from a power user, I'm struggling to picture how I'd use this. Not as in I think it's a bad idea, but rather it looks cool but I believe I don't quite understand it.
I think the following is an example of an intended use case? Can anyone confirm/deny?
For my work related notes, there's some hierarchical structure to them even though it's hard to see that at the note level. There's all the projects for my work, and then for each project there are notes, and sometimes those notes have notes, etc. I think what Canvas would do here is let me create a visual board for all of the notes related to my work that'd make it easier for me to visualize the whole, drill in/out in particular areas, etc? Does that sound right?
Yeah I saw those. It's what made me think of my hierarchical structure for my work stuff. But not sure that I'm really understanding or just pattern matching to something similar but different.
You won't necessarily find an example that matches your use-case. I wouldn't assume that this was made with a regular note-taker or GTD-style productivity person in mins. Not every tool needs to work for everyone.
I think if your work already involves drawing flowcharts or diagrams of connected nodes, like in the biologist in the example, them it will make sense. If not, it will probably not be useful.
I consider myself a very visual person, and yet I never find any of these very overtly visual organization-type tools even remotely appealing. It seems to me there's... too much friction and fiddliness for something I can visualize myself after looking at a text list or folder structure?
I guess maybe it would help as a presentation tool to show others how you visualize a project. I just hope it's worth the effort. Maybe the others you show it to will be impressed?
I agree, don't underestimate the power of a piece of paper and a pencil. I'm a network engineer and and a very visual person. It's a heck of a lot easier to dump the contents of my head onto paper first than fiddling around with some app. If I need to make something professional to share with others (like a diagram) I always make a rough draft on paper first before using an application like Visio.
It's as you think it is, the main benefit is that it's like a notebook that you can zoom in/out of as you wish.
Some of my more visually-inclined friends use a similar program called Miro to keep track of their projects. At the conception stage they collect links to similar projects, scribble notes and draw sketches to create a moodboard. As the design takes form, they create some subsections in the canvas dedicated to certain details of the project and collect related notes there. Images or links of the work-in-progress are also pasted to track progress and to point out what needs to be changed. Each stage and each part of the project gets its own space with its own notes and when you zoom out you get a nice overview of the whole thing.
Miro can also be used collaboratively, so with groups you can also add in a Gantt chart and whatnot to organize.
My friends were in search of offline alternatives to Miro, so I think there is a group of people who will find this new feature very useful.
Yup, design people are very fond of things like Miro, but this is very behind that. Here's hoping that some Diagrams-like capabilities are added to this (yes, I am aware of unofficial plugins for Excalidraw or Draw.io)
One thing that bugs me with Obsidian: I cannot create a link to a specific obsidian vault on desktop (Windows). The thing is I often take small notes and opening an Obsidian (or any other app) is usually too much work for me. Instead, I prefer to create file shortcuts on desktop to just double-click them later when I want to access the data.
The thing is Obsidian vault is not represented by a recognizable file; it's a folder. So there is nothing to click at to automatically open it in Obsidian and consequently there is no way to create a shortcut on desktop that would open the specific Obsidian vault.
Yes, I know, I can launch Obsidian app and start from there but it is too much hustle when you have several frequently used vaults.
Also, the standard F2 shortcut for the usual item renaming does not work and it adds friction.
Thank you. But it does not solve the issue. The custom URI concept is too complex and alien in the Windows world.
A Windows user would much better prefer to have a special anchor file in Obsidian vault folder that could be double-clicked and treated by the standard and observable means.
This is why .txt files are so popular. A double-click and they work. The specialized tools may be 100 times better, but they often miss one important detail: frictionless entry. If something causes friction, especially at the start, then it gradually becomes a burden a user doesn't want to deal with.
However, you advice solves the issue for me because I'm a technical user and you have kindly presented the information. But just imagine how many of those who would totally miss that.
This is a great opportunity for you! This is a problem you know lots of people have and since you are a technical user, you could probably solve this for yourself and others in the same situation. Write a small application and register a file extension for it (maybe .obsidian). When you double click on sql.obsidian (for example), your app would launch read that file then launch Obsidian via the obsidian:\\ protocol.
Your launcher app could also handle the creating of .obsidian files or (even better), write a plugin for obsidian to export a .obsidian file.
I tried using the URI-scheme and vault-parameter some time ago on linux, to open specific vaults via script. Surprisingly, this did not worked at all. Even worse, the whole scripting of obsidian is horrible even on the fundamental levels, and it failed on pretty much any normal job. Though, this is not such a surprise, considering that it's complete foreign to linux any kind of integration. At the end, it's a closed space, not like an editor, open to the rest of the system.
Remember Obsidian is fine with files coming in from outside. You can just write text into its folders, using anything.
Not sure how to do this on Windows any more, but on MacOS the trick is to use a Shortcut that captures your whatever (text input, image, web page converted to Markdown, file) and writes it into the appropriate vault and optional subfolder.
Can also capture to, e.g., Downloads folder, and have a cron move it to the vault. (I do this when capturing web pages so Browser can't write outside Downloads.)
Anything that can capture to a file path, can capture to Obsidian.
I’m looking forward to seeing what their implementation of tasks looks like and how it stacks up next to org mode and its agenda. The user implemented task plugins aren’t up to job I don’t think. If it’s mega then I might switch to using it for task management but I am finding the combination of taskpaper and OmniFocus to be awesome at the minute
Hey, cool, thanks for pointing out they're working on task management. I currently use the Tasks plugin and it works ok, but it took some fiddling with queries to get the right display, it's a little flaky (doesn't update results all the time), and there's no concept of subtasks. I still haven't found my perfect task management system... really interested to see how Obsidian folks tackle this as a core plugin.
If you can stomach the cost, OmniFocus and Taskpaper combined is the best I’ve found so far after trying more apps and systems than I could count using both hands and feet.
In Taskpaper you can very quickly write out a detailed project with all kinds of sub tasks. Then when you’re finished you simply copy it and paste it into OmniFocus which automatically turns it into a full project. You get the best of both worlds with this; really quick project planning in the early stages and then the full capabilities of dedicated task management software for your day to day.
While the feature itself was interesting, adding such a feature made alarm in my head. I don't think this is necessarily a good trend. Please Obsidian needs to be very, very cautious about adding such large features.
I won't forget why I, and many others, gave up Evernote. It did too much, not too little.
Obsidian is built on a modular architecture. Canvas view is a plugin so you can turn it off if you don't want to use it. Not much is changing with the core. You can still run Obsidian as a very lightweight app with most plugins disabled.
Thanks. That's what I like about Obsidian, a flexible tool kit, instead of KFC party bucket. I just wanted to (self-servingly) remind Obsidian to keep in mind not to go down that road.
It’s in that direction, but I also think VS Code offers more and more flexible extension points.
I was reading the plug-in development documentation [0] this morning and the ways in which you can extend Obsidian feels relatively limited. I hope they’ll add more things to hook into.
Hmm, not sure what you talking about (and I also never use Evernote), because I always see Obsidian as a Toolbox that you could customize personally to your own taste.
But I do understand why you came up with that thinking, can't denied that a lot of us did fall into that pitfall of overcomplicating stuff.
It wasn't the feature-bloat that made me give up on EN. It was the broken sync, the difficulty getting an export of my notes from their server, the brutally sluggish mobile and desktop apps, etc.
Obsidian doesn't seem to be going down that road. Using another provider to store the notes (Dropbox, S3, Blob, self-hosted disk space, etc.) takes care of issues #1 and #2. Making this an optional plugin answer #3.
Did it do too much, or was it too opinionated and bloated? Obsidian is neither!
Obsidian devs have shown repeatedly that they understand why Obsidian is successful - just look at how they released this. No canvas-specific core software changes, just a new plugin that can be disabled.
this feature is actually related to note taking though. its not like evernote where they were off making nonsense contacts or food rating apps instead of improving their core note taking app
Not sure whether this is true. Evernote did much, but on the wrongs parts, in the wrong ways, and then abounded them often in poor state. So in fact they did not enough on the important parts. They barely added the things people demanded, instead added features barely anyone asked for, or rewrote the clients for third or fourth time.
Obsidian on the other side has a sleak core, and everything else is in extensions. Even the core-app itself comes with most parts in extensions. While also allowing the users themselves to add extensions for their demand. This is significant more healthy than whatever evernote did.
I wonder if Apple will try and integrate Apple Notes (I know you can already add text but I mean existing notes in the other native app) in the new Freeform app to try and compete with this
This is fantastic development, something that really makes a difference in how you can use Obsidian. I got notified from LogSeq group that they are also introducing whiteboard, so clearly innovation is happening at really good pace.
There is more room for innovation, as these "thinking spaces" are still inflexible and I expect to see more good things. Obsidian has huge advantage that is open and you are never scared to lose your work in somebody's walled garden.
To me, this is more important then any VR or anything like this as it helps us use computers to think and collaborate, augment our abilities. What were original reason for making computers, not just enslaving our attention in dopamine loop.
393 comments
[ 2.8 ms ] story [ 310 ms ] threadIf I understand it correctly, the use case is to link existing MD notes visually. That's a different way of looking at the data than the two-way backlink approach that was the foundation of Obsidian (and other personal wiki tools).
I'm interested in this, as I currently use a combination of Obsidian + SimpleMind, but currently SimpleMind has more features (full fledged mindmapping app), and I like having two separate spaces to sketch out ideas.
For smaller scale mindmapping though, I am finding Canvas very usable already for such an early release. The ability to easily link or embed to markdown files (or create new ones) is really nice, and I like having all my work in a common area. Community created plugins will also dramatically expand the app.
There will always be advantages for the dedicated apps as well, but this is going to be a great option for many.
You can see the spec for .canvas here: https://github.com/obsidianmd/obsidian-api/blob/master/canva...
After much internal debate we chose the JSON format. We stay committed to keep it as open and easy to work with as possible. Plugin developers are already parsing and modifying the JSON file to programmatically change a Canvas view, and I think that's a fantastic start!
Now that you crossed that line, I hope the next "custom format" will be a "real" outliner. You are surely familiar with outliners ;-) It is about full block-level support really, and all what that allows (API, backlinks, query, aliases...)
Anyway, Canvas Rocks! Thanks!
It seems to do free text search over notes content just fine for me.
type in a paragraph in a doc, then hit search for a keyword. cricket
my only issue with Figma is navigating through the screens once you create this gigantic canvas.
Similarly, right now they’re discussing how to contain a node-based database in human-readable markdown comments.
For example you can embed embed Markdown notes inside a Canvas, and embed a Canvas inside a Markdown note.
Logseq now has a whiteboard feature that is similarly powerful.
https://scrybble.ink
It's still in beta for now, so it's definitely not flawless, but it does work! You can choose which files from your tree to sync, they will appear as pdf files in your vault.
The page is not important for anything however, it just says "thanks for your purchase, you can now make an account"
https://github.com/rschroll/rmrl
EDIT: Roadmap updated, so we're on the same page :)
Good catch though! Thanks
Edit: The roadmap has been updated: https://scrybble.ink/roadmap
(I love my current job though!)
[0]: https://github.com/zachwick/rextract
A thread on Reddit give me a small hope this update may do that but I don't think so.
PS: I'm aware of the daily notes viewer, and that's what I currently use for most of these situations. But it doesn't help with having a simple way to see contents of all recently created notes.
Edit: this is something I mostly want for mobile
The problem is they wanted it multi platform on iOS, Android, Mac, Windows and Linux so they made it using electron. Unless they either do native versions for each platform (5 apps!) or rewrite the entire application in something quicker like Tauri it’s never going to be as fast as apple notes, and will only get worse every time you add a new plugin.
GWT still exists and had a release last year. It’s been 9 years since it fully transitioned to an open source project. I’m not sure at what point Google stopped contributing since I see old team members in the commit history.
Besides Google, who re-wrote several of their own apps with Flutter, like Pay and their Home devices (which some are apparently running fuchsia now?), there's BMW, eBay, STAIR (US Department of Veteran Affairs), Nubank, and plenty more.
There's lot of projects that Google has killed for which this is the case, though. Stadia had people building for it, and Reader had people building atop it to name maybe the two highest profile ones. Of course, the cost vs value of maintaining those for Google was a very different question, but on its own, other companies' interests don't seem to move the needle much for Google when it comes time to kill a project.
Please, we don’t need to have the electron rant every single time an app that uses it is discussed.
> it's faster and easier to create a note in Apple Notes, retrieve it (as they as are sorted from most recent by default, and also I can pin some notes), search, and navigate in folders (especially on mobile, navigating across folders is so much better with Apple Notes than Obsidian).
Yes there are UI elements at play here. But even UI elements are dependent on the language and framework you have decided to use. For example, it is common on Android to use an expanding sidebar whereas on iOS it is more common to use a dropdown menu. If you are developing a one size fits all app then design choices that feel native on one platform are going to feel non-native on another.
And in addition, physical app speed matters. If you want to create a brand new note and you're not already in the app it takes significantly more time until you can start typing with Obsidian than if you use Apple Notes, 1Writer etc. If you're doing it multiple times a day this time adds up.
If you don't think physical app speed matters then why do you think big companies spend thousands optimising webpages to reduce latency? It is because the consumer gets bored of waiting and goes elsewhere. If another app comes along that offers the same functionality of Obsidian but is noticeably faster, people will migrate to it. Everything is a tradeoff, but pretending framework performance isn't a relevant factor does not help anybody.
I'm not declaring anything. I gave my interpretation of the intended meaning, which didn't mention speed or electron at all. Thus, there were two options:
- My interpretation was correct, and it was _the exact same rant every electron app thread ever has_
- Your interpretation was correct, and it was _the exact same rant every electron app thread ever has_
As it happens - it was the first.
The electron rant is about as useful an opinion as the "Python 2 to python 3 migration was botched" that is brought up in every single thread about python.
Just because you know about electron and its performance issues doesn’t mean everyone who is reading this thread does. There may be many people using who don’t even know what electron is or that Obsidian is an electron app and may find the information informative. Last time I checked, this site was for everybody. Or is it only for you and your superior knowledge, oh mighty one?
Not just for the speed, but also for (personal) mental simplicity, this is one of many reasons I use [Drafts](https://getdrafts.com) for so much writing. I also use a few other notes apps in concert with Obsidian, and if I just hit Drafts on my iPhone or Apple Watch I can start getting the idea down. If it's going to Obsidian, it's an action from Drafts to just dump it in there without using Obsidian's interface at all. If it's not going to Obsidian (and instead going to Bear or OmniFocus or into an email or a text message or appending to an existing note or a million other things) then it's just a different action.
Also, if you use a 3rd party storage solution instead of Obsidian Sync, you can view recently modified/created notes in the Recents on there.
If you wanted to see the content of all recent notes, you can write a custom query for the dataview extension that attempts it.
It was rejected by appstore for simplicity. But works well for me.
PS - all I can say about Canvas is 'wow'!!! Awesome feature!
But true, a google keep like tile-view with auto-layout and filters would be a useful enhancement for obsidian.
I have two notes in there - Buffer and Shopping list. Buffer is one note for all the small stuff you mentioned. I also have widget on phone homescreen for that note so I can access it pretty seamlessly. Of course, it also means, you need to access some Nextcloud instance (I run my own).
Edit: I use Obsidian synced with Nextcloud for all the "second brain" things.
Just incredible, and if anybody from Obsidian reads that, you have my utmost respect.
This feature is neat, but it feels like a turning point. I believe it's the first betrayal of the it's-just-a-folder-of-markdown-files principle.
Remember, most of Obsidian is just plugins. Even core functionality. Which is a big reason i use Obsidian.
This is adhering to an obvious crack showing in Obsidian as it is: how do you store a graph view configuration? Right now, per vault, you get one slot unless you draw in something like Juggl, which is... well it raises serious usability concerns.
As far as features go, we're continuing down the path of a modular architecture. The core will continue to be as streamlined as possible. Canvas is like any other plugin, you can disable it. We think that flexibility is important, because not everyone thinks the same way. You should be able to create an environment that fits your way of thinking. However not everyone needs every feature, thus the modularity/extensibility approach.
If this were just another pluigin that you could download and use if you want, I really wouldn't care. It's the fact that it's considered part of the core product that gives me bad vibes. It feels like the project, even without VC money, is doing what almost every other successful project does - expand.
Do you think Obsidian will ever be considered "done"?
There were two under-the-hood changes required to properly facilitate Canvas:
1. Redoing "embeds." We decided it was important for cards to work the same way our inline embeds work. So we rewrote the embed system to be properly extensible and useable by plugins. Canvas is leveraging the same system that powers ![[embeds]]
2. Untangling our editor. Previously, editors were a construct constrained to a markdown view in Obsidian. We've also done some refactoring so that a "editor" can be used anywhere, and doesn't need to be backed by a file. We see this a another big win for plugins that want to build their own editing experience
We want to keep pushing what third party plugins can do on top of Obsidian, so implementing a feature like Canvas forces us to find the limitations that exist in the API.
The question of whether Obsidian will ever be "done" is a tough one because operating systems and user expectations are a shifting landscape. Our intention is that the writing and thinking you do inside of Obsidian can be future-proof for decades, even if Obsidian itself is no longer relevant. That's why we're focused on portable formats like Markdown. However we cannot know how operating systems will change, and what will be required for Obsidian to continue working well on macOS 30 or Windows 20. Similarly, we can't close ourself off to new UI paradigms like Canvas that open up new thinking modalities our users are asking for. We hope that the modular and flexible architecture of the app allows it to remain very performant regardless of what plugins a user has turned on.
Can also recommend the excellent app Pureref, which is an infinite canvas for pictures. Does not compete with this though, different use cases.
https://www.pureref.com
https://twitter.com/kepano/status/1601664161360261120
https://twitter.com/kepano/status/1601664161360261120
And some longer walkthrough videos:
https://www.youtube.com/watch?v=vLBd_ADeKIw
https://www.youtube.com/watch?v=G3DJKk4ivq4
https://www.youtube.com/watch?v=rPescoJzcFA
https://obsidian.md/canvas#protips
https://github.com/obsidianmd/obsidian-api/blob/master/canva...
Just like all other files in Obsidian, canvas files are your own and local to your device. You're still linking to your own Markdown files which are just as future-proof as ever.
We decided to create the .canvas format because there wasn't any pre-existing canvas-type format we could find that fit our priorities around longevity, readability, interoperability and extensibility.
The .canvas format is designed to be as easy to parse as possible. We've already seen a few plugins take advantage of it, and we hope that more tools will become available that can use the .canvas format.
https://learn.microsoft.com/en-us/openspecs/office_file_form...
On the other hand, this has also caused some headaches around using it on mobile.. but so far this has been a worthwhile tradeoff. Thanks for all the hard work!
And it has 15 GB free forever, just like Google Drive.
Mega sync has native clients in MacOS, Linux, Windows, iOS, Android.
[0] https://developer.android.com/guide/topics/providers/content...
But you can always tweak settings to run the 3rd party sync app always in the baclground, and override the battery optimization setting for that particular app.
Syncing by merging changes and resolving possible conflicts is a much harder task. Theoretically git has all the right bits, including the pluggable diffing and merging. In practice, I haven't seen it seriously used in this capacity.
This is to say nothing about files you only want on one node but not on another (heavy stuff lives on server and laptop, but not mobile, etc.)
This is why special-case syncing tools that know how to sync semantically are indispensable.
What do you mean? What is preventing you from using git to sync your notes?
The thing is that you should not expect a user to explicitly host a git repo somewhere to for a grocery list app. Most apps are designed for users who are unwilling to do that, and are actually ready to pay to avoid whatever technical hurdles.
OTOH I see a niche for an app geared towards more technical users, chich would, among other things, allow you to point at a git / hg / whatever repo to use as the synchronization point.
Obsidian sells a first party syncing solution, which I hear works well:
https://obsidian.md/sync
I do git syncing on Android via termux (It works most of the time, except when git decides to shit itself every now and then on my tablet):
https://forum.obsidian.md/t/guide-using-git-to-sync-your-obs...
I can't vouch for it because I don't have any iOS devices new enough to support it, but supposedly you can use Working Copy to sync via git on iOS:
https://forum.obsidian.md/t/mobile-setting-up-ios-git-based-...
So far it has worked absolutely flawless. If I change a file it's changing on my connected device in seconds. Not exactly like working on a shared google doc but close enough that I would even use it as a hack to quickly share links between my mobile and my desktop
I don't think that's the intended use case of Sync or anything they've ever said it could be used for.
- Obsidian Sync is pretty slow.
- Obsidian Sync doesn't happen in the background, at present. That means, if you just made a bunch of updates in Obsidian, or you haven't opened the Obsidian mobile app in a while, you're in for a wait.
- Obsidian Sync occasionally has sync errors that involve manual interaction.
That said, it's fine and the overall Obsidian experience makes it worth it (well, if you can swing a discounted price).
More realistically, I used to use a custom sync setup with a WebDAV server I set up and Goodsync software. You can set it to sync in file change, and it was fast, with changes replicating in a few seconds.
As it is, the Obsidian sync takes a few minutes. And if you edit the file on another device before sync goes through, you’ll lose the changes from one device or the other.
Clearly we have had very different experiences. I have mainly markdown notes, PDFs, and screenshots and it syncs everything continuously as I work. As for "losing" the changes, I'll have to push back on that. You have full version history, so while you might have to look at an old version, you won't lose anything. There's certainly nothing unique to Obsidian with respect to conflict resolution. If version history isn't working, you'll have to talk to the developers because there's a serious bug.
This has been my biggest fear using sync. So far I haven't had any issues, but I just get a" feeling" (maybe it's the lag between syncs) that this could definitely happen.
Can you explain in a little more detail how it might actually occur? Maybe so I can prevent it from happening.
If you are transferring from desktop to mobile, make sure the .obsidian folder inside the vault is copied also
Caveat: not an obsidian user (although I am a big step closer after this)
> I am guessing this let's you set coordinates for how to lay the canvas out but this is exactly why I'd never use it.
You wouldn't like a text editor that automatically rearranges source code or sections of a document without you having a say in it, and for the same reason I find manual layout for this graph feature absolutely necessary. And beside that it's very likely you'd want some other metadata that just have no place in standard Markdown. Maybe a viable alternative would have been generating graphviz dot code and embedding it in Markdown code blocks, which would make it compatible with other tools as well - that could still be added via plugins.
Photoshop is proprietary software with a well documented file format anyone can read and write.
So is this software. "Open source" is not branding, it means something.
It's okay to make and promote and sell proprietary commercial software. That's what you are doing, be proud and clear about it. Pretending your efforts have anything to do with free software is deceptive.
Photoshop/PSD on the other hand is a closed proprietary format: https://en.wikipedia.org/wiki/Proprietary_file_format
> The Canvas format is MIT licensed in the same way that Markdown uses a BSD-type license.
In no sense are these two things comparable. "Markdown uses a BSD-type license" is a true statement because "Markdown", in the context where it makes sense to say this, is a Perl script—a program, licensed in a way that is not uncommon for open source programs to be licensed. Your canvas format is not a program. It's a 70-line TypeScript interface definition, going by your own link:
<https://github.com/obsidianmd/obsidian-api/blob/master/canva...>
To call this "open source" (let alone open source "in the same way that Markdown" is) is a very odd choice. It's less odd for anyone who recognizes that it follows a common pattern, where folks with something to sell often openwash what it is that they're selling based on the (not unfounded) perception that having it be thought of as more open than it really is tends to confer certain positive benefits. It's why Steve Jobs lied about FaceTime being an open standard, for example.
Whether or not you're giving any explicit permission to build apps, scripts, plugins, etc. is largely moot—to be frank, you don't have the power to dictate otherwise. On the other hand, if you're saying that you're aiming to steward and participate in what (you hope) turns out to be a vibrant ecosystem built on a common format, then that's cool. But say what you mean, though. Calling it an open format or an open standard would be fine; "open source", however, this is not.
> Thus, “Markdown” is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML.
What we have done so far is shared an open spec for the .canvas file format, with a type definition that helps developers understand how to create properly formed Canvas files. We also are giving permission to people/companies to use this format with the freedoms that come with the MIT license. In addition we're also putting forward the intention that there should be a free and open format for this type of canvas data, with some similar properties to Markdown. Perhaps in the future there will be more open source tooling fitting into definition (2).
The goal here is simply to help people feel more comfortable that the canvas files they create are their own, and can eventually accrue longevity as more tools get built around the format. I hope this will lead to a rich ecosystem outside of Obsidian. We're committing to keeping it an open format, and hope to collaborate with other people who might want to adopt it.
The same can't be said about the PSD format, so I do think there is a difference in the level of openness that we're aiming for.
Obsidian on the other hand uses open formats with open standards. The difference is NIGHT and DAY.
And if the goal is taking freedom away from the people who are using your product, or to artificially keep people using your product because you know you are making the world a worst place to live in, making that type of propriety software is not OK, even though there are plenty of misguided organizations and people who do it.
It can borrow a few things from OneNote e.g.
- cards resize automatically with text.
- OneNote starts with a cursor, clicking anywhere on canvas and writing is a single click operation.
- There are no hard borders around cards in OneNote.
- OneNote is WYSIWYG which this canvas isn't currently.
This is not a definitive list and I know its too early to ask for new features and stuff. Good things to consider IMO.
Not that this should impact Obsidian much, since I assume the canvas thing is optional there, just a data point.
Related to infinite canvas _do_ checkout “The Humane Environment” [1] it has a few interesting takes
As for a more semantic approach to layouting, I think Flying Logic[2] makes a decent job of it
[1] https://www.goodreads.com/en/book/show/344726.The_Humane_Int...
[2] https://flyinglogic.com/
If I sign up for the Sync or Publish plans, do I still need to pay $50 per year to use it at work? Or is that included?
Make a private repo, and git commit / push / pull your obsidian notes and canvases just like you would any other shared repo
https://pypi.org/project/grony/
I know the plugin, but it seems to work only for Github hosted repos. I want my notes to be elsewhere.
That's against their license. You're essentially pirating it.
https://obsidian.md/eula
https://obsidian.md/eula
The MIT license is a license about copyrighted software, allowing people to use/modify/publish that software. But a file format isn't a piece of software.
Are you open-sourcing the specification document for the file format? (people are still free to write software that reads+writes the file format even if the specification document isn't open-sourced).
Are you open-sourcing your particular library for reading the file format? (I'm confused here, because you stressed that the file format was so simple, so I'd have expected it easy and maybe even desirable for many people to come up with libraries for reading+writing the file foramt?)
Anyone is free to write software that modifies a file - there is no copyright law protecting that. This is one of the reasons why many large corporations are pushing hard towards cloud - they can protect the format AND the platform then monetize it at will. End users lose control.
I will give them points for putting it in a readable file format. But placing it under an MIT license and "open sourcing" it, doesn't do anything - and they know that. It's just fluff to market their new features.
Edit: Re-reading what I posted, In case it's taken the wrong way, I am not disparaging the team at Obsidian in any way:
I think they do good work and make great software.
IANAL
> The file itself is considered instead to be an idea or a system and is therefore not protected by the laws of copyright. So the description of a file format is copyrightable, but the format as it exists in its medium is not.
https://www.fileformat.info/mirror/egff/ch08_09.htm
Does this look OK? https://i.postimg.cc/4ymyHWxF/window-border.png
I think the following is an example of an intended use case? Can anyone confirm/deny?
For my work related notes, there's some hierarchical structure to them even though it's hard to see that at the note level. There's all the projects for my work, and then for each project there are notes, and sometimes those notes have notes, etc. I think what Canvas would do here is let me create a visual board for all of the notes related to my work that'd make it easier for me to visualize the whole, drill in/out in particular areas, etc? Does that sound right?
I think if your work already involves drawing flowcharts or diagrams of connected nodes, like in the biologist in the example, them it will make sense. If not, it will probably not be useful.
I guess maybe it would help as a presentation tool to show others how you visualize a project. I just hope it's worth the effort. Maybe the others you show it to will be impressed?
Some of my more visually-inclined friends use a similar program called Miro to keep track of their projects. At the conception stage they collect links to similar projects, scribble notes and draw sketches to create a moodboard. As the design takes form, they create some subsections in the canvas dedicated to certain details of the project and collect related notes there. Images or links of the work-in-progress are also pasted to track progress and to point out what needs to be changed. Each stage and each part of the project gets its own space with its own notes and when you zoom out you get a nice overview of the whole thing.
Miro can also be used collaboratively, so with groups you can also add in a Gantt chart and whatnot to organize.
My friends were in search of offline alternatives to Miro, so I think there is a group of people who will find this new feature very useful.
The thing is Obsidian vault is not represented by a recognizable file; it's a folder. So there is nothing to click at to automatically open it in Obsidian and consequently there is no way to create a shortcut on desktop that would open the specific Obsidian vault.
Yes, I know, I can launch Obsidian app and start from there but it is too much hustle when you have several frequently used vaults.
Also, the standard F2 shortcut for the usual item renaming does not work and it adds friction.
https://help.obsidian.md/Advanced+topics/Using+obsidian+URI
A Windows user would much better prefer to have a special anchor file in Obsidian vault folder that could be double-clicked and treated by the standard and observable means.
This is why .txt files are so popular. A double-click and they work. The specialized tools may be 100 times better, but they often miss one important detail: frictionless entry. If something causes friction, especially at the start, then it gradually becomes a burden a user doesn't want to deal with.
However, you advice solves the issue for me because I'm a technical user and you have kindly presented the information. But just imagine how many of those who would totally miss that.
Your launcher app could also handle the creating of .obsidian files or (even better), write a plugin for obsidian to export a .obsidian file.
https://help.obsidian.md/Advanced+topics/Using+obsidian+URI
there is also a plugin for having advanced uris if you want to be more specific:
https://github.com/Vinzent03/obsidian-advanced-uri
Not sure how to do this on Windows any more, but on MacOS the trick is to use a Shortcut that captures your whatever (text input, image, web page converted to Markdown, file) and writes it into the appropriate vault and optional subfolder.
Can also capture to, e.g., Downloads folder, and have a cron move it to the vault. (I do this when capturing web pages so Browser can't write outside Downloads.)
Anything that can capture to a file path, can capture to Obsidian.
Tasks are usually not very descriptive, but you get a sense of what's to come.
In Taskpaper you can very quickly write out a detailed project with all kinds of sub tasks. Then when you’re finished you simply copy it and paste it into OmniFocus which automatically turns it into a full project. You get the best of both worlds with this; really quick project planning in the early stages and then the full capabilities of dedicated task management software for your day to day.
I won't forget why I, and many others, gave up Evernote. It did too much, not too little.
I was reading the plug-in development documentation [0] this morning and the ways in which you can extend Obsidian feels relatively limited. I hope they’ll add more things to hook into.
0: https://marcus.se.net/obsidian-plugin-docs/user-interface
But I do understand why you came up with that thinking, can't denied that a lot of us did fall into that pitfall of overcomplicating stuff.
Obsidian doesn't seem to be going down that road. Using another provider to store the notes (Dropbox, S3, Blob, self-hosted disk space, etc.) takes care of issues #1 and #2. Making this an optional plugin answer #3.
Obsidian devs have shown repeatedly that they understand why Obsidian is successful - just look at how they released this. No canvas-specific core software changes, just a new plugin that can be disabled.
Not sure whether this is true. Evernote did much, but on the wrongs parts, in the wrong ways, and then abounded them often in poor state. So in fact they did not enough on the important parts. They barely added the things people demanded, instead added features barely anyone asked for, or rewrote the clients for third or fourth time.
Obsidian on the other side has a sleak core, and everything else is in extensions. Even the core-app itself comes with most parts in extensions. While also allowing the users themselves to add extensions for their demand. This is significant more healthy than whatever evernote did.
There is more room for innovation, as these "thinking spaces" are still inflexible and I expect to see more good things. Obsidian has huge advantage that is open and you are never scared to lose your work in somebody's walled garden.
To me, this is more important then any VR or anything like this as it helps us use computers to think and collaborate, augment our abilities. What were original reason for making computers, not just enslaving our attention in dopamine loop.
For example, (future) plugins for advanced filtering and automatic layouts [2] will certainly help manipulate very large canvases.
[1] Most of it is online/collaborative (https://infinitecanvas.tools/gallery/) though so it is not exactly the same.
[2] https://www.youtube.com/watch?v=yrbLZvHDPqI