[-] eli6@lemmy.world 1 points 3 weeks ago* (last edited 3 weeks ago)

you are right, my bad. render publishes fixed CIDR ranges per region, you can get them from the dashboard and allowlist those in atlas instead of 0.0.0.0/0. updating the readme

[-] eli6@lemmy.world 1 points 3 weeks ago

popups came from the embed iframes, not the site itself. removed allow-popups from the sandbox so they cant do that anymore

[-] eli6@lemmy.world 1 points 3 weeks ago

yeah same answer as the other comment — render free tier has no static IPs so you cant restrict by IP at all. strong credentials are the actual protection, not IP allowlisting

[-] eli6@lemmy.world 1 points 3 weeks ago

believe what you want

[-] eli6@lemmy.world 1 points 3 weeks ago* (last edited 3 weeks ago)

popups were coming from window.open() inside the embed iframes, removed allow-popups from the sandbox so that cant happen anymore. should be good now

[-] eli6@lemmy.world 2 points 3 weeks ago* (last edited 3 weeks ago)

yeah you were right, my bad. embeds were calling window.open() and the sandbox let it through. removed allow-popups so they cant do that anymore, video still works fine. give it another try if you want

[-] eli6@lemmy.world 1 points 3 weeks ago* (last edited 3 weeks ago)

sure, what specifically bothered you

[-] eli6@lemmy.world 2 points 3 weeks ago* (last edited 3 weeks ago)

haha thats just whatever movie was on the homepage when i took the screenshot, it pulls the backdrop from tmdb. enjoy the backrooms lol

[-] eli6@lemmy.world 2 points 3 weeks ago

That's a fair point. The site uses third-party embed providers (VidSrc, VixSrc, Embed.su, etc.) so the available quality depends on what each provider has — we don't host files directly.

Currently there's no quality indicator in the UI, which is a real gap. Adding a quality label (HDRip, BluRay, CAM/TS, etc.) pulled from TMDB or displayed per-server would be genuinely useful. I'll look into it — at minimum a warning badge when a CAM/TS is likely the only available source.

Thanks for the feedback.

1
submitted 3 weeks ago* (last edited 3 weeks ago) by eli6@lemmy.world to c/opensource@lemmy.world

ELI6 Movies is a free streaming site I built — vanilla JS frontend, Node.js/Express backend, MongoDB.

Runs entirely on free tiers (Vercel + Render + Atlas M0). Zero cost to deploy yourself.

Features: episode notifications, smart server failover, watchlist, i18n (EN/IT/RU), mobile-first.

→ Watch now

1
submitted 3 weeks ago* (last edited 3 weeks ago) by eli6@lemmy.world to c/entertainment@lemmy.world

ELI6 Movies — free streaming site for movies, TV shows and anime.

No ads, no subscription, no sign-up required. Just click and watch.

→ Watch now

4
submitted 3 weeks ago* (last edited 3 weeks ago) by eli6@lemmy.world to c/webdev@lemmy.world

Built ELI6 Movies as a side project to push how far a free-tier stack can go.

Tech:

  • Frontend: pure HTML/CSS/vanilla JS on Vercel (free)
  • Backend: Node.js/Express on Render (free)
  • DB: MongoDB Atlas M0 (free)
  • Metadata: TMDB API
  • Video: third-party embeds with smart server failover

Interesting bits:

  • Multi-server failover via postMessage detection
  • Episode email notifier
  • Tiered TMDB cache
  • i18n (EN/IT/RU)
  • Android TV spatial navigation

→ Watch now

Happy to answer questions about the architecture.

7
submitted 3 weeks ago by eli6@lemmy.world to c/webdev@lemmy.world

Been working on this for a few months. ELI6 Movies is a full-stack streaming webapp:

  • Frontend: vanilla JS + CSS on Vercel (no framework, no build step)
  • Backend: Node.js + Express + MongoDB on Render
  • Auth: JWT with per-device session revocation
  • Email: password reset + verification via Resend (native fetch, zero new deps)
  • Analytics: custom dashboard — page views, geo, devices, live sessions
  • No ads, no paywall, no account needed to browse

Full write-up on dev.to: https://dev.to/eli6_4649fc5be59e2aeb2736/i-built-a-free-streaming-site-from-scratch-no-ads-no-framework-no-bs-32o6

Would love feedback — what would you have done differently?

view more: next ›

eli6

joined 3 weeks ago