Skip to content

A full-stack web application for submitting and viewing movie reviews, with sentiment analysis powered by IBM Watson Natural Language Understanding and data storage in IBM Cloudant NoSQL DB.

License

Notifications You must be signed in to change notification settings

suletetes/Movie-Reviews-Database

 
 

Repository files navigation

Movie Reviews Database

A full-stack web application for submitting and viewing movie reviews, with sentiment analysis powered by IBM Watson Natural Language Understanding and data storage in IBM Cloudant NoSQL DB.

Features

  • Submit movie reviews with your name and the movie title
  • Sentiment analysis of reviews using IBM Watson NLU
  • Store and retrieve reviews from IBM Cloudant
  • View all submitted reviews and their sentiment

Technologies Used

  • Node.js & Express.js
  • IBM Watson Natural Language Understanding
  • IBM Cloudant NoSQL DB
  • EJS templating
  • Bulma CSS framework

Prerequisites

  • Node.js (v12+ recommended)
  • npm
  • IBM Cloudant and IBM Watson NLU service credentials (or a .env file with the required keys)

Setup

  1. Clone the repository:

    git clone https://github.com/suletetes/Movie-Reviews-Database
    cd Movie-Reviews-Database
  2. Install dependencies:

    npm install
  3. Configure environment variables:

    • Create a .env file in the root directory with the following content:
      NLU_APIKEY=your-ibm-watson-nlu-apikey
      NLU_URL=your-ibm-watson-nlu-url
      CLOUDANT_API=your-cloudant-apikey
      CLOUDANT_URL=your-cloudant-url
    • Alternatively, bind the required services if deploying to IBM Cloud.
  4. Run the application:

    node server.js

    The app will be available at http://localhost:8080 by default.

Usage

  • Visit the home page to check service status.
  • Go to /reviews to view all reviews or submit a new one.
  • Each review will be analyzed for sentiment (positive, negative, or neutral).

Project Structure

  • server.js - Main server file
  • views/ - EJS templates and static assets
  • utils/strings.json - User-facing strings and error messages

Deployment

  • The app can be deployed to IBM Cloud using the provided manifest.yml.
  • A Dockerfile is included for containerized deployments.

About

A full-stack web application for submitting and viewing movie reviews, with sentiment analysis powered by IBM Watson Natural Language Understanding and data storage in IBM Cloudant NoSQL DB.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 90.2%
  • EJS 9.4%
  • Dockerfile 0.4%