A PHP web app for exploring Screen Actors Guild Award winners
Browse nominations, productions, actor profiles, and interactive stats. Powered by TMDB, Chart.js, and SQLite.
- Demo
- Features
- Tech Stack
- Getting Started
- Project Structure
- Quality & Testing
- License
- Authors
- Acknowledgments

More screenshots inside /documentation/screenshots
Live Preview: https://actorawards.turcanu.live/
- Home Dashboard: Quick overview of total: nominations, unique actors, categories, years of data.
- Nominations Browser: Filter by year, category, actor, or production.
- Actor Profiles: Bio, SAG history, news via Google News RSS.
- Production Browser: Filter by year, category, results (win/nominated) or production title.
- Statistics charts:
- Nominations by category
- Top nominated actors with images
- Yearly nomination trends
- Top productions with posters
Exportable as CSV, SVG or WebP.
- Admin Panel:
- User management with role-based access control
- System health monitoring (disk, memory usage)
- Database and media backup tools
- System logs monitoring (error & access logs)
- Authentication & Security:
- User registration, login, password reset via email
- CSRF protection on all forms
- Password hashing with PHP's built-in functions
- Role-based access control (user/admin)
- Session management with secure cookies
- Backend: PHP 8.1+, SQLite (PDO), Composer
- Frontend: HTML5, CSS3, JavaScript
- Chart.js (via CDN)
- Font Awesome (via CDN)
- APIs & Libraries:
- TMDB API (actor/production data)
vlucas/phpdotenv(env vars)intervention/image(image processing)phenx/php-svg-lib&rosell-dk/webp-convert(SVG/WebP export)phpmailer/phpmailer(email)
- Deployment: Docker & docker-compose
- PHP 8.1 or higher
- Composer
- Docker (optional, for containerized setup)
-
Clone the repo
git clone https://github.com/denisturcanu84/ActorAwardsVisualizer.git cd ActorAwardsVisualizer -
Install PHP dependencies
composer install
-
Set up environment
cp .env.example .env
Then edit
.envto add your TMDB API key and database path.
Edit your .env file with the following settings:
# TMDB API Configuration
TMDB_API_KEY=your_api_key_here
TMDB_API_BASE_URL=https://api.themoviedb.org/3
# Database Configuration
DATABASE_PATH=database/app.db
CSV_PATH=csv/screen_actor_guild_awards.csv
# Email Configuration (for password reset)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=your_email@gmail.com
SMTP_PASSWORD="your_app_password"
SMTP_ENCRYPTION=tls
SMTP_FROM_EMAIL=your_email@gmail.com
SMTP_FROM_NAME="Actor Awards Visualizer"
# Application Settings
APP_NAME="Actor Awards Visualizer"
APP_URL=http://localhost:8000The application uses SQLite with a pre-populated database containing SAG Awards data until 2020.
Database Structure:
awards- Main table with nominations/wins dataactors- Actor profiles from TMDB APIproductions- Movies/TV shows informationusers- User authentication and rolesactor_statistics- Cached statistics for performancepassword_resets- Password reset tokens
Initial Setup:
- The database file
database/app.dbis included in the repository - Contains ~5,700 SAG Award nominations from 1995-2020
- Actors and productions are populated automatically via TMDB API when accessed
- Database schema is available in
database/schema.sql
Admin User:
- Default admin credentials are created on first run
php -S localhost:8000 -t publicOpen http://localhost:8000 in your browser.
With Docker:
docker-compose up --buildThen visit http://localhost:30112.
ActorAwardsVisualizer/
├── composer.json # PHP dependencies & autoloader
├── docker-compose.yml # Docker Container setup
├── Dockerfile # Docker Container build instructions
├── .env.example
├── csv/ # SAG Awards data CSV
│ └── screen_actor_guild_awards.csv
├── database/ # SQLite DB
│ └── app.db
├── diagrams/ # System architecture diagrams
├── documentation/ # Performance tests & screenshots
├── public/ # Web-accessible files
│ ├── index.php
│ ├── assets/ # CSS, JS, images
│ ├── pages/
│ └── admin/
├── src/ # Backend source code
│ ├── bootstrap.php
│ ├── Services/
│ ├── Repositories/
│ ├── Middleware/
│ ├── Utils/
│ ├── Views/
│ ├── Exports/
│ └── Admin/
└── vendor/ # Composer dependencies
Lighthouse reports in documentation/LightHouse Tests/ (desktop & mobile PDFs).
See documentation/screenshots/ for all interface images.
| Check | Tool | Link |
|---|---|---|
| CSS validation | W3C CSS | Validator |
| Vulnerability scan | Pentest-Tools | Report |
This project is licensed under the MIT License. See LICENSE for details.
- Denis Rafael Turcanu
- Ioan-Lucian Meraru