Skip to content

barclayd/Slack-Clone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

157 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Slack

Slack clone built using React.js, Node.js and GraphQL.

Features

  • Advanced user login and sign up with refresh token - handled and verified through muiddleware and afterware
  • Create Teams
  • Add new channels
  • Add new members to teams
  • Instant messaging with the use of GraphQL subscriptions as an implementation of web sockets
  • Fully authenticated
  • Sending of direct messages

How to Setup

Please ensure that Progres is set up on your machine and a database named $user exists.

If you are starting from scratch, follow these steps to set up Postgres, replacing your user name within <user>:

MacOS

brew doctor
brew update
brew install postgresql
ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
alias pg_start="launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist"
alias pg_stop="launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist"
pg_start
createdb <user>

To verify you have Postgres installed correctly, running the following command:

psql

should produce an output in the terminal that looks similar to this:

$ psql
psql (11.5)
Type "help" for help.

<user>=# 
$ git clone https://github.com/barclayd/Slack-Clone.git
$ cd server
$ npm run setup
$ cd .. && cd client
$ npm run start

How to Run

$ git clone https://github.com/barclayd/Slack-Clone.git
$ cd server
$ npm run start
$ cd .. && cd client
$ npm run start

Frontend

Server

Future improvements

  • Member of channel is typing
  • Drag and drop files for upload

About

Full stack Slack clone built using React, Node, GraphQL and Postgres

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors