-
Notifications
You must be signed in to change notification settings - Fork 46
feat: add landing page with product info #78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
✅ All checks have passed successfully!
Coverage reports have been uploaded as artifacts. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting
src/scripts/landing-counters.ts
Outdated
* Animates numbers from 0 to target value with smooth transitions | ||
*/ | ||
|
||
import { ANIMATION_DURATIONS, OBSERVER_THRESHOLDS, ROOT_MARGINS } from '../data/landingContent'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import animation constants from correct module
The counters script pulls ANIMATION_DURATIONS
, OBSERVER_THRESHOLDS
, and ROOT_MARGINS
from landingContent
, but that module only exports route/link metadata. These constants actually live in landingAnimations.ts
, so the current import will fail TypeScript compilation with “has no exported member” and prevent the landing page from building.
Useful? React with 👍 / 👎.
<script src="../../scripts/landing-animations.ts"></script> | ||
<!-- Number counter animations --> | ||
<script src="../../scripts/landing-counters.ts"></script> | ||
<!-- Micro-interactions and hover effects --> | ||
<script src="../../scripts/landing-micro-interactions.ts"></script> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bundle landing scripts instead of referencing raw .ts files
The landing component inserts three <script>
tags that point directly at .ts
sources using relative strings. Astro does not emit these files automatically, so the built page will request /scripts/landing-animations.ts
(etc.) which either 404s or returns untranspiled TypeScript. As a result none of the animations, counters, or micro‑interactions execute in production. Use Astro.resolve
or move compiled JS into public
so the assets are bundled.
Useful? React with 👍 / 👎.
✅ All checks have passed successfully!
Coverage reports have been uploaded as artifacts. |
This PR introduces a comprehensive landing page for the AI Rules Builder product,
replacing the previous direct-to-app experience with a professional marketing page
that explains the product's value proposition and guides users to get started.
Key Features:
features, how-it-works, problem/solution, tech stack showcase, community, and CTAs
users to either the Rule Builder or Prompt Library
support
scroll-triggered effects with Safari-specific optimizations and reduced-motion support
prefers-reduced-motion
settings and providesfallback experiences
Technical Highlights:
src/components/landing/
landingData.ts
andlandingContent.ts
Browser Compatibility: