1
0
mirror of https://github.com/algora-io/tv.git synced 2025-01-05 01:20:24 +02:00
Open source Twitch for developers
Go to file
2024-03-06 18:51:57 +03:00
assets revamp layout (#3) 2024-03-06 18:02:42 +03:00
config initial commit 2024-02-29 22:31:42 +03:00
lib revamp layout (#3) 2024-03-06 18:02:42 +03:00
priv revamp layout (#3) 2024-03-06 18:02:42 +03:00
rel initial commit 2024-02-29 22:31:42 +03:00
scripts add script for backfilling video info 2024-03-06 18:51:57 +03:00
.credo.exs initial commit 2024-02-29 22:31:42 +03:00
.dockerignore initial commit 2024-02-29 22:31:42 +03:00
.env.example initial commit 2024-02-29 22:31:42 +03:00
.formatter.exs initial commit 2024-02-29 22:31:42 +03:00
.gitignore initial commit 2024-02-29 22:31:42 +03:00
.iex.exs initial commit 2024-02-29 22:31:42 +03:00
Dockerfile initial commit 2024-02-29 22:31:42 +03:00
fly.toml initial commit 2024-02-29 22:31:42 +03:00
LICENSE initial commit 2024-02-29 22:31:42 +03:00
mix.exs initial commit 2024-02-29 22:31:42 +03:00
mix.lock initial commit 2024-02-29 22:31:42 +03:00
README.md initial commit 2024-02-29 22:31:42 +03:00

Logo

Algora TV

The interactive livestreaming & video sharing service for developers.
Website · Discord · Twitter · YouTube · Issues

Architecture

graph
    Streamer{Streamer} --> Fly
    Fly[Elixir App - Fly] --> RTMP
    Fly --> Web[Web Server - Phoenix]
    Fly --> Db[Postgres - Fly]
    RTMP[RTMP Server - Membrane] -->|First mile delivery| Tigris[Object Storage - Tigris]
    Viewers{Viewers} -->|Last mile delivery| Tigris
    Viewers --> Fly

Getting Started

To get a local copy up and running, please follow these steps.

Prerequisites

Here is what you need to be able to run Algora TV.

  • Elixir (Version: >=1.12)
  • OTP
  • PostgreSQL

Development

Setup

  1. Clone the repo into a public GitHub repository (or fork https://github.com/algora-io/tv/fork).

    git clone https://github.com/algora-io/tv.git
    
  2. Go to the project folder

    cd tv
    
  3. Install dependencies with mix

    mix deps.get
    
  4. Set up your .env file

    • Duplicate .env.example to .env
    • Add your environment variables in the .env file
  5. Create and migrate your database with mix

    mix ecto.setup
    
  6. Start your development server

    env $(cat .env | xargs -L 1) iex -S mix phx.server
    

License

Distributed under the AGPLv3 License. See LICENSE for more information.

Acknowledgements

Special thanks to these amazing projects which help power Algora TV: