Hey Jesse,
Since I responded originally, we've launched our node-based app (more specifically Meteor.js), and have been using it this season with few problems. Now that Meteor 1.2 is out, I'm going to be rewriting it to use React.js, and add a few additional features.
Providing ongoing support always needs to be considered, so I'm thinking of following Freehub's model with the next version and providing a hosted version of the app. It would be much better if there were more than 1 dev on the project, so if anyone has an interest in Meteor, please get in touch! Depending on 1 random internet guy to keep your shop system running seems like a bad idea...
I can probably set up a demo if folks are interested in playing with the current version.
Current Features
Records
-Visitor records including name, waiver acceptance, and equity credit.
- Timelogs (sign-in / sign-out) which can be volunteering (generates an equity credit transaction), stand time (generates a cash or equity debit transaction), or other activities that don't generate transactions
- Transactions (either equity or cash). Cash transactions just create a notification so the cashier knows how much to charge in our Square (technically, there is a way to hand it off straight to Square, but we want to keep Square's reporting for now). Equity transactions add or subtract from the visitor's balance.
Login / Logout Kiosk
A screen that visitors use to sign in and out, and say what they're doing in the shop. Also replaces our paper registration/waiver.
Shop Dashboard
For the front desk worker. Shows who is volunteering, who is on stand time, etc. Also shows today's recent sign-outs. Provides access to create equity transactions (e.g. purchasing parts on equity), notices about cash transactions to run, as well as access to browse all people, timelogs, or transactions.
New Features (for the next version)
Bikes
For bikes in our workflow. This will help us track which bikes aren't selling or getting fixed, and let customers browse bikes without needing to make it to our limited open shop hours. It will also give us some nice metrics on how well we're processing bikes.
Shifts
Schedule shifts, and link all timelogs to the shift in which they occur. This will let us set which activities are permitted depending on the kind of shift (e.g. self-signin volunteering only on volunteer night; free stand-time on women's night, etc). This will automatically generate a shift report that we put together manually right now (volunteers, attendance, etc).
Inventory
Put our parts prices into the system to make adding up a equity purchase easier, as well as give us a full picture of what parts are in highest demand (right now we only know which parts are purchased with $ through Square).
Nice-to-haves
- Better reporting, for things like volunteer retention and recruitment. I want to get a notice when someone volunteers for the first time, or hits a certain milestone of volunteering.
- Purchase requests: stuff we need to buy, either for a specific bike, or just general consumables.
- Print-outs for bikes (holds, purchase waivers, evaluations, etc).