Pitsi UI
  • Home
  • Docs
1
1
Sections
  • Get Started
  • Components
  • Animations
  • MCP Server
  • Changelog
Get Started
  • Installation
  • CLI
  • llms.txt
Components
  • Accordion
  • Alert Dialog
  • Alert
  • Aspect Ratio
  • Avatar
  • Badge
  • Breadcrumb
  • Button Group
  • Button
  • Card
  • Carousel
  • Checkbox
  • Collapsible
  • Combobox
  • Command
  • Container
  • Context Menu
  • Data Table
  • Dialog
  • Drawer
  • Dropdown Menu
  • Empty
  • Field
  • Flex
  • Form
  • Grid
  • Hero Button
  • Hover Card
  • Input Group
  • Input OTP
  • Input
  • Item
  • Kbd
  • Label
  • Menubar
  • Native Select
  • Navigation Menu
  • Pagination
  • Popover
  • Progress
  • Radio Group
  • Resizable
  • Responsive
  • Scroll Area
  • Segmented Control
  • Select
  • Separator
  • Sheet
  • Sidebar
  • Skeleton
  • Slider
  • Sonner
  • Spacer
  • Spinner
  • Squircle
  • Switch
  • Table
  • Tabs
  • Textarea
  • Theme Toggle
  • Toggle Group
  • Toggle
  • Tooltip
  • Typography
  • Unicorn Wrapper
Animations
  • Background Image Parallax
  • Card Swipe Carousel
  • Cards Parallax
  • Parallax Scroll
  • Perspective Carousel
  • Perspective Section Transition
  • Scroll Expand
  • Scroll Fade
  • Scroll Scale
  • Slide Down
  • Slide Up
  • Smooth Parallax Scroll
  • Smooth Scroll
  • Sticky Footer
  • Text Along Path
  • Text Gradient Opacity
  • Text Parallax
  • Transforms 3d
  • Zoom Parallax

Sticky Footer

PreviousNext

A sticky footer animation component.

Powered by
Skiper UI
"use client"

import { StickyRevealFooter } from "@/components/animations/sticky-footer/sticky-footer"

const Nav = () => {
  return (
    <div className="flex shrink-0 gap-20">
      <div className="flex flex-col gap-2">
        <h3 className="text-foreground/50 mb-2 uppercase">About</h3>
        <p>Home</p>
        <p>Projects</p>
        <p>Our Mission</p>
        <p>Contact Us</p>
      </div>
      <div className="flex flex-col gap-2">
        <h3 className="text-foreground/50 mb-2 uppercase">Education</h3>
        <p>News</p>
        <p>Learn</p>
        <p>Certification</p>
        <p>Publications</p>
      </div>
    </div>
  )
}

const FooterContent = () => {
  return (
    <div className="bg-muted text-foreground flex h-full w-full flex-col justify-between px-12 py-8">
      <div>
        <Nav />
      </div>
      <div className="flex items-end justify-between">
        <h1 className="mt-10 text-[14vw] leading-[0.8]">Sticky Footer</h1>
        <p>©copyright</p>
      </div>
    </div>
  )
}

const Intro = () => {
  return (
    <div className="flex h-screen items-center justify-center text-[2vw]">
      <h2 className="text-foreground max-w-[45%] text-center leading-none">
        This is an example of a sticky footer made with CSS. Scroll down to see
        the footer reveal effect.
      </h2>
    </div>
  )
}

export function StickyFooterDemo() {
  return (
    <main>
      <Intro />
      <StickyRevealFooter height={800}>
        <FooterContent />
      </StickyRevealFooter>
    </main>
  )
}

Installation

pnpm dlx pitsi@latest add sticky-footer

Usage

import { StickyFooter } from "@/components/animations/sticky-footer"
Smooth ScrollText Along Path

On This Page

InstallationUsage

© 2025 pitsi/ui. All rights reserved.

Sign In