Coder Social home page Coder Social logo

movies-app's Introduction

Movies App

Welcome to the Movies App! This is a full-stack application that allows users to search for movies, view details, and keep track of their search history. The app is built with a React frontend, a Node.js/Express backend, and uses a MongoDB database. The project demonstrates a complete workflow from frontend to backend, showcasing my skills in full-stack development.

Live Demo

Check out the live version of the app here.

Table of Contents

Installation

To run this project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/yourusername/movies-app.git
    cd movies-app
  2. Set up the backend:

    cd movies-app-api
    npm install
  3. Set up the frontend:

    cd ../movies-app-webclient
    npm install
  4. Set up the database:

    Ensure you have Docker installed and running. Then, in the root directory of the project:

    docker-compose up -d
  5. Run the application:

    • In one terminal, start the backend:

      cd movies-app-api
      npm start
    • In another terminal, start the frontend:

      cd movies-app-webclient
      npm start
  6. Access the app:

    Open your browser and go to http://localhost:3000.

Usage

Once the app is running, you can use the search bar to find movies by title. Clicking on a movie will show detailed information about it. Your search history is saved and displayed below the search bar.

Features

  • Search for Movies: Find movies by their title.
  • Movie Details: View detailed information about each movie.
  • Search History: Keep track of your recent searches.
  • Responsive Design: Works well on both desktop and mobile devices.

Technologies Used

  • Frontend:

    • React
    • CSS
  • Backend:

    • Node.js
    • Express
  • Database:

    • MongoDB
    • Mongoose
  • Miscellaneous:

    • Docker
    • Docker Compose

Project Structure

movies-app/
├── docker-compose.yml
├── movie-app-db/                  # MongoDB setup
│   └── Dockerfile
├── movies-app-api/                # Backend
│   ├── Dockerfile
│   ├── package.json
│   ├── package-lock.json
│   ├── server.js                  # Express server
│   └── build/                     # Frontend build files
├── movies-app-webclient/          # Frontend
│   ├── public/
│   ├── src/
│   │   ├── components/            # React components
│   │   ├── assets/                # Images and other assets
│   │   ├── api/                   # API calls
│   │   ├── App.js
│   │   ├── index.js
│   │   └── index.css
│   ├── package.json
│   └── package-lock.json
└── .gitignore

License

This project is licensed under the MIT License. See the LICENSE file for details.

This project was created as a demonstration of my full-stack development skills. I hope you find it useful and inspiring. Feel free to reach out if you have any questions or feedback!

Happy coding!

movies-app's People

Contributors

davejamieson avatar

Watchers

 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.