1
0
mirror of https://github.com/hack-chat/main.git synced 2024-03-22 13:20:33 +08:00
a minimal, distraction-free chat application
Go to file
marzavec 831a4968f4
Merge pull request #67 from Roslot/master
Semi-bugfix for @mentions
2019-06-04 15:27:15 -05:00
.github Create FUNDING.yml 2019-06-04 15:22:56 -05:00
client Bugfix for @mentions 2019-05-19 17:11:16 -04:00
clientSource Core hook upgrade, misc fixes 2019-02-21 00:43:25 -08:00
documentation documentation update, removing unused scripts 2018-10-13 16:35:58 -07:00
server Update MainServer.js 2019-05-03 03:05:32 -05:00
.gitignore Flatten 2018-05-13 16:09:55 +05:30
CHANGELOG.md refactoring 1 of 2 2019-03-18 23:36:21 -07:00
index.js streamline dev flow 2018-05-19 17:21:08 -07:00
LICENSE Add license as a file in the repo as GitHub's documentation 2018-05-11 19:33:08 +05:30
package-lock.json Core hook upgrade, misc fixes 2019-02-21 00:43:25 -08:00
package.json Added notifications and sound alerts in client.js 2019-05-09 02:37:13 -04:00
README.md Completed protocol decoupling 2018-06-03 11:08:35 -07:00

hack.chat

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.

Installation

Prerequisites

Developer Installation

  1. Clone the repository: git clone https://github.com/hack-chat/main.git

  2. Change the directory: cd main

  3. Install the dependencies: npm install

  4. 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

Contributing

  • 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.

Credits

License

This project is licensed under the WTFPL License.