As for this question, this makes for a much bigger discussion than your other thoughts/questions/comments. First of all, let's note that I'm not officially speaking for DerbyJS or the Lever organization in any way. I've been following DerbyJS closely though since it's public inception a couple years ago.
So, for your question, let's divide it into some separate topics:
1) What frameworks and libraries should I use for my project?
Obviously, this depends on your project and the needs of your project. Let's not worry about that for a moment, that's after all something I don't know anything about. If we don't worry about that, let's first consider two time horizons; Current status and how future proof your choice is. For each horizon, we have our needs met by the amount of features we're given by the library/framework, the stability/quality of the code, how accessible it is to learn and use the code (i.e. through documentation, tutorials in the community, etc.), how easy it is to extend the code yourself for those parts that are missing, and how much third party plugins you can find. All of these factors comes from the quality of the core development team, the community, and how they interact, so let's go through each part and take a look.
As for the core team, the vast majority of effort made to Derby is now in the hands of Nate from Lever (one of the original creators). My very personal opinion is that he has a lot of history that points to him making smart decisions about the direction of the framework. The downside is that he is only one man, and that his time (that he puts into Derby) seems to be quite limited (which is not a big surprise given he's the CTO of Lever and probably has a lot of other things to constantly worry about). At times, some additions have been made by others, most often part of the Lever team (Brian originally then Joseph, and so on). No major contributor seems to be around no more except for Nate though. In addition to Nate, it seems people from the Lever team occasionally makes contributions. Zeus has been a little bit active and done some minor parts lately for example. All in all, Nate controls the project more or less with an iron fist (if I may use that expression), which means he control everything that goes into the Derby-stack (i.e. Derby and all it's related modules such as Racer, Share, Tracks, and others). Speaking purely based upon my historic experience, there are very few PRs getting pulled in. Not even PRs made from people on the Lever team seems to make it in any kind of timely fashion (e.g.
https://github.com/derbyjs/derby/pull/521 ). I've tried a couple of times myself with no success (one PR was so old when it was reviewed that it had become so difficult to review that it was closed instead...). This is a little bit worrying, because that limits the progress of Derby to basically Nate. My, again very personal, opinion is that Derby is too big of a project for one man. I'd argue this is also obvious from how new, cool and innovative Derby was when it was first released. Since, development has been too slow so now other frameworks have caught up for most parts. For example, server-side rendering (i.e. universal rendering) is more or less a part of every respectable framework out there. Derby had this even before React (at least publicly) existed!
For the community, it is my take that the above hinder has limited the growth of the community, and I fear we've passed the peak level of interest in Derby. In particular the frontend part of Derby is becoming more and more irrelevant with React (and it's accompanying ecosystem), Angular 2, Embers modernization, etcetera. For features, Share, and also Racer, is still rather innovative compared to what's out there. The only framework which is on a similar level when it comes to dealing with the Model-part of your app is in my opinion Meteor. Other libraries that takes care of some stuff exists, like Swarm, PouchDB - but nothing that takes such a complete responsibility for your data (some services also exist such as Firebase [by Google] and recently shut down Parse [by FB]). There are still though quite some features missing in the Racer/Share stack to make them complete (again, in my opinion). The ease of use is not optimal, such as your issues with derby-login/sharedb-access - I believe such significant pieces should be easier to hook on to your stack - or such as how to do validation and easily build a larger model layer. I tried to tackle some of those issues by creating a couple of libraries, e.g. derby-validator, derby-ar and derby-view, but far more can be done in my opinion.
Then, there's also some "bugs" (or minor unexpected features missing - whichever way you see it) which considering the above, will probably not get handled any time soon. Furthermore, tooling around Derby is limited, and will probably remain limited, also consider the above.
So, to summerize my very personal thoughts and opinions;
- Derby is a too project for such governance as is currently.
- I see no change in governance happening anytime soon - thus, I believe Derby will eventually die off.
- The pieces which have most value today is Racer/ShareDB. These are the pieces I'd look at if I wanted to use anything that I'd want to be able to maintain something for a while. These pieces also seem to be where Nate is putting most attention (has been the last 1-2 years, if not more).
Regarding Racer/ShareDB vs alternatives. ShareDB seems to be the major realtime Operational Transformation library out there currently. Racer is a nice add-on, but the value of Racer without Share is limited. If you need OT then Share seems to be a good option, considering there are no better alternatives and then any help you'd get from Nate/Lever/community is welcome since the alternative is to maintain something completely yourself anyway. One major drawback of Share/Racer is the non-existing offline support. If you need that feature, you'd have to develop it yourself.
Which basically is what the guys behind Amelisa did (there are more people interested in Amelisa than meets the eye). They've probably been the most active bunch of people in the Derby community throughout it's history. The reason why Amelisa went with CRDT is because of offline - it's (from what I understand/heard) much easier to do offline with it.
If you use any of these libraries (Amelisa or Racer/ShareDB) without Derby you'd need to use it with some other frontend framework. The only reason this is not super simple is because you'd want to somehow be able to load all data from your backend service before rendering server side (and arguably also between page renderings client side). Most frameworks today aren't built to support that (e.g. React/Angular2). You'd also need to write some glue code to get everything up and running (like what droganov did with React) - it's a little bit cumbersome but probably more manageable. The "load-all-data-before-you-do-actual-rendering"-problem is a relatively known problem and I know some people are thinking of how to solve it, but it's still quite unsolved, and I've yet to see any attempt which looks like it will be the way that gets established as the main way to solve that problem.
In my personal opinion, I really like what the Angular team is doing with Angular2. Some people prefer React. Both have huge communities and will evolve and so forth - both seems to be safe bets. That doesn't cover the Model part of you application though. I personally like what the Amelisa guys are doing (and I prefer the responsiveness and mentality of those guys - they seem much more open to contributions for example). Both Racer/Share and Amelisa is though very small communities, which makes them rather unreliable. Meteor has gathered a much larger community and seems be a much more reliable project. It does lack any advanced conflict resolution though, which makes it questionable for offline/sync-later stuff and it doesn't seem like this is a priority for them. They also have some quirks like their own package manager, questionable motives (after all, they want to make money on people using their framework), etcetera. Same goes with services such as Firebase - there's no advanced conflict resolution AFAIK.
So, what should you do? If you want to dig in to using ShareDB with React, you should probably be aware of that you'd most likely have to do quite a lot of the work to make it work yourself. Thus, I'd not expect any significant support from the community (again, consider the above stagnancy of the Derby community as well as project). Then again, it all depends on your needs for your specific project. If you want something fast up and running which you don't think you'll have to update later on, Derby works fine (at least AFAIK and to my experience with it). If you need something future-proof and you don't really need any fancy conflict resolution algoritm (or offline support), then why not use Meteor? If you need offline support, then I'd look into Amelisa or PouchDB (or Mongo). If you need OT, then I'd look into ShareDB/Racer with React/Angular/something other for the frontend - if you have the resources to support maintaining the glue code.
Some rambling from me. This type of question occasionally pops up so I thought it be good to answer it properly so that one can point people here.
Again, all of this is just my own opinion. I love the work that Nate and others have put into Derby throughout the years - it's been a fun ride! I hope I wasn't too negative about the outlook of Derby!
Cheers,