churchtube/README.md

68 lines
2.8 KiB
Markdown

# ⛪ 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](assets/images/screenshot.png)
## ✨ 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**:
```bash
git clone https://git.linology.tech/michael/churchtube.git
```
2. **Configure Permissions**:
Ensure the `uploads/` and `includes/` directories are writable by the web server:
```bash
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.*