Nuxt 3 / 4 · Vue 3 · TypeScript

More than just
a Nuxt starter kit.

Five focused, production-grade packages for Nuxt 3 / 4 and Vue 3 — a typed fetch client, encryption, layout-based middleware, and two headless UI components. Pick one, pick all, ship faster.

$pnpmadd@alikhalilll/a-ghost-skeleton
5packages
MITlicense
Nuxt 3+tested
SSRfirst-class
UI · Vue 3

a-ghost-skeleton

A skeleton that measures itself from your real component. One template, zero layout shift, chrome captured verbatim from the real card — including backgrounds, borders, and shadows.

Zero layout shiftChrome captureSynced shimmerReduced-motion aware
Read the docs
UI · Vue 3

a-tel-input

An international phone input that gets out of the way. Country auto-detect, real-time libphonenumber-js validation, a responsive popover / drawer picker, and first-class VeeValidate + Zod wiring.

Auto country detectlibphonenumber validationVeeValidate + ZodRTL + i18n
Read the docs

Try a dial code — the flag reveals when it matches.

Nuxt Module

nuxt-api-provider

A typed fetch client with TanStack-Query-style caching, interceptors, retry with backoff, and upload / download progress — plus a framework-agnostic core for Nitro and workers.

Typed end-to-endCache + SWRRetry + backoffUpload progress
Read the docs
Typed GET + cache-dedupe
Click Fetch to see the response.
Nuxt Module

nuxt-crypto

AES-256-GCM + PBKDF2 encryption built on the Web Crypto API. Optional device-fingerprint binding, pluggable algorithms, and a server-only mode so the passphrase never ships to the browser.

AES-256-GCMPBKDF2 key cacheDevice fingerprintServer-only mode
Read the docs
Nuxt Module

nuxt-auto-middleware

Declarative layout-based route middleware for Nuxt 3 / 4. Glob matching, named groups, per-page overrides, and a typed registry so middleware names are compile-time errors when they drift.

Layout-basedGlob patternsNamed groupsTyped registry
Read the docs
resolved chain
auth