Skip to content

My fourth frontend project on Hexlet. As part of the project, it was necessary to implement the single page application (SPA), which is a real-time chat with user registration and authentication. The project has the ability to create, delete and rename channels, as well as the filtering of obscene words.

Notifications You must be signed in to change notification settings

andrew-walker91/Chat-Hexlet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Actions Status Maintainability linter-status

Hexlet Chat:

Hello! My name is Andrey Gulyaykin and this is my fourth frontend project on Hexlet.

meme

Description:

Hexlet Chat is a simplified version of Slack, where you can exchange messages in real time, create, delete and rename channels.

The project implements filtering of obscene words, notification of user actions using pop-up messages.

The project uses web sockets, interaction with the REST API, the use of React (with hooks), Redux (via reduxjs/toolkit), the organization of routing on the client, as well as user authorization and authentication.

Installation:

Just 3 commands for a quick start

git clone [email protected]:andrew-walker91/frontend-project-12
make install
make start

How to use:

  • Register or log in with an administrator account

    • Login: admin
    • Password: admin
  • Write something in the channels created by default

  • Create a channel using ➕ on the left side of the application

  • Enjoy this unobtrusive notification of successful channel creation

  • You can express your delight even with the help of bad words, the application will take care of it

Tech stack

  • React / React Hooks - user interfaces
  • Redux / Redux Toolkit - state container
  • Bootstrap - CSS Framework
  • Socket.io - WebSocket based browser-server communication
  • Axios - HTTP requests
  • Formik - building forms on React
  • Yup - form validation
  • I18next - manage text
  • React-toastify - pop-up notifications
  • Leo-profanity - profanity filter
  • Rollbar - error tracking

Demonstration:

Login page:


login-page

Sign up page:


signup-page

Main page:


main-page

Add channel:


add-channel

Chat page:


chat-page

Watch the demo video:

demo.mp4

ㅤ ㅤ ㅤ

Click here to try in the browser

About

My fourth frontend project on Hexlet. As part of the project, it was necessary to implement the single page application (SPA), which is a real-time chat with user registration and authentication. The project has the ability to create, delete and rename channels, as well as the filtering of obscene words.

Topics

Resources

Stars

Watchers

Forks

Languages