Skip to main content
This is the install path for CodeCanyon buyers. Start here after you download the ZIP. Online docs stay the source of truth: docs.streamly.watch. The ZIP also includes README-FIRST.txt and install-guide.txt - read those first on disk, then follow this page. Time: ~30–60 minutes for a first local run (plus DNS/TLS when you deploy).

What you get after install

One deploy = one streaming brand. Payments, video CDNs, ads, analytics, and email are enabled later as Plugins.
Streamly does not provide copyrighted media. You must have rights to every source you attach.

Package contents

After you extract the CodeCanyon ZIP you should see:
Finder window showing documentation, install-guide.txt, LICENSE.txt, README-FIRST.txt, and the streamly app folder.

CodeCanyon package root - open README-FIRST.txt, then the streamly/ app folder.

Full tree: Folder Structure.

Requirements

First operator login also needs: Optional later: Stripe / PayPal, video plugins, ads, analytics. Details: Requirements.

Step 1 - Extract and open the app

  1. Extract the ZIP.
  2. Open streamly-1.0.1/streamly/ in your editor (the app folder).
  3. Open a terminal inside that folder.
You should see package.json, .env.example, DEPLOYMENT.md, app/, supabase/migrations/, themes/, plugins/, addons/.

Step 2 - Install dependencies

Step 3 - Create Supabase and run migrations

  1. Create a new project at supabase.com/dashboard.
  2. Settings → API - copy:
    • Project URL → NEXT_PUBLIC_SUPABASE_URL
    • anon public key → NEXT_PUBLIC_SUPABASE_ANON_KEY
    • service_role key → SUPABASE_SERVICE_ROLE_KEY
  3. SQL Editor - run every file in supabase/migrations/ in numeric / filename order.
  4. Authentication → URL Configuration:
    • Site URL = your public URL (or http://localhost:3000 locally)
    • Add redirect URLs that include /auth/callback
There is no single INSTALL.sql / schema.sql. Use supabase/migrations/ only.
Guide: Supabase Configuration.

Step 4 - Environment variables

Minimum:
First operator bootstrap (set on the host / Vercel / Wrangler secrets):
These two values are server-only. Do not prefix them with NEXT_PUBLIC_. After the first operator signs in, you can remove STREAMLY_INITIAL_ADMIN_PASSWORD and redeploy. Payment and analytics keys are usually pasted later in Admin → Plugins (encrypted) - not only in .env. Full list: Environment Variables.

Step 5 - Run locally

Open:
Streamly admin operator sign-in screen.

Operator sign-in - email and password on /admin/login.

Compare with the live demo: streamly.watch.

Step 6 - Sign in as operator

  1. Open /admin/login.
  2. Enter the email and password. On a new install these must match STREAMLY_INITIAL_ADMIN_EMAIL and STREAMLY_INITIAL_ADMIN_PASSWORD.
  3. Finish onboarding → /admin/overview.
After the first operator exists, /api/admin/login only authenticates users already marked is_operator=true. Unknown emails cannot become operators. Public viewer signup never grants operator access.

Step 7 - Deploy (when ready)

Also see DEPLOYMENT.md inside the app folder. After deploy, sign in on your production URL with the bootstrap operator credentials (or the existing operator password if you already completed first login).

Step 8 - First product setup

Bank-transfer viewers stay on Free until you Approve in /admin/subscriptions. Full checklist: First Launch Checklist.

Troubleshooting

More: Deployment FAQ, General FAQ.