/react-chat-app

Chat single-page application made with typescript and react

Primary LanguageTypeScript

React-chat-app

standard-readme compliant

image

🐙 Getting Started and How it works

Simple chat application between users made with Socket.io, React and Typescript. This project is responsive.

Every new tab opened is created a new user (with a random username), to see the application in action open 2 tabs and send messages between them.

Specs
React Hooks React hooks
😎 TypeScript JavaScript that scales.
🌐 Context API data through the component tree without having to pass props down manually at every level
🔓 Socket.io Real-time, bidirectional and event-based communication.

☁️ Installation

npm install or yarn
node src/server/index.js

open a new tab in your terminal and:

npm run start OR yarn start
access http://localhost:8080/

Requires node >= 10.0.0

Unit Tests

npm run test

Testing Behaviors and not implementation details

Features

 1. [x] Socket.io chat interface
 2. [x] Chat box displaying name and date time
 3. [x] Blink tab when you have unread messages
 4. [x] Modify username in settings
 5. [x] Toggle to Dark mode
 6. [x] Toggle Clock display
 7. [x] Enable send messages on CTRL + ENTER

Build

npm run build OR yarn build
serve the folder /dist
access http://localhost:8080/

Roadmap

Release 0.1 (current) - First release of the app
Release 0.2 - Save settings in localStorage and add support to unread chat notification
Release 0.3 - Internationalization (support for english and spanish)
Release 0.4 - Improvements in UI and transistions
Release 0.5 - Link Parser (Youtube and Images thumb)
Release 0.6 - Unread messages count in the chat tab

❗ Credits

Yuri Ramos

📜 License

MIT