Skip to content

StarScream159/lan-chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAN Chat verison 0.1.0 Electron size 108 MB

lan chat icon

A modern server-less, database-less, login-less simple peer-to-peer LAN messaging application. Useful for sending links and other simple messages to other comptuers on the local area network without the need for setting up accounts and logging into a service.

screenshot

Features

  • Cross platform: windows, mac, linux
  • No login required
  • No central server
  • Completely local area network
  • No chat history
  • Auto start with system
  • Minimize app to tray and run in background
  • Open links in external browser
  • Auto copy incoming message links to clipboard
  • Responsive
  • Modern UI

Tech

LAN Chat uses a number of open source projects to work properly:

  • ElectronJS - Build cross-platform desktop apps with JavaScript, HTML, and CSS
  • Electron Settings - Stores app settings in json flat-file
  • evilscan - Network scanner to scan for other LAN Chat clients
  • node-portfinder - Get open port on host OS for listening for incoming communications
  • validurl - Detect if incoming message is a URL and if so copy to clipboard (if enabled)
  • custom-electron-titlebar - A modern looking app title bar (Windows)
  • node-auto-launch - Register and launch the application on system login (if enabled)
  • jQuery - DOM management and manipulation

Installation

You can use the installer package for your platform, or build from source if you'd like.

Development/Building

LAN Chat uses ElectronJS and standard HTML + JS + CSS. Make sure your system has Electron installed, and then pull the repo. into a folder of your choosing. Next install all dependencies:

$ npm install

With all the dependencies installed you now have the following commands avaiable:

Running for developement:

$ npm run start

There is no hot-reload, so if you make changes to the source after the application has started you can sometimes use the developer tools to reload the application Window. Or you can break (Ctrl+C / Command+C twice) the npm command and re-run.

Building for release:

$ npm run make

Check the ./out/make/ folder for the installer package, or the ./out/lan-chat-win32-x64/ (or platform specific) folder for the compiled portable binary and library files.

Todos

  • Maybe add message history and persistance?
  • Add dark theme
  • Incoming message notifications (with setting to disable)
  • Suggest a feature

License

MIT

Credits App Icon by Dryicons Installer GIF animation by Jelio Dimitrov