There is no existing API for achievements of women in STEM, and websites celebrating women in STEM is decentralized and hard to come by. We want to create an API and website that appeals the general public and educate people about the incredible contributions women in STEM has made in history and continutes to make right now.

What it does

The women in STEM API enables request to query results by name, date, date range and STEM category. It supplies the name, profile, biography, achievement categories, as well as extra links to learn more about a given women. Future web developers can then use the API to make more software strengthening the presence of women in STEM! Our women in STEM website displays achievements by women made on the date and enables searches for more results.

How we built it

We stored all our data in Firestore and connect that with our Flask API. We then built the frontend in React and serve it with our API. We also plan to deploy our API to Google Cloud

Challenges we ran into

  • no import features to turn csv file into Firestore data
  • yaml configuration for Google Cloud Deploy
  • styling the carousel component on the frontend

Accomplishments that we're proud of

  • The API is up and running!
  • the frontend detail page has the response content layed out nicely

What we learned

  • how to build an API from scratch
  • managing packages and dependencies
  • how to use Firebase
  • UI prototyping

What's next for Women in Stem API and Website

Currently there is no dropdown navigation and search functionality on the frontend, but we can implement that and add the appropriate requests to fetch result from the API. We can also add the ability to render the list of results nicely on the screen. We didn't end up figuring out how to deploy our API to Google Cloud but we can figure out how it works. The styling for the carousel component is off, it can help to implement our own components making the styling easier to control. We plan to expand the amount of data in Firestone.

Share this project: