An example full stack Javascript app with React, universal Redux, RethinkDB, and Express (3REE). Oh, and Webpack with HMR and Babel behind the scenes, too.
Also includes authentication via Passport, realtime updating via RethinkDB Changefeeds and Socket.io, and server side rendering.
This application allows Users to create Organizations, which can hold Dashboards full of Lists of Resources (URLs), which update in realtime.
This application is still a WIP - as a result, actions such as editing/deleting resources or lists individually are incomplete.
-
Download the project:
git clone [email protected]:hoodsy/3ree-auth-example.git
-
Install dependencies:
npm install
-
Install RethinkDB
-
Run RethinkDB from outside the project:
rethinkdb
RethinkDB will create a data folder in place - these files shouldn't be included in the project -
Open a new terminal window and init the DB, tables, indexes:
npm run init
- Simply run:
npm start
and navigate to localhost:3000
OAuth keys for Google and Facebook do not come included in this project - simply add your keys to server/config/passport/keys.example.js
and rename the file to keys.js
to use OAuth.
All the things! Including:
- Tests
- Password encryption
- Server with: generators, promises
- Finished/polished app functionality (edit/delete)
- Webpack split into prod/dev
- True HMR (affected by stateless components)
... And many other things.