# p5.js Showcase

For my Google Summer of Code 2019 project, I worked with my mentor Kate Hollenbach to curate new examples of work by the online and offline p5.js community and create a place for them on the [p5.js website](https://p5js.org/). This involved creating new `/showcase` and `/showcase/featuring` pages to highlight creative and inclusive ways people have been engaging with p5.js (including but not limited to: making art and design, learning and teaching code, improving and translating documentation, accessibility, integrating other libraries and devices, contributing to open source). We also established an open nomination process for people to submit or nominate work to be featured, especially educators and students when the school year starts. We are continuing to discuss how to update the pages periodically.

## Contributions
In summary:
- Created a main `/showcase` page on p5js.org via a [“showcase” branch](https://github.com/kangashley/p5.js-website/tree/showcase) in a fork of p5.js-website repo and subpages for each featured project under `/showcase/featuring`
- Updated side navigation to include link to showcase
- Identified potential 60+ creators to feature; created a database of their p5.js and Processing projects using Airtable; recognized various categories for how p5.js is used
- Made decisions on design and development direction using wireframes in [Figma](https://www.figma.com/file/WkRoMv5Nf9yzzzwY7cz2JbbR/p5.js-Showcase?node-id=0%3A1), then an HTML/CSS/JavaScript prototype in [Codepen](https://codepen.io/kangashley/pen/RXGKyX)
- Established a process for nominating p5.js projects by designing a [Nomination Form](https://forms.gle/tukmUDqzLUwckjAVA) with appropriate questions
- Reached out to the creators of 9 projects based on how they used p5.js to explore interesting concepts and contexts for art and design, with other technologies, and/or various learning/teaching methodologies; received interviews about 6 projects
- Edited interviews for length and clarity
- Raised accessibility (a11y) concerns that implicate the rest of the website (color contrast, page structure, link styles, visually hidden headings)
- Created a [template](https://gist.github.com/kangashley/ac5499997a6b06f8a0954f0d572e9cf4) for created a page for a p5.js Showcase featured project
- Initiated a [code review](https://github.com/processing/p5.js-website/pull/488) of implementations based on accessibility recommendations from the p5.js Website Audit, done at the p5.js Contributors’ Conference

## Acknowledgements
Even before I was accepted to participate in GSoC, my journey as a technologist has been shaped by so many affiliated with the Processing Foundation. My first programming class was actually the undergrad section of Intro to Computational Media at NYU, where Dan O (and Dan Shiffman) taught us Processing and Arduino! Processing Community Day in Los Angeles back in January 2019 inspired me to go for this particular opportunity of working on a showcase to celebrate a community like p5.js. Thanks to Saber Khan and Evelyn Masso for their feedback on my proposal. Thanks to Kate Hollenbach for her support, availability, and understanding throughout this summer. Thanks to the NYU ITP students and campers back in June for expanding what I think is possible with p5.js and beyond. Thanks to Lauren McCarthy, Claire Kearney-Volpe, and Sina Bahram for your feedback. And of course, thanks to those who let me feature their projects with much enthusiasm and generosity—Roni Cantor, Phuong Ngo, Dae In Chung, Qianqian Ye, Casey Conchinha, Louise Lessél, Moon Jang, and Xin Xin.
