Scroll this page — the glowing bar at the top and the circle at the bottom-left are real (reach the end for confetti). Below, every reading window has its own indicator: scroll inside them to try all six types and the finish effects.
Pick a bar, chapters, a circle, a reading-time pill, a sticky reading header or section dots. Each window below is one widget — scroll inside it.
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
Open your dashboard, go to Settings → API and create a new key. Keep it private — anyone with the key can act on your account.
Send a GET request to /v1/projects with your key in the Authorization header. You will get back a list of your projects as JSON.
Every error returns a clear code and message. Retry on 429 (too many requests) after the time given in the Retry-After header.
Instead of polling, register a webhook URL and we will send you an event whenever something changes.
Switch from the test key to the live key when you are ready. Nothing else in your code needs to change.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
Color sets the mood before anyone reads a word. It guides the eye to what matters and helps people recognize your brand.
Pick one main color, one accent and a few neutrals. Most great sites use far fewer colors than you would think.
Text needs enough contrast with its background to be easy to read for everyone, including people with low vision.
Keep red for errors and green for success. Consistency teaches visitors what each color means.
Choose a palette for a fictional café and apply it to a simple landing page. Share it with the class next week.
— The end · sample text for this demo —
Open your dashboard, go to Settings → API and create a new key. Keep it private — anyone with the key can act on your account.
Send a GET request to /v1/projects with your key in the Authorization header. You will get back a list of your projects as JSON.
Every error returns a clear code and message. Retry on 429 (too many requests) after the time given in the Retry-After header.
Instead of polling, register a webhook URL and we will send you an event whenever something changes.
Switch from the test key to the live key when you are ready. Nothing else in your code needs to change.
— The end · sample text for this demo —
Top, bottom, left or right edge; any thickness; rounded or square; optional percent bubble.
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Before changing anything we recorded real load times from visitors for a week. It showed that the biggest delay was not the server but three large images at the top of the home page.
Switching to modern formats and serving the right size for each screen saved over a megabyte on mobile. Nobody noticed a difference in quality — they only noticed the speed.
Scripts for the chat widget and the video player now wait until they are needed. The first screen appears almost instantly, and the rest follows while people read.
Static files are stored close to visitors and kept for a year. Returning visitors now load most pages from their own browser.
A weekly report warns us when a page gets slower, so small problems never pile up again.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Choose the corner and size. Clicking the circle always takes the reader back to the top.
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Color sets the mood before anyone reads a word. It guides the eye to what matters and helps people recognize your brand.
Pick one main color, one accent and a few neutrals. Most great sites use far fewer colors than you would think.
Text needs enough contrast with its background to be easy to read for everyone, including people with low vision.
Keep red for errors and green for success. Consistency teaches visitors what each color means.
Choose a palette for a fictional café and apply it to a simple landing page. Share it with the class next week.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Color sets the mood before anyone reads a word. It guides the eye to what matters and helps people recognize your brand.
Pick one main color, one accent and a few neutrals. Most great sites use far fewer colors than you would think.
Text needs enough contrast with its background to be easy to read for everyone, including people with low vision.
Keep red for errors and green for success. Consistency teaches visitors what each color means.
Choose a palette for a fictional café and apply it to a simple landing page. Share it with the class next week.
— The end · sample text for this demo —
400 g spaghetti, 2 tbsp olive oil, 3 garlic cloves, 1 tin chopped tomatoes, a pinch of chilli, salt, a handful of basil and some grated parmesan to finish.
Bring a big pot of salted water to the boil and cook the spaghetti until just tender. Keep a mug of the cooking water before draining.
Warm the oil, add sliced garlic and chilli for a minute, then the tomatoes. Simmer for ten minutes until thick and glossy.
Toss the pasta in the sauce with a splash of the cooking water until everything is coated. Tear in the basil.
Finish with parmesan and a little more olive oil. Serves four in about twenty minutes.
— The end · sample text for this demo —
Short notes below — scroll to the end of each to see what happens.
This is a short page, so you will reach the end in a moment.
Keep scrolling to see what happens when you finish.
— The end · sample text for this demo —
This is a short page, so you will reach the end in a moment.
Keep scrolling to see what happens when you finish.
— The end · sample text for this demo —
This is a short page, so you will reach the end in a moment.
Keep scrolling to see what happens when you finish.
— The end · sample text for this demo —
This is a short page, so you will reach the end in a moment.
Keep scrolling to see what happens when you finish.
— The end · sample text for this demo —
Everything a reading indicator should do — nothing it shouldn’t.
The articles, recipe, docs and lesson in the reading windows are sample text for this demo.
201 premium elements, Page Scroll Progress included.