readme
This commit is contained in:
+121
@@ -0,0 +1,121 @@
|
||||
|
||||
# Local Movie Database
|
||||
|
||||
A clean, fast, and fully offline web application to browse and search your personal movie database (built from TMDB data).
|
||||
|
||||
The app displays movies in a beautiful card-based interface with posters, ratings, release years, full language names, and descriptions. Everything runs locally on your machine.
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
* Beautiful movie cards with TMDB posters
|
||||
* Search by title or keyword
|
||||
* Filter by:
|
||||
|
||||
* Genre (multi-select)
|
||||
* Language (shows full names like "English", "Japanese", "Greek", etc.)
|
||||
* Minimum rating
|
||||
* Minimum vote count
|
||||
* Year range
|
||||
* "Load More" button — loads 100 movies at a time
|
||||
* No artificial result limit — you can keep loading until all matching results are shown
|
||||
* Fully responsive 4-column layout
|
||||
* Completely local (no data sent online)
|
||||
|
||||
---
|
||||
|
||||
## Requirements
|
||||
|
||||
* Python 3.10 or higher
|
||||
* `streamlit`
|
||||
* `pandas`
|
||||
* A prepared SQLite database file named `movies.db` (≈1.4 million movies)
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
### 1. Clone the repository
|
||||
|
||||
```
|
||||
git clone <your-repo-url>
|
||||
cd movie-project
|
||||
```
|
||||
|
||||
### 2. Install dependencies
|
||||
|
||||
```
|
||||
pip install streamlit pandas
|
||||
```
|
||||
|
||||
Or using the requirements file:
|
||||
|
||||
```
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 3. Add your database
|
||||
|
||||
Place your `movies.db` file in the root folder (same directory as `movie_app.py`).
|
||||
|
||||
**Important:** The database must contain a table named `movies` with at least these columns:
|
||||
|
||||
* `title`
|
||||
* `release_date`
|
||||
* `vote_average`
|
||||
* `vote_count`
|
||||
* `overview`
|
||||
* `original_language`
|
||||
* `poster_path`
|
||||
* `genres`
|
||||
* `popularity`
|
||||
|
||||
### 4. Run the app
|
||||
|
||||
```
|
||||
streamlit run movie_app.py
|
||||
```
|
||||
|
||||
The application will automatically open in your default web browser.
|
||||
|
||||
---
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
movie-project/
|
||||
├── movie_app.py
|
||||
├── movies.db
|
||||
├── README.md
|
||||
├── requirements.txt
|
||||
└── .gitignore
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## requirements.txt
|
||||
|
||||
```
|
||||
streamlit
|
||||
pandas
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
* The first search may take a few seconds while the genre list is built.
|
||||
* Movie posters are loaded from TMDB’s public image server: [https://image.tmdb.org](https://image.tmdb.org)
|
||||
* You can keep clicking "Load More" until all matching results are displayed.
|
||||
* Best performance when the database has been cleaned (adult content removed).
|
||||
|
||||
---
|
||||
|
||||
## Tech Stack
|
||||
|
||||
* UI Framework: Streamlit
|
||||
* Database: SQLite
|
||||
* Data Processing: pandas
|
||||
* Data Source: TMDB movie dataset
|
||||
|
||||
Reference in New Issue
Block a user