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
2018-05-12 14:49:56 +05:30
client misc server changes and new modules 2018-04-28 22:29:46 -07:00
server Enhance READM.md 2018-05-12 14:49:56 +05:30
CHANGELOG.md misc server changes and new modules 2018-04-28 22:29:46 -07:00
DOCUMENTATION.md Remove unused object fields 2018-05-12 14:13:12 +05:30
LICENSE Add license as a file in the repo as GitHub's documentation 2018-05-11 19:33:08 +05:30
README.md Enhance READM.md 2018-05-12 14:49:56 +05:30
templateCommand.js Enhance READM.md 2018-05-12 14:49:56 +05:30

hack.chat

hack.chat is a minimal, distraction-free, accountless, logless, disappearing chat service which is easily deployable as your own service. The client comes bundled with LaTeX rendering provided by KaTeX.

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

Installing

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

  2. Change the directory: cd main/server

  3. Install the dependencies using a package manager of your choice:

    • npm: npm install
    • yarn: yarn install
  4. Configure: node main.js

    If you change the websocketPort option during the config setup then these changes will need to be reflected on client.js.

Usage

  1. Start the server:

    cd main/server/
    pm2 start main.js --name HackChat
    
  2. Launch main/client/index.html, you may now begin development or deploy to production environment.

  3. (Optional) Deploy by pushing everything (except the node_modules directory) to the server and install the dependencies using the package manager of your choice:

    • npm: npm install
    • yarn: yarn install

    You can now run start the server software with a process manager like PM2. The client code will need to be copied into your http server directory. If you plan on using SSL to serve the client; you will need to use a reverse proxy, as TLS is not natively supported by the hack.chat server software (this may change in future releases).

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.

Credits

License

This project is licensed under the WTFPL License.