Ever wanted to transfer large files between your devices and you hit road blocks due to compatibility issues (like from WINDOWS to MACOS), we've got you covered!
We realized that transferring large files from a cell phone to another phone or a computer could be difficult. There are sometimes compatibility issues between devices, such as Windows and Apple devices. Even with the option of existing cloud storage applications such as Google Drive and OneDrive, it requires a subscription from the user and inconvenient steps such as logging in first. This drove us to create a web-based solution to work around these incompatibilities, which prioritizes speed and ease of transfer.
What it does
It allows the user to transfer files from one device to many other devices. It does this by making use of secure rooms where files could be safely transferred between authorized devices. All the user needs to do is to navigate to the web application on the devices they want to transfer files to/from and enter a secure code to link them.
How we built it
We leveraged web socket technology to provide a link between one or more devices. Using this link, files could be sent to any of these devices. The relevant files would be stored on a cloud-based storage unit where it could then be sent to any of the recipients all across the world. It's created to function like a chat system where there is a persisting connection with all the members and files can be sent as long as there is a connection. Each device is connected by a unique code to a secure room.
Challenges we ran into
Navigating the difficulties that come with learning about web sockets.
Dealing with working with two different servers at the same time.
Using the Google Cloud platform as we did not have any prior experience, so we ended up switching over to Firebase.
Figuring out and conceptualizing the entire architecture of the system.
Accomplishments that we're proud of
We are proud to be working on a solution that is increasingly relevant when people on a team are working remotely. They cannot resort to other methods of file transfer to accelerate the process, such as using a hard drive or an expensive subscription-based service that they wouldn't use frequently. Our project leverages one of the currently available cloud storage options to provide an alternative that would make inter-device file transfer easier.
What we learned
It is a lengthy process to deploy server on GCP and time should be taken into consideration when selecting a cloud platform. Platforms like Heroku allow for a shorter deploy time and is better suited for smaller applications. JavaScript was better suited for a web application like ours that involved web sockets. If we wanted to use Python to handle them, it wouldn't have been easy due to certain dependency limitations.
Log in or sign up for Devpost to join the conversation.