After having given a dozen of tutorials on FireWorks I have found that one thing that makes the quick start slow is the installation and setup of MongoDB server. The official quick-start guide says it takes five minutes - I agree, after setting up mongodb database and configure fireworks (launchpad file).
What do you think about using an embedded database, a surrogate for MongoDB, for quick-start guides and tutorials? IMHO such a configuration option would be sufficient for the most tutorials (without queuing system and clusters). Examples of such embedded databases: tynymongo, mongitaDB, montyDB.
This would be great! When we first started FireWorks, it was indeed five minutes as MongoDB was much easier to get started with. Nowadays, it is much more complicated after MongoDB Atlas which tries to enforce scalable behavior from the get-go, but increases the activation energy for getting started.
I had always anticipated that someone could make a sqllite equivalent to MongoDB that could be used for offline work or for test purposes for FireWorks. However, after looking until about the year 2018 there didn’t seem to be much there.
It’s great to here there may now be offline alternatives to MongoDB. I think this is a great idea, but regrettably don’t have the bandwidth to work on it. However, if you’d like to take a crack at it and there is support you need from my group (including rapid review of PRs, etc.) just let me know as I’d very much like to see this happen as well.
thanks a lot for your reply! This is great that you support this idea and prioritize the PR review! Currently, we are evaluating several embedded databases for possible use with FireWorks. As a drop of bitterness, we do not expect that any embedded database package implements all the variety of pymongo functionality needed in FireWorks. We might end up in a “FireWorks light” for this use case or alternatively commit us to extending the most suitable embedded database package. But let us see.
We are working on it. I will post here later on about the progress.
Great to hear you are working on it. Should you need any support from our side please do not hesitate to reach out, as mentioned we really want to see this happen and can commit some resources to push things along as needed.