Coursepack is a community-powered collection of learning materials. Students anywhere in the world can ask for help with a topic they're struggling with. Teachers around the world can create and share lessons to teach that topic. It's a learning platform that gives students the help they need, when they need it.
Over 30 of the top professors in Canada, from some of the best schools in the world like McGill University, University of Toronto, and University of Waterloo signed up to contribute lessons on Coursepack.
One of the most important parts of Coursepack was the editor that teachers could use to create lessons. In addition to writing formatted text and posting links, I wanted teachers to be able to upload videos inline with the rest of their lesson. To do that, I extended an open source WYZIWIG editor, and added a feature to transcode videos and then upload them to Amazon S3. As soon as the video was uploaded, I extracted an image from the video, and showed it on the page in the place where the video would appear once the teacher submitted their lesson.
Another crucial part of learning on Coursepack was enabling students to search for lessons that they needed help with. If a student couldn't find a lesson, they could add the lesson themselves. I used Solr to power our search engine. It allowed me to use prefix indexing to provide autocomplete, as well real-time indexing to avoid overlapping lessons.