Inspiration:

Biking accidents are a common occurrence on Boston University campus and around the city. Just 3 weeks ago, there was even a biking accident on St. Mary's St., causing a pedestrian to be injured. Additionally, construction can cause bike lanes to be unexpectedly closed without notice. To make the city safer for both pedestrians and bikers, we are making a new app that will direct safer routes for bikers.

What it does:

Based on current reports of blocked streets, accident reports, and status of bike lanes, recommends the best path for a biker, prioritizing avoiding construction and accident-prone areas over overall best time.

How we built it:

Our team utilized Kiro IDE to develop our product. Since our team was working in one repository, we found it useful to develop a write-up of a descriptive finished product before handing it off to Kiro to develop the first draft of the final product. This improved our development process because product specifications Compared to vibe coding, we prioritized different things. Building a layout of a final product before developing allowed us to spend more time on what the specific features we wanted to highlight in our product. Vibe coding would have had us spending more time on debugging. Additionally, Kiro allows you to develop through options, almost developing alongside you.

For workflows, we used Kiro to check through our data, filtering for the specific timeframe and bike lane obstruction, as it was more data than we could filter through on our own without Kiro. Additionally, we used it to build our app, which would have taken a lot more time to develop and debug all the parts needed to have the finished product.

Steering Kiro became more intuitive as we continued using it. As a general rule, the more specific we were with what we wanted, the better the result we were able to achieve. We leveraged this by laying out detailed aspects of our project before handing it over to Kiro.

Using Kiro’s extended capabilities, it was able to pull data as CSV files directly from sites, given the appropriate links, instead of having to pull and convert the data ourselves before giving it to Kiro, demonstrating a use case of MCP. Without this capability, we would have had to spend way longer on making sure we were able to give Kiro all of the data that we did.

Other benefits include Kiro having the ability and access to directly create, edit, and run files directly on our device and not having to copy and paste, allowing us to save time on bigger picture elements to the project.

Property-based testing helped us filter to get rid of non-valid data. This includes crash or obstruction reports that are false, reports that are outdated (now resolved), and data that is incomplete. Getting the live code reading using Vite and React was streamlined by using Kiro. We were able to have Kiro build the bulk of the website’s design, to automatically allow the website to be functional without hours of debugging.

We leveraged developing our project by giving Kiro big picture specifications about what the final product must include to be successful and accepted. Being as specific as possible allowed us to get the most use out of Kiro, as it could adapt to the thorough requirements we laid out for it. Although we did not use any third part tooling, we got a good exposure to the strength Kiro can provide for future projects.

Challenges we ran into:

We ran into a lot of issues in uploading our ouputs from Kiro to github.

Accomplishments that we're proud of:

We are proud that we learned how to use Kiro and use it to create a working product.

What we learned:

We learned about the functions of Kiro and how to use it to create useful solutions.

What's next for Safety Cycle:

We hope to improve Safety Cycle with updated data and live data in the future to further help bikers in the Boston area.

Built With

Share this project:

Updates

Submission history