Inspiration

There are many people who cannot afford to buy Christmas presents to share with their loved ones each year. For our project, we were inspired by this problem to help the less fortunate.

What it does

Our website, Cipher Santa, allows citizens who want to donate this holiday season to connect with local homeless shelters to give a present to a person in need. While anyone can do this remotely, our website allows for the gift to be more personal with an option to customize a wish list, budget, and location-specific shelter. This allows people in homeless shelters to have a fun, personalized, Secret Santa based game, or as we call it: a “Cipher Santa”. When you log onto our site, you can access two links, based on your need. If you want to donate to a homeless shelter near you, click the button saying “I want to donate”. If you are a homeless shelter coordinator, click the link called “I am seeking donations”, to sign up as many people in your homeless shelter who want to receive a present from their "Cipher Santa". If you are a donor, our server will then connect you with a person in need, and will provide a wish list of things that the person may want, and donors can buy a present according to that person’s wish list.

How we built it

We built our website with the mission of connecting donors to a local homeless shelter to find the most convenient way of donation. Our website uses multiple languages such as Python, CSS, HTML, and some JavaScript. We make both homeless shelters and donors enter their ZIP code. Donors submit their budget, and for homeless shelters submit the price per toy. We utilize Google Sheets API to organize the data into groups based on ZIP code and budget. Then, we use Python to make random selections out of the smaller groups to randomly assign the donor with a child, giving the donor the child’s wishlist, age, and name. For the front-end, we used CSS to add aesthetic value to our website, making it more pleasing to look at.

Challenges we ran into

We ran into some problems with the coding process. For example, we needed a way to pull the data from a google form, into a spreadsheet, and into our code to filter our data into smaller groups, in which we could randomly assign a person with the same zip code and budget. However, we had no way to do that, so we had to learn how to use Google Sheets API in order to pull data from the form. We also ran into problems with aligning buttons in the front-end. We realized that alignment happens in HTML and not CSS and we were able to figure it out.

Accomplishments that we're proud of

We’re proud of our final product and execution. We were able to successfully make and code a website in under 24 hours, and we were able to work together well.

What we learned

We learned how to use Google API, how to pull data, and how to style and create a website. We also learned time-management, teamwork, cooperation, and persistence, even when things didn’t go as planned.

What's next for Cipher Santa

We believe that we can improve our website, and actually implement our idea into the real world. We also hope to implement this concept year-round, rather than only during the holidays. We want to give back to our community and believe that Cipher Santa is a targeted, efficient, and wholesome way of doing so.

Built With

Share this project:

Updates