A rough diagram showing the workings of our service
You've heard of Chrome, but now there's Zinc!
Our team was inspired when we realized that we were often left helpless when travelling and could not locate a wifi hotspot - or one that was not secured by a password. We realized that we would still usually have cell service, and could use an alternate connection to access the internet. We were further inspired when we realized that this would be easily applied in developing countries where hotspots and wifi connections are even more limited.
What it does
Zinc browser allows the user to connect to external web servers through SMS means. A URL (or Google search) is requested within the browser, which is then sent through SMS to Twilio (as a web address). The Twilio API then continues to deliver this URL to our own backend server hosted in a location with wifi. This server then sends the URL to the specified external server. Once the request is received by the external server, this server then delivers the HTML and CSS code in packets and chunks (using a process called ‘transfer encoding: chunked’) of the webpage to our own server, and in turn back to Twilio, and finally back to the browser (through SMS), where the file is read and transformed again into a webpage.
How we built it
Challenges I ran into
There were multiple instances, in which we did not know how our own backend server and the external server would retrieve or deliver data. Processes and elements, such as chunked encoding and HTTP headers had to be learned and we had to use these essential elements prior to using them for the program.
Accomplishments that I'm proud of
What I learned
Starting from scratch, we learned a lot about basic web communications - how browsers communicate with web servers, TCP and HTTP, and how browser engines receive information.
We also learned to work as a team!
What's next for Zinc
We want to optimize the processes of our back end server so that data can be sent in a ‘lazy-loading’ fashion. This would make our browser load smoother and make the experience more pleasant. For the browser itself, it can definitely revolutionize how those in developing countries use their technology and the accessibility towards resources. We are looking towards expanding this project so that the browser will uphold a unique and fluid front-end design