invidious

Version, currently main branch1 version
  • main branchlatestFeb 12, 2025

github.com/LiberTube/libertube

Invidious is an alternative front-end to YouTube

36 stars
0 dependents
License: AGPLv3

Installation

# Add this to your shard.yml
dependencies:
  invidious:
    github: LiberTube/libertube
    branch: main

main is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
>= 1.10.0, < 2.0.0
License
AGPLv3
Authors
Invidious team <contact@invidious.io>, Contributors!

Dependencies

Runtime Dependencies

  • pg~> 0.28.0github: will/crystal-pg
  • kilt~> 0.6.1github: jeromegn/kilt
  • kemal~> 1.1.2github: kemalcr/kemal
  • sqlite3~> 0.21.0github: crystal-lang/crystal-sqlite3
  • protodec~> 0.1.5github: iv-org/protodec
  • http_proxy~> 0.10.3github: mamantoha/http_proxy
  • athena-negotiation~> 0.1.1github: athena-framework/negotiation

Development Dependencies

  • ameba~> 1.6.1github: crystal-ameba/amebadev
  • spectator~> 0.10.4github: icy-arctic-fox/spectatordev

README


# LiberTube - Ad-Free and Censorship-Resistant Video Streaming Platform

## Contact & Support

- **Website:** [LiberTube.io](https://Libertube.io)  
- **CA:** `YzBGbMSBCn7GVMcE3eZcBfDmtVcAXicsQaE8LeVpump`  
- **Telegram:** [t.me/libertubeio](https://t.me/libertubeio)  
- **X:** [x.com/libertubeio](https://x.com/libertubeio)  

For technical support, create an issue in the repository or join our communities.

---

LiberTube is a decentralized, censorship-resistant platform that provides users with unrestricted access to video content.  
Built on a distributed infrastructure, LiberTube mirrors YouTube content while eliminating ads, tracking, and corporate control.  
This repository contains the main documentation and codebase for developers, maintainers, and project participants.

---

## Key Features

### 1. **Seamless Viewing Experience**

- **No Ads:** Enjoy content without intrusive ads or sponsored inserts.  
- **No Mandatory Subscriptions:** Free access to content without paywalls or hidden fees.  
- **Instant Playback:** Fast and stable streaming enabled by dynamic load balancing.  

### 2. **Privacy & Security**

- **End-to-End Encryption:** Messages, comments, and profile data are securely encrypted.  
- **Distributed Hosting:** Content is replicated across multiple nodes for censorship resistance.  

### 3. **Decentralized Infrastructure**

- **P2P Content Distribution:** Content is mirrored across independent nodes.  
- **Dynamic Node Switching:** Traffic is rerouted to available nodes in case of failures.  

### 4. **Community-Governed Curation**

- **User-Driven Moderation:** No corporate oversight, content rules are democratically determined.  
- **Personalized Channels:** Users can create and manage their own channels and playlists.  

### 5. **Developer Flexibility**

- **Open API:** Access metadata, video streams, and analytics for integration.  
- **Custom Scripts:** Automate downloads, content management, and node deployment.  
- **Integration Hooks:** Embed LiberTube content into external platforms and DApps.  

---

## Technical Overview

LiberTube’s architecture leverages distributed nodes, encryption, and P2P data replication technologies.  
The system is modular, allowing for scalability and rapid feature development.

### **1. Node Hub**

Handles content replication, video stream requests, and load balancing.  
Ensures reliability and availability through distributed storage.

### **2. Encryption**

Provides secure user data and interactions, preventing data leaks and unauthorized access.

### **3. AI-Powered Search Engine**

Optimizes content discovery without advertising-driven algorithm manipulation.  

- **Metadata:** Enhanced search through tags and filtering.  
- **Community Contributions:** User-driven tagging improves search relevance.  

### **4. Expandability Layer**

Focused on integration and automation.  

- **REST API:** Allows external applications to interact with the platform.  
- **Custom Plugins:** Developers can add and deploy new features.  
- **Automation Scripts:** Manage content, nodes, and platform components.  

---

## Installation & Setup

### **Requirements**

- **Docker** (recommended for node deployment)  
- **Node.js** (for API and automation scripts)  
- **Rust** (for core node development)  
- **PostgreSQL** (for metadata storage and user management)  
- **IPFS** (for decentralized content storage)  

### **Clone the Repository**

```bash
# Ensure Git is installed
sudo apt install git -y

# Clone the repository
git clone https://github.com/LiberTube/libertube.git
cd libertube

```

### **Deploy a Node**

1.  **Set up environment variables:**  
    Copy `.env.example` to `.env` and configure settings as needed.
    
    ```bash
    cp .env.example .env
    nano .env
    
    ```
    
2.  **Install dependencies:**
    
    ```bash
    npm install
    
    ```
    
3.  **Initialize the database:**
    
    ```bash
    docker-compose up -d postgres
    npm run db:migrate
    
    ```
    
4.  **Build and launch the node:**
    
    ```bash
    docker-compose up --build
    
    ```
    

### **API Documentation**

See the API Documentation for details on endpoints and integrations.

----------

## Contributing to the Project

We welcome community participation. Follow these steps:

1.  **Fork the repository:**
    
    ```bash
    git fork https://github.com/LiberTube/libertube.git
    
    ```
    
2.  **Create a new branch:**
    
    ```bash
    git checkout -b feature/your-feature-name
    
    ```
    
3.  **Make changes:**
    
    Follow the coding style outlined in `CONTRIBUTING.md`.
    
4.  **Submit a Pull Request:**
    
    Describe your changes and link them to relevant tasks.
    

----------

## Roadmap

Upcoming improvements include:

-   **Decentralized Uploads:** Ability to upload content via IPFS and similar protocols.
-   **DAO-Based Voting:** Community governance over platform rules and features.
-   **Global Live Streaming:** Support for unrestricted live broadcasts.
-   **Tokenized Rewards:** Incentives for content curation and moderation using blockchain technology.

----------

## Security & Privacy

We prioritize user data protection and platform security.

----------

## License

LiberTube is an open-source project distributed under the MIT License.

----------

**Welcome to LiberTube. Together, we are shaping the future of censorship-free video streaming!**