← All open source projects

fullPage.js

alvarotrigo/fullPage.js

fullPage.js is a JavaScript library for sites with full-screen sections and controlled scrolling.

Forks 7,121
Author alvarotrigo
Language JavaScript
License GPL-3.0
Synced 2026-06-27

What fullPage.js is

fullPage.js is a library for full-screen web page scrolling. fullPage.js helps build pages split into screen-sized sections, with transitions controlled by wheel, keyboard, or navigation.

A normal long page is not always right for a presentation site where each screen should feel like a separate slide. That makes the page useful as more than a short catalog card: it explains where the project helps and which part of the job it takes over.

The alvarotrigo/fullPage.js repository appeared on GitHub in 2013. For this kind of project, that history matters because code, examples, documentation, and community habits accumulate over time.

Why it exists

The project became popular in the era of promo sites and portfolios that needed striking but controlled movement between screens.

The main point of fullPage.js is not to replace every neighboring tool. It covers a specific part of the work: section-based scrolling and navigation through full-screen blocks. The clearer that part is, the easier it is to decide whether the project belongs in a stack.

fullPage.js is best judged through practice: what data goes in, which actions happen, what result comes out, and who owns support after the first run.

Inside the repository

The repository contains JavaScript library code, styles, options, examples, extensions, and documentation.

fullPage.js takes a container with sections and adds scroll control, anchors, navigation, and device behavior.

That structure matters for maintenance. Once a project enters a real system, value comes not only from core features but also from tests, clear configuration, releases, and the ability to track behavior changes.

How people use it

It is used in landing pages, portfolios, presentation pages, interactive stories, and product showcases.

A good start is a small number of sections and checks for keyboard use, mobile scrolling, and content accessibility.

A good first scenario for fullPage.js is a small check on real data or a realistic task. It reveals limits faster than browsing a feature list.

Strengths

fullPage.js is strong because it provides ready full-screen navigation mechanics without writing all scrolling behavior from scratch.

It stands out because many visual sites need a more controlled reading rhythm than a normal page flow.

Another advantage is a clear entry point. Even a large project can be studied through one scenario: install it, repeat an example, change one setting, and check the result.

Limits

The limitation is that this scrolling can harm accessibility and normal browser behavior if overused.

Mobile screens, anchors, SEO content, keyboard focus, and effect disabling should be checked.

For long-term use, decide who updates the project, where configuration is stored, how new versions are checked, and what to do if behavior changes after an update.

Example

fullPage.js initialization

This example shows basic binding of the library to a page container and sections.

Language: JavaScript
new fullpage('#fullpage', {
  navigation: true,
  anchors: ['intro', 'features', 'contacts'],
})