Skip to content

jmnorheim/Movi.com

Repository files navigation

Movi.com

This project was our product for the NTNU subject IT2810 (Web Development).

Movi.com is a movie-database website where users can browse more than 260 000 movies. Users can create an account, browse movies by searching, sorting or filtering, make custom libraries and add movies to them. The complete feature list can be found on our detailed wiki page. A guide on how to run the project can be found underneath the pictures of the website.

Pictures from the website:

Home Page

📷More pictures

Movies Filters Movie Page Library Page Classics Page Profile

Setup & Startup

  1. Prerequisites:

    • Install Node.js v20.5+ and npm v9.8+ (npm comes with Node.js installation ).
    • Ensure Vite 4.4+ is set up (Should come with Node.js also).
    • Or use Docker v24+ and follow instructions below.
  2. Installation:

    • Clone the repo:
    git clone https://github.com/Jensern1/Movi.com.git
    • Navigate to the project directory:
      cd Movi.com/
    • Install dependencies:
    npm run setup
    • Install dependencies (Docker version):
    docker-compose build

All following commands should be run from the outer folder (not inside frontend or backend)

  1. Starting the Project:

    • Run server:
    npm run server
    • Run client:
    npm run dev
    • Run server and client with Docker:
    docker-compose up
  2. Testing:

    • Run backend-tests:
    npm run test:backend
    • Run frontend-tests:
    npm run test:frontend
    • Run Cypress:
    npx cypress open

    then choose E2E testing, then choose Electron. You need to be on the NTNU network or connected to it via a VPN (Cisco AnyConnect) to conduct the Cypress tests.

  3. Code formatting:

    • Run both linting (ESLint) and Prettier:
    npm run lint:fix
    • Run only linting:
    npm run lint

Note: If you want to test the project on mobile while running it locally, you need to navigate into interfaces.ts and modify the SERVER_URL to "http://" followed by the IP-address displayed after the "Network:"-text in the terminal and then append ":4000" at the end. Example: If the terminal contains: "Network: http://192.168.0.105:5173/", the SERVER_URL should be "http://192.168.0.105:4000".

Contributors

Daniel Neukirch Hansen
Daniel Neukirch Hansen
Jens Martin Norheim Berget
Jens Martin Norheim Berget

Bjørn Melaaen

About

Movie browsing website with over 260 000 movies!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published