Files
clipboard-on-the-go/Readme.md
Space-Banane 4e637bc27d first commit
2026-01-17 15:19:07 +01:00

65 lines
2.1 KiB
Markdown

# Clipboard on the GO 😉
A simple clipboard synchronization tool built with Go. It consists of a server and a client application that work together to keep your clipboard data in sync across multiple devices.
## Features
- Real-time clipboard synchronization
- Cross-platform support (Windows, macOS, Linux)
- Easy to set up and use
## Prerequisites
- Go programming language installed (version 1.16 or higher)
- Git installed
## Installation
1. Clone the repository:
```bash
git clone https://gitea.reversed.dev/space/clipboard-on-the-go.git
cd clipboard-on-the-go
```
2. Modify the configuration.
2.1 Server Configuration:
- Navigate to the `server` directory.
- Make a new file called `config.go` and paste/modify the following code:
```go
package main
const (
// Update these values before building
EmbeddedServerIP = "0.0.0.0"
EmbeddedServerPort = "8080"
)
```
2.2 Client Configuration:
- Navigate to the `client` directory.
- Make a new file called `config.go` and paste/modify the following code:
```go
package main
const (
// Update these values before building
EmbeddedIdentification = "my-unique-id"
EmbeddedServerIP = "100.107.73.38"
EmbeddedServerPort = "8080"
)
```
3. Build the programs.
- Run the `build.bat` script in the root directory to build both the server and client applications.
4. Run the server.
- Navigate to the `server` directory and execute the `clipboard-sync-server.exe` file.
5. Run the client.
- Navigate to the `client` directory and execute the `clipboard-sync.exe` file.
## Usage
This is intended to be hosted on a public ish server, preferably in a tailnet or via a VPN, as you never should expose anything to the internet.
I use this on my home server, which i can connect to with tailscale, so i don't have to worry about exposing it to the internet.
Clients are identified by the `EmbeddedIdentification` value in the client config file. Make sure to set this to a unique value for each client you want to sync.
## License
This project is licensed under the MIT License.
## Disclaimer
This software is provided "as is", without warranty of any kind. Use at your own risk.