DevDogs-UGA / DevDogs-Website

The DevDogs Website's frontend repository.
https://www.devdogs.uga.edu
0 stars 15 forks source link

Contact us page #58

Closed jayp822 closed 2 months ago

jayp822 commented 2 months ago

57

Created frontend for contact us page also made the form into a component for others to use. I did not do the backend portion of the form when someone clicks submit since I don't know how you guys want that done. I would use a third party for managing emails. React email and resend together are a good safe and reliable option.
https://react.email/ https://resend.com/ Also Amazon SES is good if you want full control. https://aws.amazon.com/ses/

https://github.com/user-attachments/assets/d552e62a-5c4e-4146-ab61-d3fcc59f46df

justinquinnb commented 2 months ago

Forgive my naivete-- can the form's fields not be packaged in an email that is sent to devdogs@uga.edu upon submitting as-is?

We're currently using MailChimp to handle outbound messages and campaigns. In terms of inbound messages we have nothing set up though as there hasn't been a need. I'm beyond open to the options you've mentioned if it'll integrate with the site nicely and perhaps even replace MailChimp for outbound messages too, assuming the others mentioned here agree. Let's see what they think.

Other than that this looks great, you've knocked it out of the park yet again with this!

jayp822 commented 2 months ago

As far as I am aware a third party email service provider or our own email server is required for the transmission of the email. I think Mailchimp can handle inbound messages as well. All we need is a email service provider or SMTP server. Mail servers play a crucial role in the email delivery process. Without them, users would have no way of transferring those messages to and from other mail clients. There are plenty of free services however it requires creating an account and then using the API Key they give so we can use it in our code to handle form submissions. Also the API key should never be posted to the github repo and it should be in a .env.local file. The simplest way I could do it is create a SMTP server, however it would be less secure and rate limited potentially. The fastest way and free way would be to use resend, react mail, and NextJs server components.

nivedhanatarajan7 commented 2 months ago

The Contact page looks nice and the components look great! There seems to be something happening with positioning and content fitting the page as intended.

On desktop view, the position of the card seems different: image image

In the mobile view, the position also seems to be different: image