My-Movies-Wall

# 🎬 My Movies Wall My Movies Wall Demo ### *A nostalgic Windows 95-inspired movie poster gallery* [![HTML](https://img.shields.io/badge/HTML-E34F26?style=for-the-badge&logo=html5&logoColor=white)](https://developer.mozilla.org/en-US/docs/Web/HTML) [![CSS](https://img.shields.io/badge/CSS-1572B6?style=for-the-badge&logo=css3&logoColor=white)](https://developer.mozilla.org/en-US/docs/Web/CSS) [![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black)](https://developer.mozilla.org/en-US/docs/Web/JavaScript) [![Node.js](https://img.shields.io/badge/Node.js-339933?style=for-the-badge&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![Express](https://img.shields.io/badge/Express-000000?style=for-the-badge&logo=express&logoColor=white)](https://expressjs.com/) --- **[Features](#-features) β€’ [Demo](#-demo) β€’ [Installation](#-installation) β€’ [Usage](#-usage) β€’ [Customization](#-customization) β€’ [Contributing](#-contributing)** ---

✨ Features

### 🎨 Retro Aesthetic - Authentic Windows 95 UI design - Pastel gradient desktop backgrounds - Classic window chrome with beveled borders - CRT scanline effects for that vintage vibe ### πŸš€ Modern Functionality - Responsive grid layout - Smooth hover animations - Lazy-loading images - Fallback poster support - Express.js backend API

🎭 Demo

The application displays your favorite movies in a stunning retro-themed poster wall, complete with:

πŸ› οΈ Installation

Prerequisites

Quick Start

# Clone the repository
git clone https://github.com/willow788/My-Movies-Wall.git

# Navigate to project directory
cd My-Movies-Wall/code

# Install dependencies
npm install

# Start the server
npm start

The application will be running at http://localhost:3000 πŸŽ‰

πŸ“– Usage

Adding Movies

Edit the code/movies.json file to add your favorite movies:

[
  {
    "title": "Your Movie Title",
    "poster": "/imgs/your-poster.jpg"
  }
]

File Structure

My-Movies-Wall/
β”œβ”€β”€ code/
β”‚   β”œβ”€β”€ index.html          # Main application UI
β”‚   β”œβ”€β”€ server.js           # Express server
β”‚   β”œβ”€β”€ movies.json         # Movie data
β”‚   β”œβ”€β”€ sync-posters.mjs    # Poster sync utility
β”‚   β”œβ”€β”€ check-posters.mjs   # Poster validation
β”‚   └── check-sizes.mjs     # Image size checker
β”œβ”€β”€ Demonstration/
β”‚   └── Demo.png            # Screenshot
└── README.md

🎨 Customization

Changing Color Scheme

The app uses CSS custom properties for easy theming. Edit these variables in index.html:

:root {
  --desktop-1: #ffd6ea;      /* Primary desktop gradient */
  --desktop-2: #d9d9ff;      /* Secondary desktop gradient */
  --desktop-3: #c8f1ff;      /* Tertiary desktop gradient */
  --accent-a: #7c6cff;       /* Purple accent */
  --accent-b: #ff5aa6;       /* Pink accent */
  --accent-c: #3aa7ff;       /* Blue accent */
}

Adjusting Grid Layout

Modify the grid template in the .wall class:

.wall {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 28px;
}

πŸ”§ API Endpoints

Endpoint Method Description
/ GET Serves the main HTML page
/api/movies GET Returns JSON array of movies

🌟 Design Highlights

πŸ“Έ Screenshots

The demo image shows the complete retro interface with:

🀝 Contributing

Contributions are welcome! Here’s how you can help:

  1. 🍴 Fork the repository
  2. 🌿 Create a feature branch (git checkout -b feature/AmazingFeature)
  3. πŸ’Ύ Commit your changes (git commit -m 'Add some AmazingFeature')
  4. πŸ“€ Push to the branch (git push origin feature/AmazingFeature)
  5. πŸŽ‰ Open a Pull Request

πŸ’ Credits

πŸ“ License

This project is licensed under the MIT License.

πŸ’‘ Inspiration

This project combines:


### 🎬 Show off your favorite movies in style! 🎬 Made with πŸ’œ by [willow788](https://github.com/willow788) ⭐ Star this repo if you love retro aesthetics! ⭐