TimeFrame: Capturing Your Journey Frame by Frame

Inspiration

The idea for TimeFrame came from a desire to track personal growth in a meaningful, visual way. Whether it's physical transformation, aging, or capturing everyday moments, we wanted to create a tool that would make it easier to reflect on the passage of time. Often, people forget to take photos consistently, and the few they do capture are difficult to organize. This inspired us to build an app that not only automates the process of taking consistent photos but also creates a seamless compilation of how someone changes over time.

What we Learned

Building TimeFrame taught us how to use Defang and TaiPy. We got familiar with OpenCV and Python. We spent a lot of time trying to come up with something we thought was cool and would be a real useful product that people would pay for. We can see our product with a little bit more work being something that we could actually market and sell to customers and solve a real problem. We think that having a tool to measure progress in a more streamlined way could enable people to be more motivated and reflective in their personal lives and journeys.

How we Built the Project

  1. Planning: We started with diagrams and mockups to visualize how users would interact with the app and what the stack would be. The focus was on simplicity and user-friendliness.
  2. Development: Using frameworks like Flask for cross-platform compatibility, we built the app's core functionality. The camera system was the centerpiece, allowing users to align their photos automatically. We had to figure out how to source and integrate all the hardware as well.
  3. Consistency: We designed our solution to give you repeatable, well-lit and consistent photos so you can focus on the most important change, how you as a person have changed.
  4. Stitching Tool: The app includes a feature to automatically organize and compile photos into a video, highlighting changes over a chosen time span.

Challenges we Faced

  1. Integrating Taipy as an iframe into a vanilla html/css website took quite a while as we had to find a way to run the Taipy server and our website’s flask server concurrently. We were able to overcome this by running each of them as individual threads and with different ports on a single python script.
  2. While using Defang we ended up running into several dependency issues due to a mismatch between the supported version of flask and the version of flask we needed to use. Unfortunately we ran out of time to resolve the issue and deploy.

Overall, the journey of building TimeFrame was both challenging and rewarding. It gave me the chance to learn new technical skills while creating a product that has the potential to make a meaningful impact on people’s lives.

Built With

Share this project:

Updates