A game of guessing UK political party manifestos: manifestwho.com.
Manifestwho is a quiz about UK political manifestos. It's mainly supposed to be fun (for a niche, political kind of fun). It's also a little experiment into how well people can recognise messages from manifestos - we've got a suspicion it's quite hard.
Built in Python using Flask and a Postgres database. Deployed on Heroku at manifestwho.com. Contributions are very welcome (more details below).
EU Election 2019 Manifesto reference
European Election 2019 manifestos used to source quotations, in alphabetical order:
- Brexit party pledge card
- Change UK Charter for Remain
- Conservative Party did not produce one so not included
- Green Party Manifesto
- Labour Party Manifesto
- Liberal Democrat Manifesto
- UKIP Manifesto
Read more about manifesto inclusion choices in the FAQ.
Contributing to ManifestWho?
If you'd like to make a change or improvement via GitHub, you can fork the repository and make a pull request using these steps:
- Click 'fork' at the top of this repository
- Clone down your fork using
git clone https://github.com/YOUR-USERNAME/manifestwho
- Create a new branch with the name of the meetup you're adding
- Make your change
- Push your new branch and changes up to your fork of the repository
- Go to your branch in your repository on GitHub, and click the green 'New pull request' button on the left (making sure the base fork is set to JennyBrennan/manifestwho)
- If I've not got back to you about your PR in a resonable time, feel free to nudge me on Twitter @jennyhbren
- Create a web application with Python, Flask and PostgreSQL
- SQLAlchemy ORM tutorial for Python Developers
From within the manifestwho folder, start the virtual environment:
You'll need to set environment variables for
DATABASE_URL, either via the terminal or a .env file:
export APP_SETTINGS="config.DevelopmentConfig" export DATABASE_URL="postgresql://localhost/manifestwho"
Run the app:
A few things I'd like to tackle in the future (particularly before any future election):
- Update with new manifestos, come the next UK General Election (which could be at any time!) - possibly version it to allow people to still play the EU 2019 elections version.
- Automate testing - at the moment I'm manually testing the app as I chucked it up pretty quickly as a proof of concept; would be better to have tests that mock postgres and/or run end-to-end UI tests with Selenium or similar.
- Add web analytics to monitor where participants are based and where referrals are coming from (e.g. if all participants were in the US, then the data won't tell us much about UK public understanding).
- Consider additional voluntary data collection at the end e.g. voting intention. Look into the best ways of phrasing these from existing research.
- A sharing/social media plan to get the word out and increase participation.
- Design a swanky logo and add favicon.
There's also likely a bunch of general tidying/improvement that could be done in the code - I'm new to this stack (beyond teaching the Code First Girls Python Course) and picked it as a quick learning opportunity, so suggestions welcome!