A simple chat app powered by Electron JS.
Chatly is a desktop chat application built using Electron JS, providing a seamless real-time messaging experience in a lightweight and user-friendly environment. Designed to run cross-platform (Windows, macOS, Linux), Chatly demonstrates how to combine web technologies (JavaScript, HTML, CSS) with native desktop features.
- Real-Time Messaging: Instantly send and receive messages.
- Multi-User Support: Chat with multiple users in a common room.
- Desktop Notifications: Get notified of new messages even when the app is unfocused.
- Modern UI: Responsive interface built with CSS and HTML.
- Cross-Platform: Runs on Windows, macOS, and Linux.
- User Presence: See who is online.
- Customizable Settings: Theme and notification preferences.
- Persistent Chat History: Save and load messages across sessions.
- Electron JS: Desktop app framework
- JavaScript (63.1%): Core logic and messaging
- CSS (21.7%): Styling and layout
- HTML (15.2%): Structure and templates
-
Clone the repository
git clone https://github.com/Ali-Amir-code/Chatly.git cd Chatly
-
Install dependencies
npm install
-
Run the application
npm start
The app window should open on your desktop.
To package the app for your OS:
npm run build
You may need additional configuration for platform-specific builds. See Electron Builder documentation for advanced options.
- Start the app: Double-click the executable or run
npm start
. - Sign in: Enter a username to join the chat.
- Send messages: Type and hit Enter or click Send.
- Change settings: Use the gear/settings icon for theme and notification options.
Chatly/
├── src/ # Main Electron source files
│ ├── main.js # Electron main process
│ ├── renderer.js # Renderer process (UI logic)
│ ├── chat/ # Chat logic and components
├── assets/ # Icons, images
├── styles/ # CSS files
├── index.html # Main HTML template
├── package.json # Project metadata and scripts
├── README.md # Documentation
Contributions are welcome! To contribute:
- Fork the repository.
- Create a feature branch.
- Commit and push your changes.
- Open a pull request describing your changes.
Please follow code style, add comments, and test your changes.
This project is licensed under the MIT License.
- Electron JS
- Node.js
- All contributors!
For questions, suggestions, or support, contact Ali-Amir-code.