Skip to content

Enhancement#141

Merged
akagtag merged 16 commits intoreleasefrom
staging
Aug 15, 2025
Merged

Enhancement#141
akagtag merged 16 commits intoreleasefrom
staging

Conversation

@djdiptayan1
Copy link
Copy Markdown
Member

No description provided.

@vercel
Copy link
Copy Markdown
Contributor

vercel bot commented Apr 5, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
githubsrmv2 Ready Ready Preview Comment Aug 15, 2025 3:41pm

@djdiptayan1
Copy link
Copy Markdown
Member Author

LGTM

Enhance Sponsors component with loading state and skeleton UI; fix mo…
… templates and logging for better debuggingInitial commit: GitFest 2025 website with dark theme and green accents
@githubcommunitysrm githubcommunitysrm added the enhancement New feature or request label Aug 14, 2025
Enhance contact form validation and submission process; improve email templates and logging for better debugging
Copy link
Copy Markdown

Copilot AI left a 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 enhances the project with email functionality for the contact form, UI improvements for the gallery and sponsor sections, and fixes to MongoDB model definitions. The changes implement a comprehensive email system using Nodemailer for contact form submissions and improve the overall user experience with loading states and better validation.

Key changes include:

  • Implementation of professional email templates and Nodemailer integration for contact form submissions
  • Addition of loading states with skeleton components for the sponsors section
  • Enhanced form validation and user feedback in the contact form
  • Bug fixes in MongoDB model definitions to prevent duplicate model creation

Reviewed Changes

Copilot reviewed 13 out of 16 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
pages/api/v1/contact/nodemailer.js New comprehensive email service with professional HTML templates for contact notifications
pages/api/v1/contact/index.js Complete refactor to use email service with enhanced validation and error handling
components/Contact/ContactForm.jsx Enhanced frontend validation, better user feedback, and improved form layout
components/Home/Sponsors.jsx Added loading state with skeleton components for better UX
utils/models/*.model.js Fixed MongoDB model creation to use mongoose.models instead of mongoose.model
package.json Added nodemailer dependency
styles/globals.css Added Swiper carousel styling
components/Home/Gallery.jsx Added new gallery images and improved Swiper configuration

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

</svg>
GitHub
</a>
<a href="https://githubsrmist.in"
Copy link

Copilot AI Aug 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The website URL 'https://githubsrmist.in' in the confirmation email template may be incorrect. Based on the sitemap file, the actual domain appears to be 'https://githubsrmist.tech'.

Suggested change
<a href="https://githubsrmist.in"
<a href="https://githubsrmist.tech"

Copilot uses AI. Check for mistakes.
name,
email,
message
email: email.replace(/(.{3}).*(@.*)/, "$1***$2"), // Mask email for logging
Copy link

Copilot AI Aug 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The email masking regex is insufficient for security. It only masks after the 3rd character but doesn't handle edge cases like very short email addresses. Consider using a more robust masking approach or logging less sensitive data.

Suggested change
email: email.replace(/(.{3}).*(@.*)/, "$1***$2"), // Mask email for logging
email: maskEmail(email), // Mask email for logging

Copilot uses AI. Check for mistakes.
{formData.message.length > 2000 && (
<p className="text-red-500 text-sm -mt-6 mb-2">Message must be less than 2000 characters</p>
)}
<div className="text-right text-gray-400 text-xs -mt-6 mb-4">
Copy link

Copilot AI Aug 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The textarea element is missing accessibility attributes like 'aria-label' or 'aria-describedby' to properly describe the input field for screen readers, especially since it has validation requirements.

Copilot uses AI. Check for mistakes.
@akagtag akagtag merged commit 138a9b2 into release Aug 15, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants