Leaflet, Framework7 and Beyond

When I began my MA in Digital Humanities in Maynooth I was a traditional historian, a historian with some experience with XML yes, but that’s as far as it went.  This course has introduced me to Javascript, TEI and all sorts of other technological challenges, from server issues to database nightmares. However, nothing on this course has presented a bigger challenge than developing my own app. As part of the course I am creating a walking tour mobile application of ‘Little Jerusalem’ for my internship. The aim is to construct a user-friendly, informative and immersive experience to bring to light the history of Dublin’s Jewish hub in the early twentieth century. So far my journey has encompassed numerous challenges, of all varieties, culminating in the determination that a historic walking tour app is most definitely a job for a digital humanist.

Up to this point my journey has largely been defined by technical triumphs and tribulations. However, before delving into the complicated world of map construction and Framework7, it is important to acknowledge the aspects of this project which I did not anticipate when beginning my project. Initially, I believed this project to have two strands: technology and history. Both these strands could have separate creation processes which would be merged together in the final stages to develop a finished product. What I failed to identify was the intermediate discipline, the skill of merging these two aspects in a flawless sequence. For example, I initially planned to have an overarching narrative guiding my tour. This plan was quickly scrapped when it became obvious that in order to do this I would face a myriad of questions, such as, how do you predict a user’s walking speed? Which direction will they take? Would they have to do the whole tour and if so how would this affect those whom may not be able to or may not want to? What if they get lost? And so I was forced to take a third aspect into consideration, best practice. Through research of existing apps and cultural heritage literature it became clear that while there is no right or wrong answer there are decisions to be made and that the best time to make these decisions is while designing your application’s structure.

LJ2Therefore, after constructing an idea of how the app should function, in line with best practice guidelines and keeping the historical narrative in mind, it was time to start app development. For the map itself I am using Leaflet, an open-source JavaScript library for mobile-friendly interactive maps. I chose leaflet purely because of its open-source nature, meaning that the original code is open to all. I found Leaflet incredibly easy to use and their documentation is really helpful, as well as the online community who answer all and any question asked. I would describe my experience with Leaflet as painless.

Unfortunately, Framework7 is a little more complicated. Framework7 was chosen, again because it is open-source, but also, because it provided templates with an existing navigational structure. Owing to this I did not need to create my app from scratch but ‘clean out’ the existing code and replace the features I did not need with my own. The clear out was easy but navigating Framework7’s structure has not. There was a crossroads point in my project where I could have chosen to programme using Javascript or to go down the line of Framework7, and while I occasionally curse my choice, Framework7 was designed for mobile experiences. I chose to work with it in the hope that my finished product would be specifically geared towards its intended use and would therefore, hopefully, produce an enjoyable and easy user experience.

While there is plenty documentation online to try and LJsupport Framework7 users it is pretty daunting for a novice coder. I still face many challenges in implementing my code and achieving the features I want – content popups are my latest struggle- but the greatest lesson I have learned is to have confidence in what you do know. The application is difficult, increasingly so as the app develops and features become more technical, and while the functions do not appear to resemble anything like those on my JQuery crash course, there is little to separate them. The moral of the story when approaching a mammoth task like this: you know more than you think you do.

I do not think my technological struggle is near its completion. I have no doubt there are many days of anguish ahead but I can confirm that the joy of perfecting that code and accomplishing a task is greater than any error Framework7 can throw at you – and trust me, there are many!