churchtube/README.md

2.8 KiB

ChurchTube

ChurchTube is a premium, self-hosted video platform designed specifically for churches to share sermons and media with their congregation. It features a modern, "YouTube-like" interface with advanced moderation and branding tools.

ChurchTube Preview

Features

  • Premium UX: Modern, responsive design with forced Dark Mode and glassmorphism.
  • Dual Video Sources: Upload videos directly or link them from external sources (NAS, Google Drive, Cloud).
  • Smart Google Drive Support: Automatically converts Google Drive links for seamless embedding and mobile-friendly controls.
  • User Identity:
    • Custom User Avatars for a more personal community experience.
    • Profile management for passwords and identity.
  • Timestamped Bookmarks: Save the exact second of a sermon and jump back to it later from your profile.
  • Interactive Community:
    • AJAX-based commenting (no video reloads).
    • 5 reaction types (👍, ❤️, 🙏, 💡, 👏).
    • Automated Profanity Filter with auto-reporting.
    • Users can delete their own comments.
  • Administrative Accountability:
    • System Logs: Track logins, failed attempts, video plays, and comment history with IP address auditing.
    • Role-Based Access Control (Admin, Moderator, Editor, User).
  • Custom Branding: Real-time control over site title, colors, logo, and footer.
  • Search & Discovery: Keyword search, intelligent recommendations, and pagination.

🛠️ Technology Stack

  • Backend: PHP 7.4+ (PDO for database security)
  • Database: MySQL / MariaDB
  • Frontend: Vanilla HTML5, CSS3 (Modern Flexbox/Grid), Javascript (ES6+)
  • Icons: FontAwesome 6+

🚀 Installation

  1. Clone the repository:

    git clone https://git.linology.tech/michael/churchtube.git
    
  2. Configure Permissions: Ensure the uploads/ and includes/ directories are writable by the web server:

    chmod -R 775 uploads/ includes/
    chown -R www-data:www-data uploads/ includes/
    
  3. Run the Wizard: Navigate to http://yourdomain.com/install.php in your browser. The First-Run Wizard will guide you through:

    • PHP environment checks (upload limits, extensions).
    • Database connection setup.
    • Creating the primary Admin account.
  4. Security Hardening: After installation, it is recommended to delete install.php or set its permissions to 000.

📁 Storage Recommendations

  • Local Storage: Best for high performance if your server has ample space.
  • NAS/Cloud: Perfect for large libraries. Simply provide the direct link to the MP4 file or a Google Drive "view" link.

📄 License

This project is licensed under the MIT License. Feel free to use and modify it for your church's needs.


Built with love for the Church community.