Ramys / Teamviewer_clone

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project logo

Teamviewer clone

Il progetto ha come obbiettivo quello di far comunicare due client, un client share ed uno control. Il client share condivide il proprio schermo. Il client control tramite il codice del client share può connettersi e prendere il controllo di mouse e tastiera.

📝 Contenuto

🧐 About

Lo scopo è stato quello di creare un applicativo che potesse essere utilizzato in ogni dispositivo, il risultato è stato raggiunto grazie al framework Electron. L'applicativo è stato realizzato completamente in Electron, ciò ha consentito il build di un eseguibile che è possibile avviare senza l'installazione di nessun tipo di pacchetto aggiuntivo, inoltre per sua natura essendo Electron composto da un browser web e un server node interno, la portabilità dell'applicativo a web app è pressochè immediata.

🏁 Getting Started

In primo luogo è necessario clonare la repo utilizzando il seguente comando:

git clone https://github.com/saroo25/Teamviewer_clone.git

Successivamente nella cartella colonata è necessario spostarsi nella cartella server, da questa posizione è possibile installare tutte le dipendenze lanciando:

npm install

In fine il server va lanciato con il comando:

npm start

La stessa procedura va effettuata per la cartella my-electron-app, è inoltre possibile creare un eseguibile della stessa app con il comando:

electron-packager ./ screenshare --platform=win32 --arch=x64 --overwrite

Prerequisites

Sono necessari node versione 16.16.0 ed npm versione 8.11.0. Tutte le altre dipendenze saranno installate una volta lanciato npm install.

🎈 Usage

E' consigliato sostituire la riga 10 del file app.js e la riga 10 del file control.js , qui riportate:

const socket = require('socket.io-client')('https://28ef-37-179-147-177.eu.ngrok.io',{transports: ['websocket']});

cambiando l'url e inserendo l'url che fa riferimento all'hosting del vostro server.

⛏️ Built Using

✍️ Author

  • Rosario Forte

About


Languages

Language:JavaScript 59.3%Language:HTML 29.1%Language:CSS 11.7%