It took us a pretty long time to think of an idea that we thought was worth doing. Things that inspired us included our daily problems as high school students, one of which was our constant need to search about things and find information about a topic. We wanted to make simple searching as easy as possible and as a result we created our app, WikiFractal. Another focus for our project was education, and we went through many education-related ideas including games that teach children how to code among other ideas. We think our project helps people research more efficiently and allows them to explore ideas related to their field of interest.
What it does
WikiFractal is a visualization tool that displays a selected topic as well as related topics to help users gain a sense of how people, places, things, or ideas relate. Users can input a keyword and a web will be generated of related topics to provide insight regarding how things are connected.
How we built it
We used a Python Flask framework to make cURL requests to Wikipedia and used Regex to parse and analyze the pages retrieved. Using this information, we were able to develop an algorithm to rank the most important keywords and phrases, and deliver this information to the user interface, where we were able to display the data in a logical and visually appealing manner through HTML, CSS, and jQuery. The app is hosted on Cloud9 (c9.io).
Challenges we ran into
Despite having previous experience with PHP (minimally), we were able to effectively use Flask for our purposes to serve the pages and data as well as data processing tools that we needed. We also encountered many challenges to render our data in the most user friendly way through a spider-web like pattern.
Accomplishments that we're proud of
We were very proud that we were able to make such a complex idea come to life, and one of our best accomplishments was to be able to accurately choose keywords and phrases to a very high degree of intelligence through our algorithms that we developed.
What we learned
We learned many things including Flask, for serving our files and resources, as well as data analysis techniques to simulate artificial intelligence, and also advanced CSS strategies to accurately display our data.
What's next for WikiFractal
We hope to further improve the accuracy of our keyword filter and eliminate false positives (words that are not related but are deemed to be so), as well as a function to zoom in to allow for easier traversal of the web structure at deeper levels.