Open source ยท Self-hosted ยท No subscriptions

YOUR

OWN

PLATFORM VIDEO HUB COMMUNITY KINGDOM

A full-featured video platform you actually own. Videos, Shorts, GIFs, Images, Galleries โ€” all running on your server, your way.

5 content types
HLS adaptive streaming
SQLite or MySQL
3 user roles
A/B thumbnail testing
๐ŸŽฌ VIDEOSโœฆ โšก SHORTSโœฆ ๐ŸŽž GIFSโœฆ ๐Ÿ–ผ IMAGESโœฆ ๐Ÿ—‚ GALLERIESโœฆ ๐Ÿ”’ SELF-HOSTEDโœฆ โš™๏ธ HLS STREAMINGโœฆ ๐Ÿง‘โ€๐Ÿ’ป OPEN SOURCEโœฆ ๐ŸŽฌ VIDEOSโœฆ โšก SHORTSโœฆ ๐ŸŽž GIFSโœฆ ๐Ÿ–ผ IMAGESโœฆ ๐Ÿ—‚ GALLERIESโœฆ ๐Ÿ”’ SELF-HOSTEDโœฆ โš™๏ธ HLS STREAMINGโœฆ ๐Ÿง‘โ€๐Ÿ’ป OPEN SOURCEโœฆ
EVERYTHING
YOUTUBE
CAN DO.
ON YOUR
SERVER.

VideoDash is a batteries-included video platform that runs entirely on your own infrastructure. No third-party dependencies for hosting. No monthly fees. No algorithmic overlords.

Built on Node.js + Express 5, powered by ffmpeg for transcoding, and styled with Tailwind CSS. Runs on a Raspberry Pi or a beefy dedicated server โ€” your call.

5
Content Types
โˆž
No Storage Limits
3
User Roles
2
Database Engines
FIVE WAYS TO SHARE

Every content format, natively supported

๐ŸŽฌ

VIDEOS

The full YouTube experience

FLAGSHIP
๐Ÿš€ Multi-bitrate HLS adaptive streaming
๐Ÿ–ผ A/B thumbnail split testing
๐ŸŽฏ Timeline scrubber previews
โŒจ๏ธ Keyboard shortcuts
๐Ÿ“บ Picture-in-Picture support
๐Ÿ“ฅ Optional download button
๐Ÿ”ž Age-restriction gates
๐Ÿ—“ Scheduled publishing
โšก

SHORTS

Vertical short-form content

๐Ÿ“ฑ 9:16 vertical player
โš™๏ธ Same HLS pipeline as videos
๐Ÿƒ Card style: tall, square, or portrait
๐Ÿ–ผ Correct portrait thumbnails from ffmpeg
๐ŸŽž

GIFS

Animated images, no player

๐Ÿ” Looping <img> display
๐Ÿƒ Card style: square, portrait, or 16:9
๐Ÿ—‚ Dedicated /gifs browse listing
๐Ÿ–ผ

IMAGES

Static photo posts

๐Ÿ” Lightbox zoom viewer
๐Ÿ“ฅ Optional download
๐Ÿ—‚ Dedicated /images browse listing
๐Ÿ—‚

GALLERIES

Multi-image collections

๐Ÿ“ธ Up to 40 images per gallery
โŒจ๏ธ Keyboard-navigable lightbox
๐Ÿ–ผ Cover thumbnail with counter
THE GOOD STUFF

Everything you'd expect from a proper platform, none of the proprietary lock-in.

๐Ÿ 

DISCOVERY

How people find your content

๐Ÿ”€ Home rows per content type with "See all" links
โœ‹ Drag-and-drop home section ordering in admin
๐Ÿ” Full-text search across all content types
๐Ÿท๏ธ Category and tag browsing
๐Ÿ“Š Sort by Hot, New, Views, Rating, Length
๐Ÿ”— Canonical URLs โ€” no duplicate content
๐Ÿ’ฌ

ENGAGEMENT

Keep your community alive

๐Ÿงต Threaded comments with nested replies
๐Ÿ‘ Thumbs up / thumbs down reactions
โšก Real-time AJAX comment posting
๐Ÿค– Spam detection on comments
๐Ÿ“„ Load-more pagination
๐Ÿ“ข

MONETISE

Your platform, your revenue

๐Ÿ–ผ Banner ads with CTA button
โ–ถ๏ธ VAST pre-roll video ads
๐ŸŽฏ Per-video ad assignment
๐Ÿ“ˆ Ad impression tracking
๐Ÿ‘ค

USER ACCOUNTS

Full membership system

๐Ÿ” JWT auth via HTTP-only cookies
๐Ÿ“ง Login with email or username
๐Ÿšฆ Rate limiting on auth endpoints
๐Ÿ–ผ Avatar upload
๐Ÿ“‹ User profile pages with history
๐Ÿ›ก

MODERATION

Keep things clean

๐Ÿšฉ Report modal on all content types
โš–๏ธ DMCA takedown request system
๐Ÿ“‹ Admin report queue with status tracking
๐Ÿ”ง ADMIN PANEL
TOTAL
CONTROL

A full-powered admin dashboard โ€” no third-party CMS needed

๐Ÿ“Š
Dashboard

Stats, charts, recent activity

๐ŸŽฌ
Post Management

Publish, unpublish, feature, delete

โœ๏ธ
Full Post Edit

Title, description, tags, thumbnails, type

๐Ÿ”„
Replace Content

Swap video/image files โ€” old files auto-deleted

๐Ÿ“ค
Universal Upload

All 5 content types from one form

๐Ÿ‘ฅ
User Management

3 roles: user, editor, admin

๐Ÿท๏ธ
Categories & Tags

Full category management with icons

๐Ÿ“ข
Ad Management

Create, edit, toggle, delete ads

โœ‹
Section Ordering

Drag-and-drop home page layout

โš™๏ธ
Site Settings

Name, tagline, card styles, pagination

๐Ÿ“‹
Audit Log

Full history of admin actions

๐Ÿ“ˆ
Analytics

Views, impressions, performance

๐Ÿ”’

SECURITY

Built to be production-safe

โœ“ CSRF protection on all forms (csrf-csrf)
โœ“ Helmet CSP security headers
โœ“ bcrypt password hashing (12 rounds)
โœ“ Role-based access control middleware
โœ“ Rate limiting on auth endpoints
โœ“ Service worker caches GET requests only
โš™๏ธ

INFRASTRUCTURE

Zero-friction operations

โšก Background HLS transcode worker with job queue
๐Ÿ—“ Scheduled video publishing cron
๐Ÿ† A/B thumbnail winner selection cron
๐Ÿ—„๏ธ SQLite or MySQL โ€” swap via DB_CLIENT env var
๐Ÿ“ Smart upload path resolution for all file types
๐Ÿš€ Migrations, dirs & default admin on first npm start
THE STACK

Boring in the best way. Proven tech, no drama.

๐ŸŸข
Node.js
Runtime
๐Ÿš‚
Express 5
Web framework
๐Ÿ—„๏ธ
SQLite / MySQL
via Knex.js
๐ŸŽž
ffmpeg
Transcoding
๐Ÿ“„
EJS
Templating
๐ŸŽจ
Tailwind CSS
Styling
๐Ÿ“ก
HLS.js
Adaptive streaming
๐Ÿ”‘
JWT
Authentication
DEPLOY
IN MINUTES

Three commands and you're live. No cloud accounts, no monthly fees, no data leaving your server.

bash
# Install deps
npm install

# Configure your environment
cp .env.example .env

# Build CSS & start โ€” everything else is automatic
npm run build:css && npm start
๐Ÿค– Default admin: admin / admin ยท ๐ŸŒ Runs on localhost:3000 ยท ๐Ÿ—„๏ธ SQLite by default
Change default credentials immediately after first login โš ๏ธ
CSRF PROTECTIONยท SCHEDULED PUBLISHINGยท A/B THUMBNAIL TESTINGยท HLS ADAPTIVE STREAMINGยท THREADED COMMENTSยท VAST PRE-ROLL ADSยท PICTURE IN PICTUREยท BCRYPT PASSWORDSยท CSRF PROTECTIONยท SCHEDULED PUBLISHINGยท A/B THUMBNAIL TESTINGยท HLS ADAPTIVE STREAMINGยท THREADED COMMENTSยท VAST PRE-ROLL ADSยท PICTURE IN PICTUREยท BCRYPT PASSWORDSยท