Git Product home page Git Product logo

rate-movies's Introduction

rate-movies

Rate Movie Webapp - BAOT's 30 hours project

movie-rate infrastructure skeleton was taken from 'create-react-app-light' (NOT original create-react-app): https://github.com/yarindeoh/create-react-app-light

Frontend & Backend technical stack

  • React (JavaScript library for building user interfaces)
  • babel (transpile latest javascript code to supported browser code) including support of ES6
  • webpack (build tool, bundling and packaging javascript code)
  • webpack-dev-server (running in dev mode)
  • eslint (lint tool for auto indentation and standards)
  • Redux (state management maybe will be changed in the future)
  • SASS (maybe will be changed in the future to plain css)
  • jest (test framework configuration is set for the future use)
  • nodemon (monitor node changes and automatically restart the server)
  • express (web application framework for Node.js)

What you need on your computer

  • nodejs (latest version)
  • npm/yarn as you wish
  • IDE such as webstorm
  • Mongo DB

Configure your IDE(webstorm or others) to use code indent standard

In settings look for eslint option: enable and change it's path to point relatively to node_modules/eslint

Development mode

In the development mode, we will have 2 servers running. The front end code will be served by the webpack dev server which helps with hot and live reloading. The server side Express code will be served by a node server using nodemon which helps in automatically restarting the server whenever server side code changes.

Production mode (in the future)

In the production mode, we will have only 1 server running. All the client side code will be bundled into static files using webpack and it will be served by the Node.js/Express application.

Quick start in Development mode

  1. Install all dependencies (backend + frontend)
yarn install 

OR

npm install 

***NOTE: run the server and the client in parallel from 2 terminals

  1. Run frontend locally in dev mode using webpack-dev-server running on port 9000
yarn dev-client

OR

npm run dev-client 
  1. Run backend locally in dev mode using nodemon running on port 3000
yarn dev-server

OR

npm run dev-server 

Optional script for fixing lint issues using eslint

yarn lint-fix

run the InitDB app by: npm run init-db

Use Mongo DB

After installing MongoDB you can manipulate the db using the mongo shell. mongo shell located here: "C:\Program Files\MongoDB\Server\4.0\bin\mongo.exe". the initDB app create a db called rate-movies. after running InitDB open mongo shell and verify you have data.

  1. type "show dbs" and verify rate-movies is in the list
  2. type "use rate-movies"
  3. type "db.movies.find()" to see all the movies in the DB ("movies" is a collection inside the db "rate-movies")

Running the code in production

In the future ...

rate-movies's People

Contributors

limonana avatar yarindeoh avatar bardeu avatar yama-aa avatar sshanile50 avatar iahelr avatar lahavmaayan avatar

Watchers

James Cloos avatar

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.