BxlContact chat software is a web chat tool based on nodejs+express+websocket module.
The front end uses ejs as the template engine. The server uses express to build a web service, and ws to create a server websocket service, which realizes the functions of login and registration, one-to-one chat and private chat (end-to-end encryption).
[✔]Support one-to-one messaging 👏
[✔]Support end-to-end encryption 🔒
[✔]Support online user statistics and user list 📗
[✔]Message notification ⏰
[✔]Keyboard support 🎹
[✔]Support for mobile phone, tablet and PC 📱 💻
This project uses node and npm. Go check them out if you don't have them locally installed.
Enter the BxlContact main folder through the terminal and run:
$ npm install --global
OR
If it fails, you can check the dependency list in the package-lock.json file and install them one by one
When you have completed the install step, enter the home directory and use the command:
$ npm start
If the server run successfully, you can enter the following address in your browser:
http://localhost:3000/
- re-install the dependency and restart
- check the port of your computer, 3000 and 9876, whether are open
- check the node.js version, use the stable version of node.js
- If none of these can solve your problem, you can log in to our demo website to view the function
If you want to build a similar database on your computer or server through this project, you can use the following code:
CREATE TABLE `bxlcontact`.`user`(
`username` VARCHAR(100) NOT NULL,
`password` VARCHAR(100) NOT NULL,
PRIMARY KEY (`username`)
) ENGINE=MYISAM CHARSET=utf8 COLLATE=utf8_general_ci;
CREATE TABLE `bxlcontact`.`content`(
`id` INT(100) NOT NULL AUTO_INCREMENT,
`from` VARCHAR(100) NOT NULL,
`to` VARCHAR(100) NOT NULL,
`content` VARCHAR(1000) NOT NULL,
`time` DATETIME(6) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=MYISAM CHARSET=utf8 COLLATE=utf8_general_ci;