I applaud the philisophy, and wanted to make just one comment – there is difference in increasing complexity (intorducing more concepts, adding new interface elements etc.) and increasing power.
Basically there are companies that reduce second in order to reduce first (think Apple) and ones that increase complexity in order to increase power (countless niche targeted developers).
(And of course they both are wrong approaches, as you already know).
But people tend to overlook flexibility, meaning possibility to do something more advanced when they will need that – and after some time, most people will need that, because people using any software will get to know it, get experienced with it, and find something they are lacking.
For me Gingko appeals, because it’s super simple, and while also ultra-limiting for advanced users, you’ve made one of the best choices how to allow unlimited power – you provided API. So while it is almost impossible to do anything really useful (other than outlining and writing), I can quickly adjust it’s functionality by performing operations on json export and reimport.
And it’s really shame that it’s lacking some rudimentary shortcuts or interface to simplify that, such as possibility to perform any operations on selected node (get ID for example, assign tags/group/type [name isn’t important], change export or viewing options, share etc.) or to select multiple nodes (in order to perform the same operations).
People will usually want do tweak only very little (change look or behaviour or only one or two types of elements), and after doing some tweaks in the tree they will most likely not touch this option again.
But these personalized “small tweaks” will make hugest difference for them. Different tweaks for every person (and often for different types of projects they will do).
So what my advice would be, is to:
give possibility to do these tweaks (clear API and documentation for data operation, importing and exporting, editing and presenting data).
give people possibility to share this tweaks.
Think about how powerful are modern browsers – in reality they aren’t doing much more than they did 20 years ago; but they allow for plugins and extensions, and that’s why you can work with every new technology.
(Or even simply ask yourself why you build Gingko as a web application (I could bet money that it was because it was possible because of technologies and tools that made it possible to write only the features you wanted/needed [your great interface], using only simplest and easiest to use solutions that allowed that – markdown for text formating, json for api communication, external tool for file uploading, probably some simplest database solution needed to store data in, some simplest to use cloud hosting etc.).
You already have created templates for many types of projects, but what people need is always possibility to create their own “templates” (and by template I understand here actions possible to do, behaviour and appearance of elements that will allow them to use your application in a way THEY want).
Bottom line is that you need to think about Gingko more in terms of unique framework for creating (== tweaking, customizing and personalizing) their own versions of the app, and not one tool that allows to do everything in theory, but if it will not grow organically with user base (and their contributions in making it better to suit millions of people in their dozens of millions different applications), it will be overtaken by some open source or corporate alternative, that – because tweaked by millions – will better fit their needs.
You have great, simple foundation, and you shall do anything possible to allow for people to build what they want on those foundations (by increasing flexibility), and they will increase it’s power beyond what you can imagine. But if you will try to build perfect tool for everyone, then you will never be able to become a standard.
(Long story short, build an ecosystem, no single tool without possibility to adjust it for the task, will ever be universal).