-
Notifications
You must be signed in to change notification settings - Fork 6
Coinlist sale page #246
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
Coinlist sale page #246
Conversation
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.
Pull Request Overview
This PR adds a new landing page for the tea token sale on CoinList, accessible at /coinlist on the pkgx.dev website. The page promotes early access to the tea token sale and provides information about the project's open source mission.
- New CoinList landing page component with hero section, countdown timer, and email signup form
- Integration of the new page into the main routing system
- Responsive design with Material-UI components and form handling for user engagement
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
src/pkgx.dev/CoinListLandingPage.tsx |
Complete landing page implementation with countdown timer, feature highlights, and email signup functionality |
src/pkgx.dev.tsx |
Added routing for the new /coinlist path and imported the landing page component |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
src/pkgx.dev/CoinListLandingPage.tsx
Outdated
| const [email, setEmail] = useState(""); | ||
| const [formEmail, setFormEmail] = useState(""); | ||
| const [isDeveloper, setIsDeveloper] = useState(false); | ||
| const [recaptchaToken, setRecaptchaToken] = useState<string | null>("dummy-token"); // Simplified for demo |
Copilot
AI
Sep 23, 2025
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.
Using a hardcoded 'dummy-token' for reCAPTCHA in production code poses a security risk as it bypasses spam protection. The reCAPTCHA integration should be properly implemented before deployment.
src/pkgx.dev/CoinListLandingPage.tsx
Outdated
| const handleSubscribe = (e: React.FormEvent) => { | ||
| e.preventDefault(); | ||
| if (!email) return; | ||
| alert(`Thanks! We'll keep you posted at ${email}.`); | ||
| setEmail(""); | ||
| }; |
Copilot
AI
Sep 23, 2025
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.
The handleSubscribe function and related email state appear to be unused code. The actual form submission is handled by handleFormSubmit which uses formEmail state. This unused code should be removed to avoid confusion.
| formData.append('field[5]', isDeveloper ? 'Yes' : 'No'); | ||
| formData.append('g-recaptcha-response', recaptchaToken || ''); | ||
|
|
||
| const response = await fetch('https://teaxyz.activehosted.com/proc.php', { |
Copilot
AI
Sep 23, 2025
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.
The hardcoded API endpoint URL should be moved to an environment variable or configuration file to allow for different environments (development, staging, production) and improve security practices.
New page on https://pkgx.dev/coinlist