Welcome to Penn Course Swap!


Penn Course Swap is a service that enables students to exchange courses with each other. We know it can be a hassle to get into all the courses you want. That's why we created Penn Course Swap -- a platform that connects you with students who have the course you want! Looking for people to swap classes with is currently both an inefficient and time consuming process. We offer an organized and easy-to-use platform that will help you find people to swap courses with and get the most out of your education.

Who we are

As a team of close friends, we came to PennApps with two clear aims in mind: to improve as developers and to address a simple but important issue in the process of doing so. After some time and brainstorming, we settled on Penn Course Swap! Penn Course Swap was an idea born out of the collective struggle that we all share as Penn Students, as many of us have less than ideal course schedules with limited avenues to change them. Penn Course Review would provide us with opportunities to take on courses that we are truly interested in, by pairing us with other students who wish to do the same. Penn Course Swap is able to elevate levels of satisfaction for Penn students, and eliminate inefficiencies with the existing course selection process. We truly believe that this idea is able to make a difference with little to no trade off, and we are proud to present Penn Course Swap at PennApps this year. Cheers!

What it does

After you create an account, simply list the courses that you want and the courses that you are willing to drop. Whenever someone offers up a course you want in exchange for a course you don't want, we'll notify you by email!

How we built it

We built this project using Flask, Python, Jinja2, HTML5, CSS, Bootstrap, and sqlite/SQLAlchemy. We originally intended to use ReactJs and Flask to maximize on our teams skills, but by Friday at around 1 am had realized this was not an ideal stack, and we could not circumvent all of the issues we were having. We decided to switch to Bootstrap, because of its ease of use for making professional-looking websites, as well as compatibility with the templating structure we settled on using with Flask and Jinja.

What we learned

Being new to web development, the learning for all of us took place in so many different areas. This was the first website we had built, and with it came trouble with getting things to align properly on the UI, and getting the backend SQL database to run correctly and efficiently. However, we believe we came out of it with a working product that could really serve a problem in need of a solution.

What's next for Penn Course Swap

We hope to add options for other ways users can choose to be notified (text, etc), as well as work on the security of our backend database and login operations. In addition, we hope to make our UI more intuitive and keep adding functionality based on user feedback.

Share this project: