Skip to content
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

feat: implemented email validation in the homepage newsletter #2748

Closed

Conversation

AKACHI-4
Copy link

@AKACHI-4 AKACHI-4 commented Mar 8, 2024

Description

  • Add email validation to the Subscribe Newsletter homepage.
  • Use AbstractAPI Email Validation, which provides 100 API requests per month.
  • Generalize the code for all three newsletter statuses: success, error, and invalid.

Related issue(s)
Fixes #2125

Implementation
AsyncAPI Initiative for event-driven APIs

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Welcome to AsyncAPI. Thanks a lot for creating your first pull request. Please check out our contributors guide useful for opening a pull request.
Keep in mind there are also other channels you can use to interact with AsyncAPI community. For more details check out this issue.

Copy link

netlify bot commented Mar 8, 2024

Deploy Preview for asyncapi-website ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit 9bdfdc5
🔍 Latest deploy log https://app.netlify.com/sites/asyncapi-website/deploys/65eab66bd788830008ab3557
😎 Deploy Preview https://deploy-preview-2748--asyncapi-website.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@AKACHI-4 AKACHI-4 changed the title Implemented email validation in the Homepage Newsletter !! feat: Implemented email validation in the Homepage Newsletter !! Mar 8, 2024
@asyncapi-bot
Copy link
Contributor

⚡️ Lighthouse report for the changes in this PR:

Category Score
🔴 Performance 34
🟢 Accessibility 98
🟢 Best practices 92
🟢 SEO 100
🔴 PWA 33

Lighthouse ran on https://deploy-preview-2748--asyncapi-website.netlify.app/

@AKACHI-4 AKACHI-4 changed the title feat: Implemented email validation in the Homepage Newsletter !! feat: implemented email validation in the homepage newsletter Mar 8, 2024
@anshgoyalevil
Copy link
Member

Use AbstractAPI Email Validation, which provides 100 API requests per month

IMHO, we won't use any paid external service unless it is a Freemium tool (with large FREE limits, unlike 100 requests per month, which can be abused by even a single bot).

@AKACHI-4
Copy link
Author

AKACHI-4 commented Mar 8, 2024

Use AbstractAPI Email Validation, which provides 100 API requests per month

IMHO, we won't use any paid external service unless it is a Freemium tool (with large FREE limits, unlike 100 requests per month, which can be abused by even a single bot).

Ah okay. Got it. I will switch to some other tool that's free with a high limit.

Also, I'm open to any member suggesting some tools.

@RegretfulWinter
Copy link

Hi @AKACHI-4 , I did some research on Email verification tool and I found some tools (for free) :

  • check if email exists. . Did not speficy the number of verification request limit of validation. Its SaaS version is paid but for this open source version it's free.
  • verifalia. Stated that they doesnt have a verification limit, but having HTTP rate limits.
截屏2024-03-09 上午9 50 44

Hope it helps. Will update if I found more tools

@AKACHI-4
Copy link
Author

Hey @RegretfulWinter, Thanks for this .. It means a lot to me. I will check out and commit changes ASAP.

@AKACHI-4
Copy link
Author

I am considering using @chimanos/deep-email-validator. After reviewing the code and documentation, I found that this package consolidates regex, SMTP, and disposable mail checks. The package is free and can be downloaded from npm.

The reasons I chose not to go with the following options are:

  • check-if-mail-exists: While the Docker method seems viable, the problem is that we would have to keep a server running regardless of the current status of newsletter requests. This could result in extra processing as we would have to deploy it on a cloud for users to maintain.
  • verifalia : The API documentation is somewhat tangled and it's hard to obtain any fixed information regarding the API's use with the current request rate limit. It also throws an HTTP 429 Status Code when the limit is exceeded.

However, I am open to further suggestions for improvement.

@AKACHI-4
Copy link
Author

image

Now, that's not good. I should have checked before making a decision... Results, I should continue my search and work on this issue.

@AKACHI-4
Copy link
Author

AKACHI-4 commented Mar 13, 2024

With my search so far, it seems impossible to find a completely free email validation service. The best I've found offers 50 validations per day, which could easily be exhausted by bot spamming.

What could be the solution?
Perhaps using npm packages or creating something myself. For instance, I could use Rust code and check-if-mail-exists, then deploy it. However, I must consider the worst-case scenario of handling 1 million validation requests per day. That's a significant load, and even my API might not be able to handle it without asking me to pay.

I suppose 50 validations per day might be sufficient. If not, I could use regex and SMTP check npm packages as an alternative.

@AKACHI-4
Copy link
Author

AKACHI-4 commented Mar 13, 2024

  • verifalia. Stated that they doesnt have a verification limit, but having HTTP rate limits.
截屏2024-03-09 上午9 50 44

The part where they say unlimited is supposed to refer to concurrent verification jobs at a time, and they don't have a limit over that, which in no way corresponds with the count of requests a single account or user can make.

I logged in and found only those 50 daily credits tho.

@sambhavgupta0705
Copy link
Member

@AKACHI-4 what's the status of this PR

@sambhavgupta0705
Copy link
Member

closing this as there is no update from the contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG]: No form validation in Subscribe to our newsletter to receive news about AsyncAPI in home Page
5 participants