Skip to content

A backend-focused educational project that replicates core YouTube functionalities using Express.js, PostgreSQL, and Socket.io for real-time interactions. Features include user authentication, video management and social interactions.

Notifications You must be signed in to change notification settings

omarhashy/youtube-clone

Repository files navigation

youtube-clone

Overview

A backend-focused educational project built while learning Express.js, implementing core YouTube-like functionalities.

Technologies Used

  • Frontend: HTML, EJS, CSS, JavaScript
  • Backend: Express.js
  • Database: PostgreSQL with Sequelize ORM
  • Authentication: JWT, Session Management
  • Architecture: MVC Pattern
  • Infrastructure: Socket.io for real-time events

Features

User Management

  • User registration and authentication
  • session handling
  • Secure password storage

Video Operations

  • Upload and store video content
  • Video CRUD operations
  • File handling and storage

Social Interactions

  • Like/unlike videos
  • Subscribe to channels
  • Comment system
  • Real-time user engagement

Technical Implementation

  • Error handling middleware
  • Database relations and migrations
  • Input validation
  • RESTful API endpoints
  • MVC architecture compliance

Learning Outcomes

This project demonstrates practical implementation of Express.js concepts, database management, authentication flows, and backend architecture patterns.

About

A backend-focused educational project that replicates core YouTube functionalities using Express.js, PostgreSQL, and Socket.io for real-time interactions. Features include user authentication, video management and social interactions.

Topics

Resources

Stars

Watchers

Forks