Open Desktop

File sharing application

"I have always imagined the perfect sharing tool as one where you can drag files directly from one desktop to another. This application was inspired by that idea."

Open Desktop is an application that reimagines file sharing by using your desktop as a communal environment. Clients can see files located on others clients devices and freely move them - to take, give or distribute files among users. With this application there is no upload or download - simply the movement of files.

image Example with three online users. The application tracks the content on your desktop and reveals it to other users. By dragging and dropping you can take files from other users, send files to other users or distribute files between other users.

The application is part of an exploration, investigating the question: "Would more creative applications in software be unleashed if we didn't start by saddling designers and developers with privacy and security concerns?" I wanted to explore what we could do with software if instead of always thinking safety first, we put interaction first and safety last. The intention was to break from the restrictions and limitations that comes with safe and private applications.

The Open Desktop application was featured in my ITP Thesis project called "Safety Last". Watch the live stream from my final presentation to hear more about my thoughts and intentions behind the project.

The project combines frontend and backend programming. The application is built using Electron.js to access native system components and serve them in a browser window. Socket.io and socket-stream are used to exchange user information and transfer content between users. The following shows the frontend design iterations and backend system architecture.

image Different stages of the desktop application design. From early iterations to final layout.
image The backend system architecture. The top part of the diagram shows the login system flow. The bottom diagram shows the flow of a file transfer between two users.

This Experiment was featured in my ITP thesis project called Safety Last. See project presentation in the ITP thesis archive .

The source code and more information about this project can be found on Github.