Skip to content

PixelSphereApp/Enjoy-Movie

Repository files navigation

Enjoy Movie Logo

A comprehensive Flutter application for movie enthusiasts to discover, track, and stream movies across multiple platforms.

Website: www.enjoymovie.pro | Email: hello@enjoymovie.pro


Features

Movie Discovery - Browse and search movies from extensive databases

Multi-Platform Support - Runs on Android, iOS, macOS, Linux, Windows, and Web

Video Streaming - Built-in video player for streaming content

Library Management - Organize and track your movie collection

Third-Party Integrations - Trakt.tv for viewing history, SIMKL for social tracking, Rotten Tomatoes for ratings

Cloud Sync - Google Drive integration for backing up your data

Smart Notifications - Get notified about new releases and updates

VPN Support - Built-in VPN configuration for unrestricted access

Beautiful UI - Modern, responsive design with Google Fonts

Theme Customization - Dynamic color extraction from movie posters

Analytics - Firebase Analytics and Crashlytics integration


Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5


Installation

You have two options to get Enjoy Movie:

Option 1: Download Pre-Built Release (Recommended)

Visit enjoymovie.pro to download the latest pre-built release for your platform.

Available for: Android (APK) | iOS (TestFlight) | macOS (DMG) | Windows (EXE) | Linux (AppImage/DEB) | Web

No development tools required - just download and install!

Option 2: Build from Source (For Developers)

If you want to build the app yourself or contribute to development, follow these steps.

Prerequisites

Flutter SDK (^3.9.2 or higher) | Dart SDK | Android Studio / Xcode | Git

Setup Instructions

  1. Clone the repository

    git clone https://github.com/PixelSphereApp/Enjoy-Movie.git
    cd enjoy-movie
  2. Install dependencies

    flutter pub get
  3. Configure Firebase

    Create a Firebase project at Firebase Console, then download config files:

    Download google-services.json and place in android/app/
    Download GoogleService-Info.plist and place in ios/Runner/

    Use the provided example files as templates:

    # See the example files for required structure
    android/app/google-services.json.example
    ios/Runner/GoogleService-Info.plist.example
  4. Configure API Keys

    Create your API keys configuration:

    cp lib/config/api_keys.dart.example lib/config/api_keys.dart

    Then edit lib/config/api_keys.dart and add your API keys from:

    Trakt.tv: trakt.tv/oauth/applications
    SIMKL: simkl.com/settings/developer/
    Google OAuth: Google Cloud Console

  5. Run the app

    # Development mode
    flutter run
    
    # Or build for production
    flutter build apk --release          # Android
    flutter build ios --release          # iOS
    flutter build macos --release        # macOS
    flutter build linux --release        # Linux
    flutter build windows --release      # Windows
    flutter build web --release          # Web

For detailed build instructions, see SETUP.md


Supported Platforms

Platform Status Download
Android Supported enjoymovie.pro
iOS Supported enjoymovie.pro
macOS Supported enjoymovie.pro
Linux Supported enjoymovie.pro
Windows Supported enjoymovie.pro
Web Supported enjoymovie.pro

Third-Party Integrations

Firebase Services

Firebase Core | Firebase Analytics | Firebase Crashlytics

External APIs

Trakt.tv - Track viewing history and get personalized recommendations
Website: trakt.tv | Developer Portal: trakt.tv/oauth/applications
Redirect URI: enjoymovie://trakt/callback

SIMKL - Social movie and TV tracking platform
Website: simkl.com | Developer Portal: simkl.com/settings/developer/
Redirect URI: enjoymovie://simkl/callback

Google Sign-In - Cloud backup and sync functionality
Configure OAuth 2.0 credentials in Google Cloud Console
Enable Google Drive API for cloud backup

Technology Stack

Flutter | Dart | Firebase | Media Kit | Dio | Google Sign-In | Cached Network Image | Google Mobile Ads


Project Structure

enjoy-movie/
├── android/              # Android-specific code and configuration
├── ios/                  # iOS-specific code and configuration
├── macos/                # macOS-specific code and configuration
├── linux/                # Linux-specific code and configuration
├── windows/              # Windows-specific code and configuration
├── web/                  # Web-specific code and configuration
├── lib/
│   ├── config/           # App configuration and API keys
│   ├── models/           # Data models
│   ├── screens/          # UI screens
│   ├── services/         # Business logic and API services
│   ├── widgets/          # Reusable UI components
│   └── main.dart         # App entry point
├── assets/
│   └── images/           # App images and screenshots
└── test/                 # Unit and widget tests

Documentation

Quick Start Guide - Get up and running in 5 minutes
Setup Guide - Detailed setup instructions for building from source
Contributing Guide - How to contribute to the project
Security Policy - Security best practices and reporting
Privacy Policy - How we handle your data


Security & Privacy

No Hardcoded Secrets - All API keys and credentials must be configured locally
HTTPS Only - All network requests use secure HTTPS connections
Local Data Storage - Your data is stored securely on your device
Optional Cloud Backup - Sync to Google Drive only if you choose to
No Tracking - We don't collect personal data without your consent

For more information, see SECURITY.md and PRIVACY.md


Contributing

We welcome contributions from the community!

Open an issue to report bugs
Start a discussion to suggest features
Read our Contributing Guide before submitting code

Please read CONTRIBUTING.md for details on our code of conduct and the pull request process.


License

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


Disclaimer

This app is for educational and personal use.

Users are responsible for obtaining their own API keys from third-party services, complying with terms of service of third-party APIs, ensuring content sources are legal in their jurisdiction, and respecting copyright laws and intellectual property rights.


Acknowledgments

Thanks to all the open-source packages and libraries used in this project, movie data provided by various third-party APIs, and community contributors and testers.


Contact & Support

Website: enjoymovie.pro
Email: hello@enjoymovie.pro
GitHub Issues: Report a bug
GitHub Discussions: Ask questions & share ideas


Pixel Sphere

About

Turn your boring lists of movies, series, and anime into a stunning visual grid - not just data, but art - and discover to watch them for free.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published