Giter VIP home page Giter VIP logo

whotalk.us's Introduction

WHOTALK.US

WhoTalk.us is a Chat based SNS system that simply allows N to 1 chatting. In this project, React.js is used on the front-end side and Node.js is used on backend-side. MongoDB is used for the database. This project is currently in beta, there are still some functions to be implemented.

If you have found any bugs, or want to enhance the system, please feel free to post new issues in Github repository.

Core Technology

Following technologies are used in this project (some are omitted)

  • React.js
  • Redux
  • React-router
  • Node.js
  • Express
  • MongoDB
  • Mongoose
  • Sockjs
  • Sass
  • Webpack
  • Babel
  • Passport
  • Semantic-UI
  • React-intl
  • axios
  • lru-cache
  • alertify
  • react-scroll
  • redux-thunk
  • masonry
  • create-react-app

Getting started

These instructions will get you a copy of the project up and runing on your local machine for development and testing purposes.

Prerequisites

  • Node.js 6^
  • npm 3^
  • MongoDB 3^

Installing

  1. Install global dependencies

    npm install -g babel-cli
    
    • babel-cli lets you transpile the ES6 codes for the backend server.
  2. Clone the project from the github repository

    git clone [email protected]:velopert/whotalk.us.git
    cd whotalk.us
    
  3. Install local dependencies

    Project for the client and the server separated in two different directories.

    cd whotalk-backend
    npm install
    cd ../whotalk-frontend
    npm install
    
  4. Rename .envcpy file to .env

    This file is resides in whotalk-backend directory. Rename this file and input the values for the envioronment variables.

    PORT=4000
    DEVPORT=3000
    DB_URI="mongodb://DB_URI"
    SECRET_KEY="SECRET_KEY"
    FACEBOOK_SECRET="FACEBOOK_SECRET"
    GOOGLE_SECRET="GOOGLE_SECRET"
    

Development

For the development environment, you have to run two kind of scripts.

  1. npm run dev from whotalk-backend
  2. npm start from whotalk-frontend

The second script will open the webpack-dev-server which refreshes everytime when the codes of the client have changed. The default port of this server is 3000. When API is requested from the webpack-dev-server, the request will be sent to the backend server through the proxy.

Build and run

To build, run following script from both of the whotalk-frontend and whotalk-backend

npm run build

Then, run following command from the whotalk-backend

npm start

The built files of whotalk-frontend will be served as static files from the backend server.

Questions?

If you have any questions, leave an email to [email protected], OR, talk to me directly at https://whotalk.us/velopert

whotalk.us's People

Contributors

velopert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

whotalk.us's Issues

Build issue

#Hello, Velopert
I appreciate so much for your doc - https://velopert.com/.
I am a newbie and want to learn React.js (have some experience in Node.js)
By the way, I want to build your Whotalk,us project in locally (Win 10), I could not do it .

From frontend console, it has some warnings from built current repo .
And my web page is blank now.
Could you please give me more detailed instructions to build yours?

In additionally, what do they means by
SECRET_KEY="SECRET_KEY"
FACEBOOK_SECRET="FACEBOOK_SECRET"
GOOGLE_SECRET="GOOGLE_SECRET"
from env file?

Thanks and looking forward to hearing from you soon.

StackMobile

image
@velopert

Animation

Search animation and password change animation is failing.

cannot start backed service

when i execute npm start , i get the response as blow :

[email protected] start /Users/liu/node/whotalk.us/whotalk-backend
node build

Cache is initialized
/Users/liu/node/whotalk.us/whotalk-backend/build/models/follow.js:30
Follow.statics.follow = function ({ followee, follower }) {
^

SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:413:25)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object. (/Users/liu/node/whotalk.us/whotalk-backend/build/routes/authentication.js:31:15)
at Module._compile (module.js:434:26)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object. (/Users/liu/node/whotalk.us/whotalk-backend/build/routes/index.js:11:23)
at Module._compile (module.js:434:26)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object. (/Users/liu/node/whotalk.us/whotalk-backend/build/index.js:39:15)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: node build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /Users/liu/.npm/_logs/2017-09-17T14_58_35_405Z-debug.log

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.