Install the effect. Own the files.
Hyperiux Vault is not designed as a heavy package that quietly expands inside your production bundle. Vault uses a source-first workflow. Effects are added directly into your project, where your team can inspect, edit, tune, and ship them with full visibility.
That matters because Vault does not only deal in static UI parts. It handles the interaction layer: motion logic, scroll behavior, cursor systems, visual rhythm, rendering details, responsive timing, and WebGL scenes. Treat that layer like a black box and you inherit someone else’s decisions.
Vault gives you the source. You make it yours.
Run the init command from your project root.
npx hyperiux initThen add an effect.
npx hyperiux add phantom-image-trailThe CLI adds the files required for the selected effect. Not the whole Vault. Just the pattern you asked for.
Before adding effects, make sure your project has the basics in place.
| Requirement | Supported setup |
|---|---|
| Runtime | Node.js 18.17+ or 20+ recommended |
| Framework | React 18+ or Next.js 14/15 |
| Styling | Tailwind CSS v3 or v4 |
| Language | TypeScript recommended, modern JavaScript supported |
| Package manager | npm, pnpm, yarn, or bun |
| Project structure | App Router, Pages Router, or modern Vite React setup |
Vault works best in React and Next.js projects with a clean separation between server and client behavior. That is especially important for motion-heavy effects. Scroll triggers, cursor systems, layout measurements, canvas layers, and WebGL scenes usually need client-side boundaries.
TypeScript is recommended. JavaScript works, but TypeScript gives your future self fewer reasons to mutter at the screen.
There are two ways to add Vault effects.
| Method | Best for |
|---|---|
| CLI installation | Fast setup, local source ownership, normal project workflows |
| Manual installation | Audited environments, strict teams, custom repositories, locked pipelines |
Most projects should use the CLI. Manual installation is for teams that want to inspect every file before it enters the codebase. Both paths follow the same idea:
Copy the code. Tune the motion. Ship the moment.
The Hyperiux CLI adds effect source files directly into your workspace. It adds the selected effect files and prompts before installing any required dependencies.
No surprise machinery.
Run this from the root of your project.
npx hyperiux initThis prepares your project for Vault effects.
Depending on your setup, it may create or update configuration used to place components, utilities, styles, and generated files in the right folders.
Install the effect you want.
npx hyperiux add [effect-name]Example:
npx hyperiux add phantom-image-trailVault adds the selected effect to your project files.
The exact output depends on the effect.
A text reveal should not need the same machinery as a WebGL scene. That would be suspicious.
After adding an effect, run your project locally.
npm run devThen confirm:
A demo can lie. A real page usually tells the truth.
Vault only adds files required for the selected effect.
Depending on the pattern, files may be added to:
An effect may include:
Small effects stay small. Heavier effects bring the files they need.
You only need this section if your project uses a registry-based component workflow, such as a components.json setup.
If your project uses a shadcn-style registry model, add the Hyperiux registry so Vault can resolve effect source from the remote registry.
{
"style": "default",
"tailwind": {
"config": "tailwind.config.js",
"css": "app/globals.css",
"baseColor": "slate",
"cssVariables": true
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils"
},
"registries": {
"@hyperiux": "https://vault.hyperiux.com/r/{name}.json"
}
}Adjust aliases to match your project. If your components live somewhere else, tell Vault where the floor is.
Creative frontend work uses different tools for different jobs. Some effects may require:
Installing every possible dependency by default would be lazy architecture wearing a convenience hat.
Vault resolves dependencies based on the effect you add. This keeps your project cleaner, protects bundle discipline, and reduces the chance of shipping unused creative machinery into production.
Motion should create value. It should not smuggle dead weight into your build.
Use manual installation when your team needs full review before code enters the repository.
This is useful for:
Manual installation skips the CLI and treats each effect as a source blueprint.
Use this checklist before running the effect in your project:
Go to the effects index and open the pattern you want to use. Start with the moment you need, not the tool you want.
Before copying code, review the effect page.
Look for:
This is where creative ambition meets the build pipeline. Read the notes. They are there to save you from 2 a.m. archaeology.
Install only what the selected effect needs.
Example:
npm install gsap motionOr with pnpm:
pnpm add gsap motionFor a GSAP-based effect, you may need packages such as:
npm install gsapUse the exact dependency list from the effect page. Do not install the entire creative internet just to animate a headline.
Copy the component and supporting files into your project.
Example path:
components/phantom-image-trailSome effects may also include:
Keep the structure close to the docs unless your project has a strong reason to change it.
Creative code is easier to tune when the file paths are not playing hide-and-seek.
Update import paths to match your project.
Common aliases include:
If your project does not use these aliases, replace them with relative imports or your own path mapping.
Also check:
Run your dev server.
npm run devThen test the effect in context.
Check:
After installation, import the effect from your local project files.
import PhantomImageTrail from "@/components/phantom-image-trail";
const images = [
{ src: "https://pub-8abee449136941f5b0a1cd2c014534e9.r2.dev/vault-listing-images/assets-images/h-11.jpg", alt: "Gradient 1" },
{ src: "https://pub-8abee449136941f5b0a1cd2c014534e9.r2.dev/vault-listing-images/assets-images/h-12.jpg", alt: "Gradient 2" },
{ src: "https://pub-8abee449136941f5b0a1cd2c014534e9.r2.dev/vault-listing-images/assets-images/h-13.jpg", alt: "Gradient 3" }
];
export default function Home() {
return (
<main className="min-h-screen overflow-hidden bg-black text-white">
<section className="mx-auto flex min-h-screen max-w-6xl items-center px-6">
<PhantomImageTrail images={images} />
</section>
</main>
);
}Exact props vary by effect.
Some patterns expose simple props. Others include timing controls, trigger settings, intensity values, responsive options, or dependency-specific configuration.
Check the effect page for the actual API. Then tune it until it belongs to your site.
Many Vault effects use browser APIs. That means they may need to run as client components.
If an effect uses scroll position, pointer movement, layout measurement, animation timelines, WebGL, canvas, or window, place it behind a client boundary.
"use client";For heavier effects, consider dynamic imports.
import dynamic from "next/dynamic";
const PhantomImageTrail = dynamic(
() => import("@/components/phantom-image-trail"),
{ ssr: false }
);Use this when server rendering does not make sense for the effect.
Especially for WebGL.
Servers are many things. They are not GPU theatres.
Vault effects may use Tailwind classes for layout, styling, responsive behavior, and motion-friendly structure. Make sure your Tailwind setup includes the folders where Vault files are added.
Example for Tailwind v3:
export default {
content: [
"./app/**/*.{ts,tsx}",
"./pages/**/*.{ts,tsx}",
"./components/**/*.{ts,tsx}",
"./components/hyperiux/**/*.{ts,tsx}"
],
theme: {
extend: {}
},
plugins: []
};Tailwind v4 projects may use a different configuration flow. If styles do not appear, confirm that Vault files are included in your source scanning setup.
If styles look broken, check your content paths first. It is almost always the content paths.
Check:
Check your Tailwind content paths or v4 source scanning setup.
Make sure the folder containing Vault files is included.
Check:
Profile before guessing.
Check:
If the fan starts negotiating, the effect needs attention.
Check:
Not every desktop interaction deserves a mobile twin.
Installation is not the finish line. Before publishing, check:
For most teams:
That is the workflow. Small motion. Big signal.