hack.chat is a minimal, distraction-free, accountless, logless, disappearing chat service which is easily deployable as your own service. The current client comes bundled with LaTeX rendering provided by KaTeX and code syntax highlighting provided by highlight.js.
A list of software developed for the hack.chat framework can be found at the 3rd party software list repository. This includes bots, clients, docker containers, etc.
This is a backwards compatible continuation of the work by Andrew Belt. The server code has been updated to ES6 along with several new features including new commands and hot-reload of the commands/protocol. There is also documentation and a changelog.
Prerequisites
- node.js 8.10.0 or higher
- npm 5.7.1 or higher
Developer Installation
-
Clone the repository:
git clone https://github.com/hack-chat/main.git
-
Change the directory:
cd main
-
Install the dependencies:
npm install
-
Launch:
npm start
If you change the
websocketPort
option during the config setup then these changes will need to be reflected on line 60 of client.js.
Live Deployment Installation
See DEPLOY.md
- If you are modifying commands, make sure it is backwards compatible with the legacy client and you update the documentation accordingly.
- Use the template to learn how to create new commands.
- Use two space indents.
- Name files in camelCase.
- Scripts that do not default to strict mode (such as modules) must use the
'use strict'
directive.
- Marzavec - Initial work
- MinusGix - Base updates
- Neel Kamath - Base Documentation
- Carlos Villavicencio - Syntax Highlighting Integration
- OpSimple - Modules Added: dumb.js & speak.js
- Andrew Belt, https://github.com/AndrewBelt, for original base work
- wwandrew, for finding server flaws (including attack vectors) and submitting
incredibly detailedbug reports - Everyone else who participated in this project.
This project is licensed under the WTFPL License.