Webpack
bundles all files set by the webpack.config.js
input folder together so it will load in one script tag. The purpose is to create big chunks that can be loaded asynchronously to reduce initial loading time.
Input your mood and receive a giphy, quote, and music video!
Dependencies in package.json
"babel-cli": "^6.7.7",
"babel-core": "^6.7.7",
"babel-loader": "^6.2.4",
"babel-preset-es2015": "^6.6.0",
"babel-preset-react": "^6.5.0",
"babel-preset-stage-1": "^6.5.0",
"babel-register": "^6.7.2",
"bcrypt-nodejs": "0.0.3",
"body-parser": "^1.15.0",
"bootstrap": "^3.3.6",
"chai": "^3.5.0",
"chai-things": "^0.2.0",
"connect-flash": "^0.1.1",
"eslint": "^2.9.0",
"eslint-plugin-import": "^1.6.1",
"eslint-plugin-jsx-a11y": "^1.0.4",
"express": "^4.13.4",
"express-react-views": "^0.10.1",
"express-session": "^1.13.0",
"flash": "^1.1.0",
"jquery": "^2.2.3",
"material-ui": "^0.15.0",
"mocha": "^2.4.5",
"mysql": "^2.10.2",
"nodemon": "^1.9.1",
"react": "^15.0.2",
"react-bootstrap": "^0.29.4",
"react-dom": "^15.0.2",
"react-infinite": "^0.9.2",
"react-tap-event-plugin": "^1.0.0",
"request": "^2.72.0",
"sequelize": "^3.22.0",
"webpack": "^1.13.0"
From within the root directory:
npm install
After everything installed using npm install
, update the API key in /server/config/authconfig.js
for YouTube. The authConfig-example.js
file is provided for you. Just remove -example and update keys.
mysql.server --start
mysql -u -root -p
webpack --watch
npm start
Navigate to localhost:8080
to view the app.
To run tests using Mocha
and Chai
, run
npm test
View the project roadmap here
Database in MySQL
, using Sequelize
.
Sign Up: POST: /signup
Log In: POST: /login`
Saves Inputted Mood: POST: /api/moods
Retrieves All Moods: GET: api/moods
Produce a Quote: GET: /api/wikiInfo
Save Particular Quote: POST: /api/quotes
Retrieves All Quotes: GET: /api/quotes
Retrieves Quote by ID: GET: /api/quotes/:id
Produce a GIF: GET: /api/giphyInfo
Save Particular GIF: POST: /api/giphys
Retrieves All GIFs: GET: /api/giphys
Retrieves GIF by ID: GET: /api/giphys/:id
Produce a Youtube Video ID: GET: /api/musicInfo
Save Particular Video ID: POST: /api/music
Retrieves All Video IDs: GET: /api/music
Retrieve Video ID by ID: GET: /api/music/:id
Retrieves Quotes by User ID: GET: /api/user/quotes
Retrieves GIFs by User ID: GET: /api/user/giphys
Retrieves Video ID by User ID: GET: /api/user/music
Deployed using __Digital Ocean__
. Installed a MySQL Database. Live at moodly.io!