{"_id":"@anubis609/astroanimate-core","name":"@anubis609/astroanimate-core","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.2":{"name":"@anubis609/astroanimate-core","version":"0.1.2","description":"Astro-native animation component library","type":"module","sideEffects":false,"main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./AnimatedTabs":{"types":"./dist/components/AnimatedTabs/AnimatedTabs.astro","import":"./dist/components/AnimatedTabs/AnimatedTabs.astro","default":"./dist/components/AnimatedTabs/AnimatedTabs.astro"},"./AnimatedButton":{"types":"./dist/components/AnimatedButton/AnimatedButton.astro","import":"./dist/components/AnimatedButton/AnimatedButton.astro","default":"./dist/components/AnimatedButton/AnimatedButton.astro"},"./AnimatedCard":{"types":"./dist/components/AnimatedCard/AnimatedCard.astro","import":"./dist/components/AnimatedCard/AnimatedCard.astro","default":"./dist/components/AnimatedCard/AnimatedCard.astro"},"./FadeInText":{"types":"./dist/components/FadeInText/FadeInText.astro","import":"./dist/components/FadeInText/FadeInText.astro","default":"./dist/components/FadeInText/FadeInText.astro"},"./Loader":{"types":"./dist/components/Loader/Loader.astro","import":"./dist/components/Loader/Loader.astro","default":"./dist/components/Loader/Loader.astro"},"./ProgressBar":{"types":"./dist/components/ProgressBar/ProgressBar.astro","import":"./dist/components/ProgressBar/ProgressBar.astro","default":"./dist/components/ProgressBar/ProgressBar.astro"},"./ScaleIn":{"types":"./dist/components/ScaleIn/ScaleIn.astro","import":"./dist/components/ScaleIn/ScaleIn.astro","default":"./dist/components/ScaleIn/ScaleIn.astro"},"./Tooltip":{"types":"./dist/components/Tooltip/Tooltip.astro","import":"./dist/components/Tooltip/Tooltip.astro","default":"./dist/components/Tooltip/Tooltip.astro"},"./TypewriterText":{"types":"./dist/components/TypewriterText/TypewriterText.astro","import":"./dist/components/TypewriterText/TypewriterText.astro","default":"./dist/components/TypewriterText/TypewriterText.astro"},"./GlassCard":{"types":"./dist/components/GlassCard/GlassCard.astro","import":"./dist/components/GlassCard/GlassCard.astro","default":"./dist/components/GlassCard/GlassCard.astro"},"./ExpandableCard":{"types":"./dist/components/ExpandableCard/ExpandableCard.astro","import":"./dist/components/ExpandableCard/ExpandableCard.astro","default":"./dist/components/ExpandableCard/ExpandableCard.astro"},"./RevealImage":{"types":"./dist/components/RevealImage/RevealImage.astro","import":"./dist/components/RevealImage/RevealImage.astro","default":"./dist/components/RevealImage/RevealImage.astro"},"./CardStack":{"types":"./dist/components/CardStack/CardStack.astro","import":"./dist/components/CardStack/CardStack.astro","default":"./dist/components/CardStack/CardStack.astro"},"./CountUp":{"types":"./dist/components/CountUp/CountUp.astro","import":"./dist/components/CountUp/CountUp.astro","default":"./dist/components/CountUp/CountUp.astro"},"./Dock":{"types":"./dist/components/Dock/Dock.astro","import":"./dist/components/Dock/Dock.astro","default":"./dist/components/Dock/Dock.astro"},"./DockItem":{"types":"./dist/components/Dock/DockItem.astro","import":"./dist/components/Dock/DockItem.astro","default":"./dist/components/Dock/DockItem.astro"},"./Dropdown":{"types":"./dist/components/Dropdown/Dropdown.astro","import":"./dist/components/Dropdown/Dropdown.astro","default":"./dist/components/Dropdown/Dropdown.astro"},"./GridDotsBackground":{"types":"./dist/components/GridDotsBackground/GridDotsBackground.astro","import":"./dist/components/GridDotsBackground/GridDotsBackground.astro","default":"./dist/components/GridDotsBackground/GridDotsBackground.astro"},"./HighlightText":{"types":"./dist/components/HighlightText/HighlightText.astro","import":"./dist/components/HighlightText/HighlightText.astro","default":"./dist/components/HighlightText/HighlightText.astro"},"./InfiniteMarquee":{"types":"./dist/components/InfiniteMarquee/InfiniteMarquee.astro","import":"./dist/components/InfiniteMarquee/InfiniteMarquee.astro","default":"./dist/components/InfiniteMarquee/InfiniteMarquee.astro"},"./LiquidGlassCard":{"types":"./dist/components/LiquidGlassCard/LiquidGlassCard.astro","import":"./dist/components/LiquidGlassCard/LiquidGlassCard.astro","default":"./dist/components/LiquidGlassCard/LiquidGlassCard.astro"},"./AnimatedBorderButton":{"types":"./dist/components/AnimatedBorderButton/AnimatedBorderButton.astro","import":"./dist/components/AnimatedBorderButton/AnimatedBorderButton.astro","default":"./dist/components/AnimatedBorderButton/AnimatedBorderButton.astro"},"./ArrowCTAButton":{"types":"./dist/components/ArrowCTAButton/ArrowCTAButton.astro","import":"./dist/components/ArrowCTAButton/ArrowCTAButton.astro","default":"./dist/components/ArrowCTAButton/ArrowCTAButton.astro"},"./SlidingOverlayButton":{"types":"./dist/components/SlidingOverlayButton/SlidingOverlayButton.astro","import":"./dist/components/SlidingOverlayButton/SlidingOverlayButton.astro","default":"./dist/components/SlidingOverlayButton/SlidingOverlayButton.astro"},"./FillHoverButton":{"types":"./dist/components/FillHoverButton/FillHoverButton.astro","import":"./dist/components/FillHoverButton/FillHoverButton.astro","default":"./dist/components/FillHoverButton/FillHoverButton.astro"},"./GitHubShineButton":{"types":"./dist/components/GitHubShineButton/GitHubShineButton.astro","import":"./dist/components/GitHubShineButton/GitHubShineButton.astro","default":"./dist/components/GitHubShineButton/GitHubShineButton.astro"},"./StaggerTextButton":{"types":"./dist/components/StaggerTextButton/StaggerTextButton.astro","import":"./dist/components/StaggerTextButton/StaggerTextButton.astro","default":"./dist/components/StaggerTextButton/StaggerTextButton.astro"},"./JobCard":{"types":"./dist/components/JobCard/JobCard.astro","import":"./dist/components/JobCard/JobCard.astro","default":"./dist/components/JobCard/JobCard.astro"},"./ProductReviewCard":{"types":"./dist/components/ProductReviewCard/ProductReviewCard.astro","import":"./dist/components/ProductReviewCard/ProductReviewCard.astro","default":"./dist/components/ProductReviewCard/ProductReviewCard.astro"},"./ArticleCard":{"types":"./dist/components/ArticleCard/ArticleCard.astro","import":"./dist/components/ArticleCard/ArticleCard.astro","default":"./dist/components/ArticleCard/ArticleCard.astro"},"./NewsletterPopupCard":{"types":"./dist/components/NewsletterPopupCard/NewsletterPopupCard.astro","import":"./dist/components/NewsletterPopupCard/NewsletterPopupCard.astro","default":"./dist/components/NewsletterPopupCard/NewsletterPopupCard.astro"}},"scripts":{"build":"tsup","typecheck":"astro check && tsc --noEmit","test":"vitest run","test:e2e":"playwright test","lint":"eslint .","size":"node ./scripts/size-check.mjs","prepublishOnly":"npm run build && npm run typecheck && npm run test"},"size-limit":[{"path":"dist/index.js","limit":"5 kB"}],"keywords":["astro","animation","components","astro-component"],"author":{"name":"Vipin"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/astroanimate/astroanimate.git"},"bugs":{"url":"https://github.com/astroanimate/astroanimate/issues"},"homepage":"https://github.com/astroanimate/astroanimate#readme","peerDependencies":{"astro":"^4.0.0 || ^5.0.0 || ^6.0.0"},"devDependencies":{"@types/node":"^22.17.0","@astrojs/check":"^0.9.4","@eslint/js":"^9.35.0","@changesets/cli":"^2.29.7","@playwright/test":"^1.55.0","@size-limit/file":"^11.2.0","@size-limit/preset-small-lib":"^11.2.0","astro":"^5.0.0","eslint":"^9.35.0","jsdom":"^26.1.0","prettier":"^3.6.2","size-limit":"^11.2.0","tsup":"^8.5.0","typescript-eslint":"^8.43.0","typescript":"^5.9.2","vitest":"^3.2.4"},"gitHead":"8a2c6fda5ab53defbaee30f4606a139140635b61","_id":"@anubis609/astroanimate-core@0.1.2","_nodeVersion":"22.22.2","_npmVersion":"11.6.4","dist":{"integrity":"sha512-Qw7FOu74229sw++X+8+emee0NpM52IA98hb+98n9iRPvA2+ati0fflyWbsKTS0hl2n0CPI8Bg1GVVT52c/5r9g==","shasum":"5cf276619fa2f63a20635768faaca413ababcac9","tarball":"https://registry.npmjs.org/@anubis609/astroanimate-core/-/astroanimate-core-0.1.2.tgz","fileCount":78,"unpackedSize":288892,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAe/t+kVbuhK5xMjRPbKrB1JWQAyLrRckjJhBvlcFTzVAiEA+oR9aq9CWB6tSQ4npea1oCR4INawCxZkrQATWiBv+8s="}]},"_npmUser":{"name":"anubis609","email":"Vincent.adrian2005@gmail.com"},"directories":{},"maintainers":[{"name":"anubis609","email":"Vincent.adrian2005@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/astroanimate-core_0.1.2_1781481032354_0.19635335364505369"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-14T23:50:32.166Z","0.1.2":"2026-06-14T23:50:32.491Z","modified":"2026-06-14T23:50:32.671Z"},"maintainers":[{"name":"anubis609","email":"Vincent.adrian2005@gmail.com"}],"description":"Astro-native animation component library","homepage":"https://github.com/astroanimate/astroanimate#readme","keywords":["astro","animation","components","astro-component"],"repository":{"type":"git","url":"git+https://github.com/astroanimate/astroanimate.git"},"author":{"name":"Vipin"},"bugs":{"url":"https://github.com/astroanimate/astroanimate/issues"},"license":"MIT","readme":"# astroanimate\n\nAstro-native animation components: **AnimatedButton**, **AnimatedCard**, **ExpandableCard**, **FadeInText**, **GlassCard**, **Loader**, **ProgressBar**, **RevealImage**, **ScaleIn**, **Tooltip**, and **TypewriterText**.\n\n## Install\n\n```bash\nnpm install @astroanimate/core\n```\n\n## Quality Gates\n\n- `npm run build` builds ESM output into `dist/`\n- `npm run typecheck` runs `astro check` and TypeScript validation\n- `npm run lint` validates the package source and tooling config\n- `npm run test` runs the unit and contract test suite\n\n## Usage\n\n**Important:** Due to Astro's component resolution limitations, components must be imported via subpath exports. Named imports from the main barrel (e.g., `import { Tooltip } from \"@astroanimate/core\"`) will not work.\n\n### AnimatedButton\n\nCSS-first button effects with no hydration and a visible no-JS baseline.\n\n```astro\n---\nimport AnimatedButton from \"@astroanimate/core/AnimatedButton\";\n---\n\n<AnimatedButton variant=\"shimmer\">Explore</AnimatedButton>\n```\n\n### AnimatedCard\n\nInteractive card with lift, scale, shine, and flip effects.\n\n```astro\n---\nimport AnimatedCard from \"@astroanimate/core/AnimatedCard\";\n---\n\n<AnimatedCard\n  title=\"Lift Card\"\n  description=\"Hover to see the lift effect with ambient glow\"\n  variant=\"lift\"\n  color=\"rose\"\n/>\n```\n\n### FadeInText\n\nScroll-triggered fade-in with blur effect (opt-in enhancement).\n\n```astro\n---\nimport FadeInText from \"@astroanimate/core/FadeInText\";\n---\n\n<FadeInText duration={0.6} delay={0} enhance={true}>\n  <h3>Fade In Text</h3>\n  <p>This text fades in with blur effect on page load.</p>\n</FadeInText>\n```\n\n> When `enhance=true`, the element starts hidden and waits for JavaScript to initialise the IntersectionObserver. If JS is slow to load, the element has a built-in 2s CSS fallback animation that fires automatically — ensuring content never stays permanently invisible. This means in slow-JS environments, users may see content appear after roughly 2 seconds before the scroll-trigger behaviour takes over.\n\n### Loader\n\nCSS-only loading indicators with multiple variants.\n\n```astro\n---\nimport Loader from \"@astroanimate/core/Loader\";\n---\n\n<Loader type=\"spinner\" size={40} color=\"#3b82f6\" />\n<Loader type=\"dots\" size={40} color=\"#10b981\" />\n<Loader type=\"pulse\" size={40} color=\"#f59e0b\" />\n```\n\n### Tooltip\n\nHover-based tooltip with positioning options and optional enhancement.\n\n```astro\n---\nimport Tooltip from \"@astroanimate/core/Tooltip\";\n---\n\n<Tooltip content=\"Tooltip on top\" position=\"top\">\n  <button>Hover me</button>\n</Tooltip>\n```\n\n### ScaleIn\n\nScale-in animation with optional JS enhancement.\n\n```astro\n---\nimport ScaleIn from \"@astroanimate/core/ScaleIn\";\n---\n\n<ScaleIn enhance duration={0.6} delay={0}>\n  <h3>Scale In Content</h3>\n  <p>This content scales in when scrolled into view.</p>\n</ScaleIn>\n```\n\n### TypewriterText\n\nTypewriter effect with optional JS enhancement.\n\n```astro\n---\nimport TypewriterText from \"@astroanimate/core/TypewriterText\";\n---\n\n<TypewriterText text=\"Hello, World!\" enhance speed={50} />\n```\n\n### GlassCard\n\nGlassmorphism UI with 3D tilt effect and dynamic glare.\n\n```astro\n---\nimport GlassCard from \"@astroanimate/core/GlassCard\";\n---\n\n<GlassCard\n  title=\"Glassmorphism UI\"\n  subtitle=\"A New Design Trend\"\n  description=\"This card uses the glassmorphism effect to create a sense of depth and transparency.\"\n  enableTilt={true}\n  tiltIntensity={10}\n/>\n```\n\n### ExpandableCard\n\nExpandable/collapsible card with CSS baseline and optional JS enhancement.\n\n```astro\n---\nimport ExpandableCard from \"@astroanimate/core/ExpandableCard\";\n---\n\n<ExpandableCard\n  title=\"Expandable Card\"\n  subtitle=\"Click to expand\"\n  initialOpen={false}\n  enhance={true}\n  duration={300}\n>\n  <p>This content can be expanded and collapsed.</p>\n</ExpandableCard>\n```\n\n### ProgressBar\n\nProgress bar with size variants (small, medium, large).\n\n```astro\n---\nimport ProgressBar from \"@astroanimate/core/ProgressBar\";\n---\n\n<ProgressBar value={75} max={100} label=\"Loading\" size=\"medium\" color=\"#3b82f6\" />\n```\n\n### RevealImage\n\nText with two images that reveal on hover (pure CSS).\n\n```astro\n---\nimport RevealImage from \"@astroanimate/core/RevealImage\";\n---\n\n<RevealImage\n  text=\"Hover Me\"\n  image1=\"/path/to/image1.jpg\"\n  image2=\"/path/to/image2.jpg\"\n  alt=\"Reveal images\"\n/>\n```\n\n## Exports\n\n| Import                              | Component            |\n| ----------------------------------- | -------------------- |\n| `@astroanimate/core/AnimatedButton` | AnimatedButton.astro |\n| `@astroanimate/core/AnimatedCard`   | AnimatedCard.astro   |\n| `@astroanimate/core/ExpandableCard` | ExpandableCard.astro |\n| `@astroanimate/core/FadeInText`     | FadeInText.astro     |\n| `@astroanimate/core/GlassCard`      | GlassCard.astro      |\n| `@astroanimate/core/Loader`         | Loader.astro         |\n| `@astroanimate/core/ProgressBar`    | ProgressBar.astro    |\n| `@astroanimate/core/RevealImage`    | RevealImage.astro    |\n| `@astroanimate/core/ScaleIn`        | ScaleIn.astro        |\n| `@astroanimate/core/Tooltip`        | Tooltip.astro        |\n| `@astroanimate/core/TypewriterText` | TypewriterText.astro |\n\n## Peer dependency\n\n- **astro** `^4.0.0 || ^5.0.0`\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-afefd067d05d0ab99484108157c03e27"}