Quick and easy-to-deploy web chat with many customizable features (which is also compatible with tor and i2p networks) (development versions are available (technically functional, but need polishing and bug fixes))

dymik739 af93396799 patch: now messages can't be sent before connection opens 3 years ago
HTTP-content af93396799 patch: now messages can't be sent before connection opens 3 years ago
WS-server eac06dcdf1 fix typo in help file 3 years ago
LICENSE 774850182a Initial commit 3 years ago
README.md 32c6a447d4 edit README.md 3 years ago

README.md

simple-web-chat

Quick and easy-to-deploy web chat with many customizable features (it is also compatible with tor and i2p networks)

Running development versions, alphas and betas

To run an instance of this server you need two things:

  • python3 with websockets module installed (for WS-server, backend);
  • almost any HTTP server you find on the Internet (php, nginx, apache etc.) (for HTTP-content, frontend);

First, you will have to clone this repository (specifically, the branch you want to run), for example:

git clone https://notabug.org/dymik739/simple-chat-server.git --branch v0.1-dev

Next, you have to start websocket server as your backend:

cd simple-chat-server/WS-server/
python3 main.py

You may want to specify port which will be used by this server. You can use -p <port> command line option for this or, alternatively, you can create config.json file (it is automatically detected by the server if located in the same directory; cli options override file's ones).

After that you have to start HTTP server which should serve the content of HTTP-content folder. I will use php development server as example here:

cd simple-chat-server/HTTP-content/
php -S 127.0.0.1:8080

This will start web server on port 8080; feel free to specify whatever port you want (also, you can upload these files to your existing server, they should work too (but make sure all the files are in the same directory)).

And that's it! You're now ready to connect: just visit the HTTP server with your browser and enter websocket server address and port - you will be connected to the chat! P.S.: if something goes wrong, feel free to open new issue and describe it so bugs can be fixed faster and you can get help with your setup.

These instructions are likely to be used for releases as well but may change in the future.

Contributing

If you encounter a bug (I'm sure there are many), feel free to open new issue and describe what actually happened and what should have happened. That includes typos and any mistakes you find on these pages or in code as well.

Also you can publish your feature request there, but as this is still an early stage of development, many missing features are already pending, for example:

  • embedded web server;
  • multiple chat rooms;
  • adaptive user interface (for desktop and mobile);
  • command line interface client and many more (I can't think of all of them right now).

But I would still like to hear your requests! I may not come up with some great ideas you might have already so it would be cool in any case. Also, I can implement certain features first based on the requests, so publishing them is surely worth it.

And yes, you can use pull requests to help somehow (I will try to learn how to use them).