We built our own system at Teesside Hackspace. It’s a bit hacked together at the moment, so not on Github yet, but the cliff notes:
- Gocardless
- NodeJS
- Database uses AWS DynamoDB (free tier)
- API runs on AWS Lambda (free tier)
- Auth uses Auth0
- Sends emails using AWS SES
- Listens to Gocardless webhooks and updates membership status
- Stores RFID data for access control
- Headless API with a separate front-end app integrated in website
Things we (I) like about it:
- Small codebase
- Costs nothing except Gocardless fees
- We have lots of JS experience
- Super easy to deploy
Things we (I) don’t like so much:
- DynamoDB - would probably better off with something SQL based
- Auth0 is a bit clunky and feels like overkill
- Not much automated testing
- If I wrote it again (which I was planning to but might wait and see if we arrive at a consensus here) I’d probably use Typescript (+Nest.js?) rather than vanilla JS
- Decoupled architecture can lead to bugs, inaccessible to users without JS
- Gocardless abandoned their JS library for some reason