sm7515 / zodiac-chat

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zodiac Chat

Overview

Zodiac Chat is an online chat room that allows users to chat with people of different zodiac signs.

Deploy

Run locally

cd backend
npm install
npm start

cd frontend
npm install
npm start

Data Model

The application will store Users and Zodiac Signs.

An Example User:

{
  username: "sijia",
  dob: // a Date object for date of birth,
  hash: // a password hash,
  sign: 'Leo',
  createdAt: // timestamp
}

An Example Sign:

{
  name: 'Leo',
  img: // image url for this specific sign,
}

User Stories or Use Cases

  1. as non-registered user, I can register a new account with the site
  2. as a user, I can log in to the site
  3. as a user, I can send messages to other users
  4. as a user, I can view the chat from other users
  5. as a user, I can respond to the messages I receive
  6. as a user, I can send gifs and stickers during chat

Research Topics

  • (5 points) Socket-io
    • I'm going use socket-io for building this real time chat app
  • (3 points) Redux
    • I'm going to use Redux and learn how it works with React.js
  • (5 points) React.js
    • I'm going to use React.js as the frontend framework; it's a challenging library to learn, so I've assigned it 5 points

Annotations / References Used

  1. socket.io
  2. React.js
  3. React Redux
  4. Giphy API

Future improvements

  1. add user profile function
  2. save chat history to database
  3. users can add other as friends

About


Languages

Language:JavaScript 78.7%Language:CSS 11.2%Language:HTML 10.1%