I applaud your commitment to the community - thank you for all your work! I would be happy to help out if I can. I have several years of experience setting up and maintaining servers for startup companies. In general, I am pretty good at finding a way to run a server without it costing a lot and also ensuring it is secure and reliable.
Below I describe how I am hosting ours right now, but I guess the immediate issue is moving the existing server somewhere else. Rails apps are usually pretty easy to move, copy files/db, update the DNS and you are done. Setting up a hardened server with a database is pretty easy, just a few hours work. I don’t know the load, but I imagine a 2GB server could be sufficient - that costs about $10 USD/month. the cost of a domain name is ~20/year. But of course, I am on the other side of the world - most of the coops are in Europe.
Does Benjamin want to hand over the foodcoops.net domain name - that would make moving it simpler and perhaps seamless to existing coop users.
I suspect the most time consuming aspect will be user support or handling any customisation or setup/configuration. As a user, being able to get instant support is pretty critical. But as a volunteer, there is also a limit to my availability. I’ve already spent too much time to make it work for my own coop, but I do get satisfaction from building software that saves our coop effort every week.
There is other coop software that is managed and charges 1-2% per order, for our small (<20 family) coop, 2% could end up costing $2000 (on $100,000) for the year, probably more. I don’t think this cost is unreasonable if you want software that is well supported, maintained, and so on. At the end of the day, we all have to eat and have only so much free time. If you want software to improve, you usually have to support it one way or another.
How many coops and how many users are involved? What do they currently pay for support? Would any be willing to help support other coops as a condition of hosting? I suspect there will be some language barriers for support. Will you be volunteering at no cost to support these coops? Will they send you chocolates, cheese and other treats?
Perhaps a two-tier model of ‘free and community’ support and a ‘paid support’ idea would work? I don’t know. I do know that it is hard but very important to find a sustainable way to support any project. Volunteer work is inherently unreliable in the long run.
I am currently running our installation on Heroku. It is working reasonably well now. Our coop use easily fits in the free plan for Heroku.
With Heroku, our only sever cost will be to host the database. I often will use my own database server with many low volume web apps. When the app is efficient with queries or if it is in the same datacenter as Heroku this setup works very well.
Unfortunately, the foodsoft app is not very efficient with database queries - so any delay in the database connection really slows things down. Right now, I am using Heroku’s DB (the free plan) but it will cost $9/month once I hit the 10,000 row limit - or I use my own DB server. I have optimised quite a few queries (and will make PRs) but it is still not very efficient. I am proud to say I got the supplier sync working in a few seconds, down from several minutes, when syncing ~800 products.
One limitation of Heroku is there is no persistent file system, so file uploads do not work. I considered converting foodsoft to use paperclip, which would allow using S3 for file storage, but I have been more concerned with other aspects of our coop.
In terms of documentation, I agree that the project is sorely lacking in user documentation. I would actually like to see more inline documentation rather than a manual. That is the UI should be clear and help available directly on the page that you are using. I have made a few tutorials with many screen shots for our coop using google docs.