Inspiration
We noticed that, in today's fast-paced and polarized world, many lack a comprehensive understanding of our global history, especially the regions outside of the U.S. and Europe. The past is not just a collection of dates and events; it's a vital foundation that shapes our present and future. Inspired by this gap in knowledge, Time Tapestry aims to bridge it by offering a platform where users can explore the intricate threads of history. We hope that a deeper understanding of our world can help to educate people and facilitate productive discussions instead of arguments and talking points.
What it does
Time Tapestry allows users to select a region, time period, and level of complexity, and generates information summarizing the events and impacts of said time period in the region. The choice of complexity level allows the user to receive an explanation tailored to their prior knowledge, making this tool accessible to those lacking a strong background on history.
How we built it
We used a HTML/Javascript/CSS front end; the globe was created using globe.gl, a UI component for globe data visualization wrapping ThreeJS/WebGL. We also used a Flask framework with python and integrated the OpenAI API to create the summaries from Wikipedia.
Challenges we ran into
One of the main challenges was figuring out the best way to train the GPT model (ex. finding sources with detailed information across time periods, prompt engineering for the best output)
Accomplishments that we're proud of
We are proud of being able to create a visually pleasing UI that is also functional. We also didn't know how we would integrate the GPT API going into this project so we were proud to have learned about that.
What we learned
We learned how to integrate an LLM into a Flask application, and also learned how to work with some 3D javascript tools.
What's next for Time Tapestry
Find a better database for sourcing information about regions during specific time periods. Ideally, we would want as much information as possible on smaller time frames (1-10 year periods instead of 50-100). It could also be interesting to adapt the app to VR, where users can be immersed in a region of the world during a certain time period.
Built With
- css
- flask
- globegl
- html
- javascript
- openai
- python
Log in or sign up for Devpost to join the conversation.