KevaChat is distributed chat platform for open, uncensored and privacy respectable communication with permanent data storage in blockchain.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
ghost df9e860314 add missed message filters 1 year ago
bin init symfony framework 1 year ago
config add online sessions info 1 year ago
public add tmp br solution for current twig filters implementation 1 year ago
src remove deprecated methods 1 year ago
templates/default add missed message filters 1 year ago
translations complete feed feature 1 year ago
.env update version 1 year ago
.gitignore remove locks 1 year ago
LICENSE Initial commit 1 year ago
README.md update readme 1 year ago
composer.json update php requirements 1 year ago
composer.lock update composer lock 1 year ago
symfony.lock remove locks 1 year ago

README.md

KevaChat Web Application

KevaChat is distributed chat platform for open, uncensored and privacy respectable communication with permanent data storage in blockchain.

KevaChat

Tech

Instance require connection to the Kevacoin wallet, memcached server and Symfony for web interface.

Model

KevaChat following open wallet model, where community boost shared ballance for talks.

Administrators have flexible settings of access levels explained in the .env file: read-only rooms, connection and post limits, etc.

Communication

Everyone able to join the chat, post messages as ghosty or sign ownership by IP. Also users can explore remote rooms by namespaces if option enabled.

Basic social features like identicons, replies, mentions, RSS subscriptions etc are supported.

Protocol

KevaChat protocol following native Kevacoin's key/value model, where key - is the timestamp@username and value - is message.

All messages related to their room namespaces.

Install

Production

composer create-project kevachat/webapp KevaChat

Development

  • git clone https://github.com/kevachat/webapp.git KevaChat
  • cd KevaChat
  • composer install

Setup

Application package contain settings preset, just few steps required to launch:

  • Make sure memcached server enabled
  • Setup Kevacoin server connection with rpcuser/rpcpassword in ~/.kevacoin/kevacoin.conf
  • Copy rpcuser to env.APP_KEVACOIN_USERNAME and rpcpassword to env.APP_KEVACOIN_PASSWORD
  • Generate new address using CLI kevacoin-cli getnewaddress and copy to env.APP_KEVACOIN_BOOST_ADDRESS
  • Send few coins to this address and wait for new block to continue
  • Create namespace for the chat room with kevacoin-cli keva_namespace "sandbox" and add it hash to env.APP_KEVACOIN_ROOM_NAMESPACES
  • Also Provide at least one namespace for default chat room to env.APP_KEVACOIN_ROOM_NAMESPACE_DEFAULT (for homepage redirects)

Contribution

Project created by people for people: MIT License to use it for other needs e.g. new fork, chat instance or Kevacoin blockchain explorer.

Join the development and make your feedback!