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
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
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