Gingko Desktop Beta


To import into online:

  1. Export as JSON format.
  2. Open the file, and copy the JSON text.
  3. Paste the JSON into a card where you want the copy to go.
  4. Press Shift-Ctrl-Enter to import it.

Got to make this better, smoother, but that’s how it is for now.


On topic of automated note titles and the root node:

I am a new user so take my opinions with a grain of salt, but after using both the web app and the desktop beta, I believe that the current approach (in the web app) is superior to the approach of the desktop app.

Gingko’s uniqueness for me lies in that it feels like real paper sheets, but with structure. A paper sheet is just that, a paper sheet. I choose if I want to give it a title or not. If I write a long text, I might need one sheet with a title and ten sheets with content. This is how I’ve been using Gingko so far: I write a title on one card, and then write the actual text/details/notes across multiple cards. And for more freeform notes, I often don’t have or need a title at all in the whole tree.

Forcing the first line to be the title makes sense for more traditional note-taking apps where you save notes in separate files and you need to call the files something. In Gingko, this doesn’t apply. And saying “but you can press enter to not set a title” doesn’t feel like a valid solution. The default option is what shows a new user how the app is expected to be used. Do you really want to teach new users to set titles for all of their cards? Is this how you are using your trees? Would you like to force most users to use an ugly hack to save some other users from pressing “#” a few times?

Not to mention that it would make exporting awkward and unintuitive. “I haven’t set any formatting in this note, why is this sentence a title in the HTML export? What gives?” Also: if there is a forced title, should further formatting levels be relative to that title? Or relative to the top level? A lot of ways to be confused with this.

When it comes to the root node: again, this creates an unnecessary restriction. It feels like what you want to achieve (holding preferences) is more logically stored in the tree options (the pane you get when clicking on the tree name) than in cards. The idea to be able to open more than one tree at once is more appealing - in which case I would like to ask for that first extra level to be easily hidden, as I wouldn’t need it 99% of the time.


Thanks for the feedback.

I’m becoming more in favor of dropping the titles as time goes on.
The main reason I added it is because for first time users, I imagined that not having to explain “Markdown” and “heading levels”, but instead just see the title, would ease things. But the feedback here is making me question the decision.

Gingko, for me, is all about freedom. And so it should be as un-opinionated as possible when it comes to the content of your cards.

Right now, I’m still focusing on stability, but once that’s done, I will probably drop the auto-titles, and strongly consider dropping the “only one root”.

Thanks to everyone who gave me feedback on this!


Not having to explain Markdown and heading levels is a valid point of consideration. Although I think people who are scared of Markdown will either ignore it and use capitalization for title cards, or they won’t be happy unless you give them some WYSIWYG solution anyway.

One thing I have noticed in my usage is that I tend to have “title levels”, i.e., certain levels in the tree only (or mainly) contain titles. And if I have a multi-tier structure, I tend to forget which heading level I should use at a given time. Maybe you could create a keyboard shortcut (or a button) that automatically adds the heading level equal to how deep we are in the tree? (I.e., “#” in the root node, “##” the level below that, etc.) That would make things easier for new users also, because they would also have to learn one shortcut to enter a heading. Just a thought.

Other possibilities: add buttons like on this forum to make formatting easier. Or: allow users to set some tree tiers as “title tiers” and content placed in them would automatically get the appropriate heading.

EDIT: if you want to get some inspiration on how to combine Markdown with user friendliness, check out Bear.



I extracted the desktop app into a folder and launched the Gingko.exe file and got the following error:

Am I doing something wrong?

I’m running Windows 7 Ultimate on my PC.


Love Gingko - thank you for it. The Desktop version and web version are both extremely useful.

First, I wanted to ask, is any keyboard shortcut to create a new card below the one you are currently editing and simultaneously enter edit mode on that new card? Ctrl-down creates a new card below the one currently selected (when not in edit mode), but it is not an active shortcut in edit mode. Would it make sense to make ctrl-down and ctrl-right work in edit mode too? This would be a big help for me. Perhaps these could be equivalent in edit mode to a ctrl-enter + ctrl-down/right, so that the current card gets saved before creating the new one. (I note that ctrl-J does what I am asking in the web version (as long as you are at the end of the edit field), but in the desktop version it does not work - it fails to enter edit mode for the new card. Instead ctrl-J simply creates a new card but does not enter edit mode for the new card. This seems like it is probably a bug.)

Second, would it make sense to add F2 as an alternate shortcut to enter edit mode? This is a common Windows shortcut for edit/rename (e.g. in Excel, Windows Explorer, etc.) and I find myself frequently pressing it to try to edit a selected card.

Third, I’m a new user and I support the idea of getting rid of the enforced root node or replacing it with a column containing the root nodes of several trees.

However, I am more ambivalent about the automatic titles. To me it seems logical that most cards would have a header (perhaps the header is the only text in the card) and it’s not a big burden to press down if you don’t want a header. However I also see the other side of the issue that others have expressed.



Actually, on thinking and playing with the web and desktop software more, I would join with the previous posters that it feels better not to have automatic titles.


Thanks @sirfoobar for the input.

Yes, I do plan to have a Ctrl+J/K/L to create new cards, same as web app. (in web app, those keys actually split the card at the cursor, which has the effect of creating a new card and editing it if you’re already at the end).

Noted on auto header, I will remove it.

Thanks everyone for the feedback!


Thanks -
Great software, great idea!


I hope you’ll fix the copy-paste bug on the Mac for the next release. The Desktop app is hardly usable if I have no way of moving data between it and the web app…

As to the auto-header, what would be really great would be to have two options for Markdown import and export (both in the web app and on the desktop): with absolute and relative headings. Basically, “absolute” would do what your current import/export does. “Relative” would adjust for the depth of the node you’re importing/exporting. I.e., if I have a document that starts with level-1 headers and I import it into a card that’s on level 4 of the tree, the relative import would add 3 additional “#” to each header. Conversely, a relative export would search for the highest level header, change it to header-1, and adjust the other headers accordingly.


Yes, sorry about that. Mac is harder for me to debug, as I don’t have one.

For copying to web app:
You can export to JSON, and import it in the web app.
That way you’ll be able to copy the structure as well as the content.

Does that help?


The thing is, I’d like to export things from the web-app to the desktop, not the other way around. :slight_smile:


You can do so as well. In web app there’s an export to JSON option. In the desktop version, go to File > Import JSON.

Let me know if you have any issues with the process.



I’ve just started with Gingko beta on Linux and immediately noticed the following problem. I have a WQHD (2560x1440) HiDPI display, and all Electron/Chromium apps (Skype, Atom, Nylas, Chromium, whatever) always look too large for me with default settings. Apparently they determine that I have a HiDPI display, but they set their scale factor to 2 instead of 1.5 which is much better for my display.

In most Electron-based apps I can override this setting with a special command line option, --force-device-scale-factor=1.5. This is quite fine for me, I usually set up a forwarding script which passes this option, if the application itself does not support configuring it in its options (like telegram-desktop or skypeforlinux do). In case of Gingko it also kinda works, but it also makes it display an error message about a missing file.

This is kind of inconvenient. Ideally I would like Gingko to have an option to choose the desired scaling like it is done in the telegram-desktop app (can’t insert an image, sorry).

Although making the command line option work correctly is absolutely fine for me too.

Also, I actually really like the fact that I don’t need to format card headers manually, it would be sad if this feature disappeared. Maybe make it externally toggleable for a particular file?


Here is another problem. If you have a long title in a card, it gets wrapped, and the part of the title which is wrapped to the next line is written as plain text, without boldness an size change, however, when the card is saved, the entire title is displayed correctly:


Is the fact that drag&drop does not work a known bug? In the linux version, at least, it seems that I cannot move any cards around.


I don’t think titles are a bad thing - but they should be optional. Maybe it is time for that dreaded “preferences” menu item? boolean:show_titles


Drag’n Drop does not appear to work in Windows either. But for me the entire POINT of Gingko is that you don’t need to waste time with the mouse.

Use ALT- to move a card around. Practice for a minute and it becomes super-fluid.
Also CTRL- will ADD a card.

When you are in the web app, go to the “?” help menu and look at the Full Shortcuts Reference.


Wow, I completely forgot about keyboard combinations! Thanks, this indeed solves most of the problem here.


Hi All,

Am just installing this on a linux laptop (Ubuntu 16.04 64bit) and am seeing the following issues thus far

  1. Latex not working (not yet implemented?)

I cut and paste from the latex example in the webapp faq

$$f(a) = \frac{1}{2\pi i} \oint_\gamma \frac{f(z)}{z-a}\, dz$$

and it is displayed in the above format

  1. The following table (as an example) has the header row offset:

    Fruit Color Number
    apple red 3
    banana yellow 10
    orange orange 2

For both of these examples, I pasted them into other apps like Haroopad or StackEdit and they rendered fine there.