Notation took its original concept from the Dark Souls⚔️ series, and the iconic messaging mechanic the game introduced. Players across worlds could leave messages for others to find, either as a boon or to trick them. The sense of community this brought to the game was one we felt could be transferred to real life through the creation of Notation. Notation takes additional inspiration from AR and location based apps such as Ingress and Pokemon GO to make users see the world around them in a new way!
Notation has created a database of user messages and coordinates that are sent directly to your app as you travel the world. By looking through the AR lens, you can find these messages scattered around places of interest left by other users. Notation uses voice-to-text commands to make sure you can write a message instantly using your voice. Simply say _ Leave Note _ and your note to let the world see it.
We built Notation by dividing our work into smaller teams that created the fundamental framework of the app. We began by creating each modular piece individually before modifying the code to connect each module and finalize the completed project. The database, data input system, and AR element creator were all created by individual teams of 1-2 people. The seemingly complicated database was vastly simplified by CockroachDB's powerful cloud implementation. By storing latitude, longitude, and the message through CockroachDB via a Python Flask app, a system to access nearby messages by the frontend was made possible. The data input system utilized Microsoft Azure Speech-to-Text and Browser Navigation API to listen for new messages and find the location they were stated. The AR element creator used AFrames to generate augmented reality text in the real world. Each module used a unique platform dependent on its functions, including CockroachDB Cloud, JavaScript, HTML, A Frame, Python, and Flask.
When developing Notation, we ran into problems when creating the AR element creator and how it would handle incoming data. Knowing how to adequately handle data and transmit it as AR information, working with browser integration, and bug testing to ensure messages appeared at their correct location were all consistent problems we worked as a team to solve throughout the dev period. Some challenges arose when trying to connect the Python Flask app to the CockroachCloud database and send SQL commands. However, after ensuring all details of the connection string were correct and matching the data types in the SQL commands with the database table, the integration became seamless.
The Notation team is proud of the work we made to bring this concept to life. While currently a prototype, Notation does its job and does it well. We are proud of the front end product, as well as the back-end use of modular development, various programming languages, and efficient design to make the app run smoothly. Our team learnt many new skills including HTML, JavaScript, Flask, and AFrames.
We learned the importance of dividing work, the value of modular development, and how important it is to have a plan for connecting modules. Additionally, our team learnt many new skills including SQL, HTML, JavaScript, Flask, and AFrames.
Notation's next steps would preferably take steps to closer emulate the strengths the original Dark Souls concept had: a rating system, use of other input formats(text, drawings, gestures) to express oneself, and more accurate placement of messages are all next steps Notation would greatly benefit from taking. In terms of larger next steps for Notation, a UI overhaul and general improvement of user experience and workflow would improve Notation's ease of access and user enjoyment.