They say I'm savin' my city, say I'm stayin' for good
They screamin' "Chano for Mayor," I'm thinkin' maybe I should
We want Chance the Rapper to run for Mayor of Chicago in 2019. He doesn't seem to have any intention of doing it. So, we did what any group of concerned citizens would do: we made a website to encourage him to run.
We want a mayor who will fight for public education. We want a mayor who will reinvest in black and brown communities on the South and West Sides. We want a mayor who will address our epidemic of gun violence without the brutality of police or prisons. We want a mayor who will let the young people of Chicago lead.
We want a mayor like Chance.
If you like this site, you might also like our Twitter bot @Chano4Mayor2k19 that makes memes about #chano4mayor.
To see that code or steal it for your own mischief, head on over to its repo.
Developer information (for the nerds)
The following instructions will help you use our code to either a) suggest changes to this site or b) draft your own favorite rapper to run for office.
Before you start
We used the following open source tools to build this site. You should install them on your computer using your favorite package manager before getting started:
- Although grunt is included in the
package.jsonit's recommended to install it globally with
npm install -g grunt
- Although grunt is included in the
- SASS - CSS with superpowers
Start by cloning our repo:
# Assumes SSH - use the HTTPS link instead if you like it like that git clone email@example.com:jeancochrane/chano4mayor.git
Next, change into the directory and install dependencies with npm:
cd chano4mayor npm install
Use Grunt to compile and minify JS/CSS while you work:
Finally, open up the page in your favorite browser to view your work:
# Mac users: open index.html # Linux aficionados: xdg-open index.html
If like you can use the LiveReload plugin for developing sites, Grunt will automatically start that for you, too.
This is a pretty simple static site, so most of the action happens in
index.html. As you write code, Grunt will work its magic to produce minified files that live in the topmost level of the repo. Add JS to the
src/js/ directory and it will be concatenated and minified automatically; edit styles in
src/scss/styles.scss and Grunt will compile to CSS, prefix, and minify for you (don't edit
Here's an overview of the important files in the directory:
chano4mayor/ ├── index.html ├── src │ ├── js │ │ ├── jquery-accessible-hide-show-aria.js │ │ ├── refs.js │ │ └── tweetcount.js │ └── scss │ ├── styles-unprefixed.css │ ├── styles-unprefixed.css.map │ └── styles.scss ├── styles.min.css ├── styles.min.css.map ├── scripts.min.js └── images ├── chano_hat.svg ├── favicon │ └── chano_four.png ├── illustrations │ ├── chano1.png │ ├── chano10.png │ ├── chano4.png │ ├── chano5.png │ ├── chano8.png │ └── chano9.png ├── sparkles.png ├── triangle.svg └── twitter_white.svg
The best way to suggest changes is to follow these steps:
- Fork the project
- Make a new feature branch for your changes so we can merge them easily
- Make your feature addition or bug fix
- Open a pull request with a description of your work
Before making pulls, make sure to use Grunt to build your code for distribution:
This will automatically generate a bunch of necessary files.
Always follow the coding style you see in the files. Some general principles are:
- Use logical indentation. If the file is indented with 4 spaces, use 4 spaces; if it's indented with tabs, use tabs.
- Always aim for clarity, and leave a comment any time you do something clever.
- Keep it accessible! Images should always have alt text, never indicate information with color alone, add title attributes to links, and make sure the color contrast ratios are at least up to AA standards. Use this checklist for reference.
You have these fine folks to blame for this mess:
Opinions about #chano4mayor are entirely our own, and have nothing to do with the views of our employers, parents, or childhood mentors.
We used the following open source tools to build this site, and they made our lives so much easier:
- JQuery - The world's most ubiquitious DOM manipulator
- JQuery Accessible Hide/Show Using ARIA - Accessible JS is crucial!
- Sass - Syntactically-awesome stylesheets
Many thanks to the developers on these projects for enabling our mischief.
Technically released under the MIT License. Do what you will!