Skip to content

Developer Information

Jeremy White edited this page Aug 6, 2014 · 18 revisions

What's All This?

We are the team of tech volunteers who build and maintain the MayDayPAC's website, We could use your help!

Great! How do I help?

We've got a page for new recruits set up right here.

What's your development workflow?

That's something we're still figuring out, but we're currently using the built-in issue tracker in GitHub.

How do commits happen?

It's fairly standard and informal. A few of us have direct commit access, and will check in low-risk things by ourselves. The ideal is that any change be reviewed by a minimum of two people. Larger projects should be on topic branches and get a code review from aaronlifshin, jwhite, bpitcher, or jtolds.

For people without commit access, fork the repository and send a pull request with your change. Someone will do a code review on it soon (and if they don't feel free to pester). If you're submitting a lot and it makes sense to grant direct commit access, we'll do that.

Fewer still have production access for security reasons. If you've submitted a change and need a push, mention it on the code review, or on the mailing list. There is a "dev" environment for the app engine app that we're more lax on the ACL for, but it's shared between everyone, so we don't want too many people stomping on each other's changes.

Can you give me an overview?

The project has a few different components, stored in different repositories.

Root website

This is what you see when you go to Just static HTML, CSS, JavaScript, etc., stored as a Jekyll project to keep ourselves DRY, and to allow ease of editing.

The code for this lives in

This is a Google App Engine app accessible via It's where contributors fill out the form, and it stores their pledges.

The code for this lives in

Note that only the handlers in backend/*.py and markup/pledge.jade are in active use; most of the content in markup/*.jade is not used (and is from an aborted attempt to move the whole site to GAE).

This app need to be built with grunt After pulling the repo, run

npm install

and then

grunt local

This is another GAE app that is responsible for managing logins If installing locally, this app requires a secrets file to be updated Unlike the, it does not use npm/grunt The code for this lives in

This GAE app is responsible for allowing users to manage their own area of SuperPAC site The code for this lives in This app does not use npm/grunt.

Other tools/features

Check out our overarching design doc My SuperPAC design doc and Team Page Service Mockups

You can’t perform that action at this time.