/sayHi

This project is a chat & date application which is for Full stack challenge event.

Primary LanguageJavaScriptMIT LicenseMIT

Chat&Date App

Author: Tempest(tar118@pitt.edu)

Profile: https://blog.epicanecdotes.games

This project is a chat & date application which is for Full stack challenge event.

Frontend Part

React-Native: React Native combines the best parts of native development with React, a best-in-class JavaScript library for building user interfaces. You can use React Native today in your existing Android and iOS projects or you can create a whole new app from scratch.

More Details: see /client/README.md

Features

  • sign up
  • sign in, logout
  • quick sign in (secure save token)
  • update user profile
  • pick up new friends and chat
  • chat with friends
  • see history messages
  • receive messages
  • iOS and Android compatibility based on React Native

Backend

Egg.js: Born to build better enterprise frameworks and apps with Node.js & Koa. A Node.js server framework based on Koa.js with numerous middlewares and plug-ins. Koa.js: next generation web framework for node.js. Expressive HTTP middleware framework for node.js to make web applications and APIs more enjoyable to write.

More Details: see /server/README.md

RESTful API

  • users
  • messages
  • notifications

Features

  • sign up
  • sign in
  • update user profile
  • pick random users
  • send a message (add friend)
  • retrieve messages by filter
  • retrieve latest messages

Password Encryption

sha256

Auth

Redis + Token Authorization

Protocol

RESTful API

API Document: Postman Workspaces SayHi

API screenshot

Database

about database deployment & configs, data importing, see more in server/README.md

PostgreSQL@15 + Redis or MySQL + Redis

database backup: ./sayhi.sql

Demo & Video

demo video

1

2

3

4

5

6

Docker

[TODO] Time-limited

Resources References

The logo and splash screen are made by myself using Adobe Express

Other images assets are from Google images.

Liscence

MIT