How alvarotrigo/fullpage.js works
fullPage.js is a browser-side library for full-screen vertical sections and horizontal slides. A site supplies the wrapper and section markup, then initializes the library; input, anchors, menus, and navigation can request movement, which updates the active DOM/state and exposes callbacks. The graph preserves documented lazy loading, media handling, responsive behavior, and scroll overflow. Most edges are supported by the README or the SOURCE INDEX import references; unsampled implementation details are not inferred.
Main entry points: fullpage.js FullPage API · scrollHandler.js Scroll lifecycle · scrollPage.js Section scrolling · moveSlide.js Slide movement
Components 28
Setup and structure
- Browser entry
src/js/app.js - FullPage API
src/js/fullpage.js - DOM preparation
src/js/dom/prepareDom.js - DOM teardown
src/js/dom/destroyStructure.js
Input and movement
- Pointer and wheel
src/js/mouse/wheel.js - Keyboard controls
src/js/keyboard/index.js - Section scrolling
src/js/scroll/scrollPage.js - Scroll lifecycle
src/js/scroll/scrollHandler.js - Slide movement
src/js/slides/moveSlide.js - Page-boundary scroll
src/js/beyondFullpage/beyondFullPageHandler.js
Navigation and features
- Anchor navigation
src/js/anchors/index.js - Section and slide nav
src/js/nav/sections.js - Menu synchronization
src/js/menu/activateMenuAndNav.js - Lazy loading
src/js/lazyLoad/lazyLoad.js - Embedded media
src/js/media.js - Scroll overflow
src/js/scrolloverflow.js - Responsive mode
src/js/responsive.js - Active state updates
src/js/stateUpdates.js - Callbacks and events
src/js/callbacks/fireCallback.js
Shared runtime
- Options and state
src/js/common/options.js - Runtime state
src/js/common/state.js - DOM utilities
src/js/common/utils.js - DOM cache
src/js/common/cache.js - Section and slide items
src/js/common/item.js - Scroll abstraction
src/js/common/scrollTo.js - DOM selectors
src/js/common/selectors.js - Internal event emitter
src/js/common/eventEmitter.js
Other components
- Site markup
Connections 37
- Site markup → Browser entry: includes script
- Site markup → DOM preparation: provides structure
- Browser entry → FullPage API: loads
src/js/app.js - FullPage API → DOM preparation: prepares markup
src/js/fullpage.js - FullPage API → Anchor navigation: configures
src/js/fullpage.js - FullPage API → Section and slide nav: configures
src/js/fullpage.js - FullPage API → Section scrolling: configures
src/js/fullpage.js - Pointer and wheel → Page-boundary scroll: delegates boundary
src/js/mouse/wheel.js - Pointer and wheel → Section scrolling: requests movement
src/js/mouse/wheel.js - Keyboard controls → Section scrolling: requests movement
src/js/keyboard/index.js - Keyboard controls → Slide movement: moves slides
src/js/keyboard/index.js - Section scrolling → Scroll lifecycle: handles movement
- Scroll lifecycle → Active state updates: updates state
src/js/scroll/scrollHandler.js - Scroll lifecycle → Lazy loading: loads content
src/js/scroll/scrollHandler.js - Scroll lifecycle → Embedded media: controls playback
src/js/scroll/scrollHandler.js - Scroll lifecycle → Callbacks and events: fires callbacks
src/js/scroll/scrollHandler.js - Scroll lifecycle → Menu synchronization: updates menu
src/js/scroll/scrollHandler.js - Slide movement → Active state updates: updates state
- Slide movement → Lazy loading: loads content
- Slide movement → Embedded media: controls playback
- Slide movement → Anchor navigation: sets page status
- Anchor navigation → Section scrolling: requests destination
src/js/anchors/index.js - Section and slide nav → Callbacks and events: emits events
- Menu synchronization → Section and slide nav: reads navigation
src/js/menu/activateMenuAndNav.js - Scroll overflow → Callbacks and events: fires callbacks
src/js/scrolloverflow.js - FullPage API → Responsive mode: configures mode
- FullPage API → Scroll overflow: configures overflow
- Options and state → Runtime state: configures runtime
- Callbacks and events → Options and state: reads options
src/js/callbacks/fireCallback.js - Callbacks and events → Runtime state: reads state
src/js/callbacks/fireCallback.js - DOM preparation → Section and slide items: builds items
- DOM preparation → DOM selectors: uses selectors
- FullPage API → DOM teardown: destroys structure
src/js/fullpage.js - Section scrolling → Scroll abstraction: uses scrolling
- Scroll lifecycle → DOM cache: uses cache
src/js/scroll/scrollHandler.js - Keyboard controls → Internal event emitter: emits events
src/js/keyboard/index.js - DOM utilities → DOM selectors: queries DOM