GithubHelp home page GithubHelp logo

abokorhassan / react-slack-clone Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lukejacksonn/react-slack-clone

0.0 1.0 0.0 1.79 MB

Complete chat application, built with Chatkit | by @lukejacksonn

Home Page: https://pusher.com/chatkit

License: MIT License

JavaScript 64.30% CSS 30.97% HTML 4.74%

react-slack-clone's Introduction

React Slack Clone

Star on GitHub Tweet Build Status

Slack clone powered by Chatkit. See it in action here https://pusher.github.io/react-slack-clone

demo

This is a static, single page web app bootstrapped with create-react-app for ease of setup, distribution and development. It is a thin UI wrapper around the pusher-chatkit-client library to demonstrate how different features can work together to form a compelling real-time chat client with various potential product applications.

Features

The Chatkit SDK allows you to implement features you would expect from a chat client. These include:

  • ๐Ÿ“ Public and private chat rooms
  • ๐Ÿ“ก Realtime sending and receiving of messages
  • ๐Ÿ“ฆ Rich media attachments (drag and drop)
  • ๐Ÿ’ฌ Typing and presence indicators
  • ๐Ÿ“š Read message cursors

Want to get involved? We have a bunch of beginner-friendly GitHub issues.

Components

The demo attempts to be feature complete according to documentation here. Feature requests should be made via issues or pull requests to this repository.

  • CreateMessageForm - to send a message with a textual body and trigger typing indicators.
  • CreateRoomForm - to create a new room and join it upon creation.
  • FileInput - to send a message with a rich media attachment.
  • Message - to render out a message that potentially includes an attachment.
  • MessageList - to render a list of messages from a key value store.
  • RoomHeader - to display useful information about a given room.
  • RoomList - to render a list of rooms which can be subscribed to by the current user.
  • TypingIndicator - to signify to the user that another user is typing in a given room.
  • UserHeader - to display useful information about a given user.

Usage

To run the application locally; clone the repo, install dependencies and run the app.

$ git clone https://github.com/pusher/react-slack-clone
$ cd react-slack-clone
$ yarn && yarn start

The app starts in development mode and opens a browser window on http://localhost:3000. The project rebuilds and the browser reloads automatically when source files are changed. Any build or runtime errors are propagated and displayed in the browser.

The app depends on GitHub authentication and a user creation endpoint that is hosted at https://chatkit-demo-server.herokuapp.com. The endpoints are /auth and /token.

react-slack-clone's People

Contributors

bookercodes avatar christianroper avatar demophoon avatar hamchapman avatar ichtrojan avatar lukejacksonn avatar matthewdking avatar mdpye avatar minaorangina avatar snyk-bot avatar yasharzolmajdi avatar yashzolmajdi avatar yazeedb avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.