Inspiration
the inspiration that came to me was when we read a news report based on the current economic situation for Canadians. For the last year over 800k people have been officially stated as homeless or less than lower class in the current day. Around when the tariff war started it also gave us a feeling of sonder on how people get effected by higher ups who do things for their selfish needs.
This Is why we wanted to create an app help Canadians find products that help them save money, avoid a tariff war and help Canadians learn and spread knowledge on how their economy operates. This will help save money for all Canadians which then in turn can be resituated into the economy through investments.
What it does
Tariff Shield helps Canadians understand how tariffs affect everyday products. Users can search by UPC or product name to see product details, tariff information, estimated price impact, and Canadian alternatives. It also includes views for import tariff rates and industries affected, making complex trade data easier to understand in one place.
How we built it
We built Tariff Shield with a Next.js frontend and an Express/TypeScript backend. The backend uses Prisma and seeded product and tariff data, along with scraper-generated datasets for tariff and alternative-product information. On the frontend, we created a search-based interface with tabs for product search, tariff rates, and industries affected, then connected those views to backend API endpoints.
Challenges we ran into
One of our biggest challenges was integration. Different parts of the project were built separately, so connecting the frontend, backend, and seeded data into one working demo took a lot of debugging. We also ran into issues with API wiring, environment configuration, error handling, and making sure the app could clearly distinguish between invalid input, missing products, and network or backend failures.
Accomplishments that we're proud of
One of our biggest challenges was integration. Different parts of the project were built separately, so connecting the frontend, backend, and seeded data into one working demo took a lot of debugging. We also ran into issues with API wiring, environment configuration, error handling, and making sure the app could clearly distinguish between invalid input, missing products, and network or backend failures.
What we learned
We learned how important integration planning is in a team project. Even when individual parts are working, bringing them together can reveal missing dependencies and design gaps. We also learned more about full-stack coordination, API design, error handling, and how to scope a hackathon project around a strong demo instead of trying to overbuild every feature.
What's next for Tariff-Shield
The next thing for Tariff shield is for us to incorporate way to people search only products through names which can help show people if the product is American or Canadian. That would help Canadians learn what products are made in Canada which would help the Canadian economy and help Canadian business. A second future incorporation we are thinking of is to add sections of which fast food restaurants, automobiles, and furniture that gets effected by trade import taxes, will help Canadian consumers to pick and choose items carefully.
Built With
- beautiful-soup
- canada.ca
- express.js
- next.js-14
- node.js
- open-food-facts-api
- pandas
- postgresql
- prisma
- python
- react
- supabase
- tailwind-css
- tariff
- upcitemdb-api
- vercel
Log in or sign up for Devpost to join the conversation.