Back to Footers
Inspired by:Jolocky
Added on Oct 5, 2026
components/footers/helior-orbital/helior-orbital-footer.tsx
"use client"

import { LegalBar } from "./components/legal-bar"
import { LinkGroups } from "./components/link-groups"
import { Newsletter } from "./components/newsletter"
import { SocialBar } from "./components/social-bar"
import { Wordmark } from "./components/wordmark"
import {
  DEFAULT_FOLLOW_LINKS,
  DEFAULT_GROUPS,
  DEFAULT_LEGAL_LINKS,
  DEFAULT_SOCIAL_LINKS,
} from "./data/defaults"
import { useMediaQuery } from "./hooks/use-media-query"
import { classNames } from "./lib/class-names"
import { MOBILE_QUERY } from "./lib/constants"
import { footerStyles } from "./styles"
import type { HeliorOrbitalFooterProps } from "./types"

export function HeliorOrbitalFooter({
  className,
  headline = "Launch notes, once a month.",
  emailLabel = "Email address",
  emailPlaceholder = "Email address",
  subscribeLabel = "Subscribe →",
  joinLabel = "Join →",
  onSubscribe,
  groups = DEFAULT_GROUPS,
  followLabel = "Follow",
  followLinks = DEFAULT_FOLLOW_LINKS,
  socialLinks = DEFAULT_SOCIAL_LINKS,
  companyName = "© 2026 Helior Orbital Inc.",
  shortCompanyName = "© 2026 Helior",
  legalLinks = DEFAULT_LEGAL_LINKS,
  topLabel = "Top ↑",
  backToTopLabel = "Back to top ↑",
  wordmark = "HELIOR",
}: HeliorOrbitalFooterProps) {
  const isMobile = useMediaQuery(MOBILE_QUERY)

  return (
    <footer className={classNames("hl-footer", className)}>
      <style>{footerStyles}</style>
      <Newsletter
        headline={headline}
        emailLabel={emailLabel}
        emailPlaceholder={emailPlaceholder}
        subscribeLabel={subscribeLabel}
        joinLabel={joinLabel}
        onSubscribe={onSubscribe}
      />
      <LinkGroups
        groups={groups}
        followLabel={followLabel}
        followLinks={followLinks}
        isMobile={isMobile}
      />
      <SocialBar links={socialLinks} topLabel={topLabel} />
      <LegalBar
        companyName={companyName}
        shortCompanyName={shortCompanyName}
        links={legalLinks}
        backToTopLabel={backToTopLabel}
      />
      <Wordmark text={wordmark} />
    </footer>
  )
}
Helior Orbital Sitemap
helior-orbital

Launch notes, once a month.

Navigation & Sitemap Architecture
Built from scratch by Jolocky, with our own layout, color and motion.
Signature Standard
Precision interaction engineering with zero external runtime bloat.
Open Source Registry
Production-ready multi-file tree built for modern Next.js and Tailwind CSS.

Engineering Breakdown

Helior Orbital Sitemap — A pale lilac gradient footer for a space company, set in uppercase mono type. A bold newsletter headline sits above a sitemap whose links carry bracketed group letters and running numbers, and a giant cropped wordmark closes the page. On desktop all link groups are open, with a Follow column on the right. On tablet the groups drop to three columns and the social links move into their own bar. On mobile the groups become an accordion where one opens at a time, the plus sign turns into a minus and the links slide in one after another.
Every interaction state, motion curve, and responsive edge-case has been extracted and reconstructed for seamless integration into modern React applications.
01
Zero — Primitive Dependency & Pure Standalone Pattern: pure React and scoped CSS. There is no UI primitive library, no icon package and nothing extra to install.
02
Native Details Accordion: each link group is a details element with a summary. Above 600px they are all open and the summary ignores the pointer. On mobile a tap toggles the group.
03
One Open at a Time: opening a group closes the others. The list height is animated with the Web Animations API over 450ms, and the group stays open until the closing animation has finished.
04
Measured Heights: the animation starts from the current list height and ends at its scroll height, so every group opens to exactly its content, whatever you put in it.
05
Staggered Links: on mobile the links fade and slide down into place with delays of 80, 125, 170 and 215ms, and the plus sign rotates into a minus.
06
Automatic Numbering: group letters ([A], [B], [C], [D]) and link numbers (01, 02, 03...) are generated from the order of your data, and the numbers run on across groups. The numbers are hidden on tablet and mobile.
07
Three Layouts With CSS: tablet starts at 1024px and mobile at 600px. Both are plain media queries, with the Follow column replaced by the social bar on tablet and by a four column strip with short labels on mobile.
08
Cropped Wordmark: the word is SVG text with a fixed text length, stretched to the full width. Its container is a fixed height on desktop and follows the width on tablet, so the footer edge crops it.
09
Subscribe Handler: the form only stops the page reload, as in the original. Pass onSubscribe to connect an endpoint. It clears the field when the handler succeeds and keeps the email when it returns false or throws.
10
Reduced Motion: the accordion height animation runs with no duration and the fade and rotate transitions are switched off.
Last Updated
Oct 5, 2026
Tags & Specifications
Numbered SitemapMobile AccordionMono LabelsCropped WordmarkNewsletter FormZero Primitive
Color Palette
#ebe8e3
#e6e1e5
#cdb2e2
#0c0a10
#6b3fb0
Technology Stack
Engineered using established and reliable modern web technologies for peak runtime performance and developer ergonomics.
React
Next.js
TypeScript
Scoped CSS
Inline SVG
Zero Primitive