Inspiration

The idea for this project came from the growing need for accessible and confidential healthcare services, particularly for STD testing. Many individuals hesitate to seek out testing due to the stigma surrounding it, or they struggle to find nearby facilities that offer these services. The goal of this project is to bridge that gap by providing a user-friendly, anonymous, and immediate way to find and contact STD testing centers.

What it does

The code is a PHP-based application designed to help users find nearby STD testing centers and receive the information via SMS. It prompts users to input their location (city, state, or ZIP code) and one or more phone numbers. Upon submission, the code uses the OpenStreetMap API to search for nearby testing centers related to the user's location. It then uses the Twilio API to send SMS messages containing the details of these centers to the provided phone numbers. The application displays a success or error message based on whether the SMS was successfully sent. This process

How we built it

The project was built using the following steps: Frontend Design: I started by creating a simple, user-friendly HTML interface where users could input their location and phone number(s). The form is designed to be minimalistic yet functional, with clear instructions. Backend Logic: Google Places API: When a user submits a location, the server queries the Google Places API to find STD testing centers nearby. The data is processed to extract relevant details such as the center name and address. Twilio SMS Integration: Once testing centers are found, an SMS is sent to the user’s phone number with the information. This involved securely sending requests to the Twilio API using PHP and handling any errors or failures.

Challenges we ran into

In this project, several challenges were encountered, particularly around integrating external APIs and handling security concerns. One major issue was managing sensitive information, such as Twilio credentials, which led to the GitHub push protection blocking the repository due to exposed secrets in commits. Another challenge was ensuring that the application correctly parsed data from the OpenStreetMap API and presented it in a user-friendly format, especially when dealing with inconsistent or incomplete data. Additionally, integrating Twilio’s messaging service required handling issues with API responses, such as failed SMS deliveries, and ensuring that messages were sent to multiple recipients without errors. Lastly, managing version control conflicts, particularly when attempting to push local commits to the remote repository while the remote had newer changes, required careful handling of rebase operations and stashing changes to avoid overwriting important updates.

Accomplishments that we're proud of

We are proud of successfully building a functional and user-friendly STD test center locator that integrates with both OpenStreetMap and Twilio’s messaging service. The application efficiently retrieves nearby testing centers based on the user’s location and sends SMS notifications to multiple recipients, ensuring they receive relevant health information in a timely manner. We also overcame significant challenges related to security, by removing sensitive credentials from the code to comply with GitHub's push protection system, safeguarding user privacy and preventing potential vulnerabilities. Additionally, we were able to handle complex version control issues, such as rebasing and merging, ensuring a smooth collaboration process and an up-to-date project on GitHub. The combination of technical functionality and security improvements makes this project a valuable achievement.

What we learned

Throughout this project, we learned valuable skills in integrating third-party APIs, such as OpenStreetMap and Twilio, to enhance the functionality of our application. We gained experience in managing sensitive information, especially in terms of securely handling and removing hardcoded credentials to comply with GitHub's security rules. Additionally, we became proficient in using Git for version control, tackling challenges like rebasing, merging, and resolving conflicts in a collaborative environment. The project also taught us how to build a user-friendly interface that effectively processes user input and delivers meaningful outputs, all while adhering to security best practices. Finally, we improved our debugging and problem-solving skills, ensuring the system worked as intended under various conditions.

What's next for Aware

Our next steps for Aware are to make it even more secure and regulated than already it is. This would be through implementing industry standards and ensuring we follow HIPPA guidelines.

Share this project:

Updates