A comprehensive collection of JavaScript projects covering fundamental to advanced concepts
JavaScript Projects Collection is a curated repository of 25+ practical JavaScript projects designed to help developers master modern JavaScript concepts through hands-on practice. Each project focuses on specific programming concepts, from DOM manipulation to game development and advanced animations.
Start with these foundational projects:
random-background-color - Basic DOM manipulationincrease-numbers-on-scroll - Event handling basicscreate-tabs - State management fundamentalsAdvance to these interactive projects:
drag-drop-sortable-list - Complex user interactionsour-work-filter - Data manipulation and filteringcustom-select-menu - Custom UI componentsChallenge yourself with these complex projects:
flappy-bird-game - Game development with Canvasmulti-languages-site - Advanced state managementprofessional-portfolio-gallery - Full-stack conceptsJavaScript_Projects/
โ
โโโ ๐ Animations-Effects/ # Interactive animations and visual effects
โ โโโ animate-width-on-scroll/ # Progress bar animation on scroll
โ โโโ flashlight-effect/ # Mouse-following spotlight effect
โ โโโ follows-mouse-cursor/ # Element following cursor movement
โ โโโ increase-numbers-on-scroll/ # Animated counters on scroll
โ
โโโ ๐ Dom-Features/ # Advanced DOM manipulation
โ โโโ create-countdown-timer/ # Customizable countdown timer
โ โโโ drag-drop-sortable-list/ # Sortable list with drag & drop
โ โโโ drag-drop-sortable-list-basic/ # Basic drag & drop implementation
โ โโโ our-work-filter/ # Dynamic content filtering system
โ โโโ professional-portfolio-gallery/ # Portfolio image gallery
โ
โโโ ๐ Game/ # JavaScript game development
โ โโโ flappy-bird-game/ # Complete Flappy Bird clone
โ โโโ subway-game/ # Subway Surfers inspired game
โ
โโโ ๐ Javascript-Logic/ # Core JavaScript algorithms
โ โโโ detect-adblock/ # Ad-blocker detection system
โ โโโ detect-user-browser/ # Browser detection utility
โ โโโ random-background-color/ # Random color generator
โ โโโ random-element-from-sequence/ # Random element selector
โ
โโโ ๐ localization/ # Internationalization
โ โโโ dark-mode-with-localization/ # Dark mode + multi-language
โ โโโ multi-languages-site/ # Multi-language website implementation
โ โโโ multi-language-website/ # Alternative multi-language approach
โ
โโโ ๐ UI-Components/ # Reusable UI components
โ โโโ create-card-slider/ # Card slider with navigation
โ โโโ create-image-slider/ # Full-featured image slider
โ โโโ create-tabs/ # Dynamic tab system
โ โโโ custom-select-menu/ # Custom dropdown menu
โ โโโ fullscreen-navigation/ # Fullscreen navigation menu
โ
โโโ ๐ README.md # This documentation
# Clone the repository
git clone https://github.com/Maher-Elmair/JavaScript_Projects.git
# Navigate to the project directory
cd JavaScript_Projects
# Open any project folder
cd UI-Components/create-image-slider/
# Open index.html in your browser
# Or use VS Code Live Server extension
index.html file| Technology | Primary Use | Key Features & Capabilities |
|---|---|---|
|
JavaScript (ES6+) |
Core programming & logic | Arrow functions, Promises, Async/Await, Modules, DOM Manipulation, Event Handling |
|
HTML5 |
Structure & semantics | Semantic elements, Accessibility features, Canvas API, Forms validation, Media elements |
|
CSS3 |
Styling & layout | Flexbox, CSS Grid, Animations & Transitions, CSS Variables, Media Queries, Responsive design |
|
Browser APIs |
Extended functionality | DOM API, Canvas API, LocalStorage, SessionStorage, Geolocation, Drag & Drop, Fetch API |
|
Git |
Version control | Branch management, Collaboration, Commit history, Merging, Staging |
|
GitHub |
Code hosting & collaboration | Pull requests, Issues, GitHub Pages, Project management, Code review |
|
VS Code |
Development environment | Live Server extension, Debugging tools, IntelliSense, Extensions ecosystem, Integrated terminal |
All projects are hosted on GitHub Pages and can be previewed online. Each project includes a live demo link, detailed description, and skills learned.
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | animate-width-on-scroll | Progress bar animation on scroll | Intersection Observer, CSS Transitions | View Demo | View Code | | flashlight-effect | Mouse-following spotlight effect | Mouse Events, CSS Gradients | View Demo | View Code | | follows-mouse-cursor | Element that follows cursor movement | Event Listeners, Positioning | View Demo | View Code | | increase-numbers-on-scroll | Animated number counters | Scroll Events, Animation Timing | View Demo | View Code |
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | create-countdown-timer | Customizable countdown timer | Date API, setInterval | View Demo | View Code | | drag-drop-sortable-list | Sortable list with drag & drop | Drag & Drop API, Local Storage | View Demo | View Code | | drag-drop-sortable-list-basic | Basic drag & drop implementation | Event Handling, DOM Manipulation | View Demo | View Code | | our-work-filter | Dynamic content filtering | Filter Methods, State Management | View Demo | View Code | | professional-portfolio-gallery | Portfolio image gallery | Lightbox, Modal Systems | View Demo | View Code |
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | flappy-bird-game | Full Flappy Bird game clone | Canvas API, Game Physics, Collision Detection | View Demo | View Code | | subway-game | Subway Surfers inspired game | Sprite Animation, Score Systems | View Demo | View Code |
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | detect-adblock | Ad-blocker detection | Network Requests, Error Handling | View Demo | View Code | | detect-user-browser | Browser detection system | Navigator API, User Agent Parsing | View Demo | View Code | | random-background-color | Random color generator | Math.random, RGB/HSL Colors | View Demo | View Code | | random-element-from-sequence | Random element selector | Arrays, Probability | View Demo | View Code |
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | dark-mode-with-localization | Dark mode with multi-language | Local Storage, Theme Switching | View Demo | View Code | | multi-languages-site | Multi-language website | JSON Data, DOM Updates | View Demo | View Code | | multi-language-website | Alternative multi-language site | Language Switching, Content Management | View Demo | View Code |
| Project | Description | Skills Learned | Live Demo | Code Preview | |โโโ|โโโโ-|โโโโโ-|โโโโ|โโโโโ| | create-card-slider | Card slider with navigation | Swipe Events, CSS Transforms | View Demo | View Code | | create-image-slider | Full-featured image slider | Image Preloading, Navigation Controls | View Demo | View Code | | create-tabs | Dynamic tab system | Event Delegation, Content Switching | View Demo | View Code | | custom-select-menu | Custom dropdown menu | Accessibility, Dropdown Logic | View Demo | View Code | | fullscreen-navigation | Fullscreen navigation menu | CSS Animations, Responsive Design | View Demo | View Code |
|
|
|
X (Twitter) |
Portfolio |
|
GitHub Profile |
|||
We welcome contributions from developers of all skill levels! Hereโs how you can help: