/snipshare

Desktop Client + Server for the SnipShare tool

Primary LanguageJavaScript

SnipShare

SnipShare is a small tool to quickly share snippets from a desktop environment to mobile so that your handheld device can act as a second monitor for static image content.

This project is for the desktop app + server and is built using ElectronJS for desktop application, ExpressJS/NodeJS for server and Socket.io for sending realtime data.

QMK

  • The code communicates with QMK using raw-hid protocol. All messages are sent with id 10 with type of message being described by the integer at next index in the buffer.
    • 1: toggle encoder state
    • 2: fetch current encoder state
    • 3: set cpu temp rgb to low (not being used)
    • 4: set cpu temp rgb to high (not being used)
    • 5: set cpu usage rgb (send current usage at next index in buffer)
    • 6: set current OS rgb (send current OS at next index in buffer)

Installation

You can download the latest portable win32-64 version of the app from the Releases page

How to Use

  • Upon launching the application you will be provided with a url. You can open it using you phone in any recent browser while being connected to the same network as your desktop.

  • Navigate to the given url on your phone, and then minimize the app. This will close the app to the system tray.

  • Take a partial/complete screenshot (you can use the shortcut Win+L-Shift+S to use windows screenshot tool) and then send by right clicking the tray icon and selecting the Send Snippet option or use the shortcut Ctrl+Alt+9 to directly send the snippet.

  • The snippet should be visible in your device now.

Development

  • Clone this repo
  • Install npm packages with npm i
  • Start server with npm start
  • Build installable binaries with npm run make

Attributions

Icon made by Freepik from www.flaticon.com