We really need someone to work on our membership system. It’s built with Node.js and you can look at the source here: https://github.com/southlondonmakerspace/slm-site (and it’s various modules in other parallel repos)
Matt C and Tom L built this system, but neither of them have the time now to be full-time maintainers. As a result, it’s been unloved for ages now and it’s starting to show its rough edges. I know lots of us are programmers so there must be someone with the skills to take this on. You don’t have to jump in the deep end; Tom should be able to hold your hand through the basics
Things that need doing, in order of importance:
Welcome/confirmation emails
Discourse account integration (you can talk to discourse via its API)
Fix bugs in admin interface
Tool access control
Extra GoCardless charges eg. laser cutter use, pledge drives
With the caveat that I am very busy at work at the moment, I am happy to join forces with others to give this some thought. My Node.js is rusty though. Very Rusty.
I thought I would take a look at the existing system to see how it worked, so have cloned the various projects from github: https://github.com/southlondonmakerspace
I am new to Node so when trying to run server.js I am prompted to install various packages, which I have done. However I am unable to install the gocardless package - I get an error:
npm ERR! No compatible version found: gocardless@1.0.x
I have the latest stable version of node and npm and all other packages were installed today so I assume are up to date.
Has anyone else recently been able to clone the projects with no problems or have you any suggestions about what to do? Is this a known problem?
I had a quick look and got the same error, also when trying to run npm update with my year old (previously working) branch.
I’ve tried changing the version in package.json to “*” or “1.0.0-beta6” (which was the version that was getting installed anyway).
Still leaves lots of errors when updating and starting the server, but they’re not fatal. The server does start and I can see the site on http://localhost:8080/
Wonder if its the version of node we are running? Mine is v0.12.5
Poked this again tonight. Started a clean project and npm installed all the packages we use.
All work fine except for jugglingdb, in particular its mongodb adapter. Have opened an issue with the project but detect a general air of neglect around it (the projects home page is deceased; on its github page only 3 of 13 adapters are shown as passing the build tests with 4 failing and the balance unknown) My instinct is we should swop it out for the native node mongodb driver. Seems to me the principle of not having a hard dependency on a database is good. But if it introduces a new dependency on an unreliable project to provide the interface it is very very bad. We can write our own ORM layer to maintain a degree of indepence - but first lets just get it working so anyone who wants to help with it is at least able to get it running without a problem.
FYI: Update we’re working on a replacement system, however help is needed, the current system is failing badly, many people are not getting access to the space like @pip today