Skip to content

alobuuls/scroll-image-sequence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏍️ Scroll Image Sequence

Scroll Image Sequence

JavaScript HTML5 CSS3 Scroll Animation Status Completed

Github Repository Github Stars Last Commit


πŸ“‘ Table of Contents


🌐 Live Demo

πŸ”— https://alobuuls.github.io/scroll-image-sequence/



πŸ“– Description

Note

Scroll Image Sequence is a browser-based animation project built with vanilla JavaScript.

The application creates a frame-by-frame animation controlled entirely by the user's scroll position, generating a smooth cinematic effect similar to those used in modern landing pages and product showcases.


βš™οΈ System Requirements

Before running the project, make sure you have:

  • 🌐 A modern web browser (Chrome, Firefox, Edge, Safari)
  • πŸ“¦ Git (optional)

πŸ” Verify Installation

Check that Git is installed:

git --version

πŸš€ Project Installation

1️⃣ Clone the repository

git clone git@github.com:alobuuls/scroll-image-sequence.git
cd scroll-image-sequence

2️⃣ Open the project

Important

No dependencies or package installation are required.

You can simply open:

index.html

or run the project using Live Server in Visual Studio Code.


▢️ Run the Project

Open the index.html file directly in your browser or start a local development server.


🧠 Project Architecture

Note

The application is built using vanilla JavaScript, CSS animations, and image sequence rendering.

πŸ“¦ Core Modules

Scroll Engine

Responsible for:

  • Tracking scroll position
  • Calculating scroll progress
  • Mapping scroll percentage to frames
  • Updating rendered images

Image Sequence System

Handles:

  • Frame loading
  • Frame preloading
  • Image switching
  • Sequence synchronization

Animation Controller

Manages:

  • Initial frame rendering
  • Scroll restoration behavior
  • Responsive recalculations
  • Visual transitions

✨ Features

  • 🎬 Frame-by-frame image sequence animation
  • πŸ–±οΈ Scroll-driven playback
  • ⚑ Image preloading for smooth rendering
  • πŸ“± Responsive behavior
  • πŸ”„ Automatic frame synchronization
  • πŸš€ Fast image updates using CSS backgrounds
  • 🎨 Intro logo animation
  • πŸ“ˆ Dynamic scroll-to-frame calculation
  • 🧠 Optimized rendering by avoiding duplicate frame updates

πŸ›  Technologies Used

Technology Purpose
HTML5 Structure
CSS3 Styling
JavaScript (ES6+) Logic
DOM API DOM Manipulation
Intersection & Scroll Events Scroll Handling
WebP Images Optimized Frames

πŸ“ Project Structure

scroll-image-sequence/
β”œβ”€β”€ index.html
β”œβ”€β”€ styles.css
β”œβ”€β”€ main.js
β”œβ”€β”€ images/
β”‚   β”œβ”€β”€ logo.png
β”‚   β”œβ”€β”€ preview.gif
β”‚   └── frames/
β”‚       β”œβ”€β”€ moto-001.webp
β”‚       β”œβ”€β”€ moto-002.webp
β”‚       β”œβ”€β”€ ...
β”‚       └── moto-151.webp
└── README.md

πŸ”₯ Best Practices Implemented

  • Separation of responsibilities
  • Image preloading strategy
  • Efficient frame rendering
  • Scroll position normalization
  • Responsive recalculation on resize
  • Avoiding unnecessary DOM updates
  • Reusable utility functions
  • Clean and maintainable code structure

🎯 Project Goal

Practice and strengthen advanced JavaScript concepts through a visual animation project:

  • Scroll-based interactions
  • Frame sequence animations
  • Image preloading techniques
  • DOM manipulation
  • Event handling
  • Performance optimization
  • Responsive development
  • Modern landing page effects

πŸ“„ License

This project is intended for educational and portfolio purposes.

Created by Alondra Francisco.

About

Frame-by-frame motorcycle animation controlled by scroll position using Vanilla JavaScript, image preloading, and dynamic rendering.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors