Free and Open-source video streaming suite. https://miracle-tv.live
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Dale e830b1698a
feat: Evet *better* badge
3 weeks ago
module-releases misc: Add new module release 3 weeks ago
src feat: Better role resolution in stream keys 3 weeks ago
.gitignore feat: Ready for deployment via nix 3 weeks ago
.prettierignore feat: Added prettier 4 weeks ago
.prettierrc.json feat: Added prettier 4 weeks ago
README.md feat: Evet *better* badge 3 weeks ago
codegen.yml major: GraphQL Rewrite 4 weeks ago
default.nix misc: Better build 3 weeks ago
graphql.schema.json feat: StreamKey revocation 3 weeks ago
module.nix feat: Ready for deployment via nix 3 weeks ago
package.json misc: Better build 3 weeks ago
packages.nix feat: Working nix build 4 weeks ago
result feat: Ready for deployment via nix 3 weeks ago
tsconfig.json misc: Better build 3 weeks ago
yarn.lock feat: Ready for deployment via nix 3 weeks ago
yarn.nix feat: Ready for deployment via nix 3 weeks ago

README.md

MiracleTV

A Streaming Suite

Server part of MiracleTV Suite

Support Server

Running requirements

  • NodeJS 14>
  • Yarn
  • RethinkDB 2.4.1>

Development Requirements

  • Nix (Strongly encouraged, but optional)
  • NodeJS 14>
  • Yarn
  • RethinkDB 2.4.1>

Building and running

Non-nix

  • yarn
  • ./bin/build.sh
  • nodejs -r ts-node/register/transpile-only -r tsconfig-paths/register dist/server.js

Nix

  • nix-env -f default.nix
  • miracle-tv

Development

Non-nix

  • yarn
  • yarn dev

Nix

  • nix-shell
  • yarn-dev

GraphQL schemas, resolvers and mutations can be found in src/graphql. GraphiQL for testing is available over at http://localhost:4000/graphql for testing.

Before commit

Before commiting, if you have altered packages installed for the project, please regenerate nix/yarn.nix using yarn2nix and copy package.json and yarn.lock to /nix folder as well. This is to make sure changes to the code and not the dependecies do not trigger extra rebuilds. If you don't use nix, please reach out to somebody who can do that for you.

Deploying in Production with nix

! Software does not include migrations and is definetely not production ready, deploy at your own risk !

Download one of our module-releases files and import it in your configuration.nix, and then configure it like so

sudo wget https://code.gensokyo.social/Gensokyo.social/miracle-tv/raw/branch/develop/module-releases/0-1-0-2.nix -P /etc/nixos/miracle-module.nix
# configuration.nix
{
    imports = [
        # ... your other imports
        ./miracle-module.nix
    ];
    
    # ... your configration.nix
    
    services.miracle-tv = {
        enable = true;
        settings = {
            name = "My MiracleTV instance";
            server = { 
                port = "8080";
            };
        };
    };
}
  • (Optionally) proxy pass http://localhost:4000 via web server of your choice. GraphQL Playground will be available at ${yourdomain}/graphql.

nixos-rebuild switch should download and compile everything. Look for full list of options inside the module file.