Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Cover image for Validate your SaaS idea while building an audience
Clerk profile imageBrian Morrison II
Brian Morrison II forClerk

Posted on • Originally published atclerk.com

     

Validate your SaaS idea while building an audience

The fastest way to validate market demand for a SaaS? A waitlist.

When used correctly, a waitlist isn't just a sign-up form - it's a powerful market research tool. By allowing potential users to signal their interest by registering their email, you create a valuable mechanism to validate your concept before investing significant time and resources.

Integrating your list with a communication tool such as a newsletter platform opens a direct channel with future customers to share product updates, solicit feedback, and build up anticipation for your launch.

In this article, you’ll learn how to use the Clerk drop-in waitlist component and integrate it with Loops.

What is Clerk?

Clerk is a user management platform designed to get authentication integrated into your application as quickly and easily as possible. This includes drop-in UI components for common user management requirements such as sign-in/sign-up pages, social sign on providers, and user profiles.

One such is the Waitlist component that renders a form where potential customers can enter their email addresses:

The Clerk Waitlist component

Upon entering their email address, it will be available in the Clerk dashboard under theWaitlist tab where you can quickly invite interested users to join your platform with a single click.

The waitlist in the Clerk dashboard

Clerk offers webhooks as a way to integrate with external systems. When email addresses are captured, Clerk offers a webhook event that can be used to inform another system that someone has entered their email into the waitlist.

The other system simply needs an HTTP endpoint designed to parse the webhook event data.

Loops offers an integration with Clerk by providing a webhook receiver endpoint that will automatically parse the event data and add the email address to your audience. It can also receive events when a user updates their info so that your list always contains the latest information about your users.

This integration combines the simplicity of Clerk's drop-in waitlist component with the flexibility of Loops's audience management.

How to follow along

While the process described above is the same regardless of the chosen framework, the remainder of this article will useNext.js. You may use your own Next.js application with Clerk, bootstrap one using ourquickstart guide, or clone thearticle-1 branch from the repository for Kozi, an open-source project & knowledge management tool.

You’ll also need a domain name and a production Clerk instance configured with the appropriate DNS records. If you do not already and would still like to follow along, refer toour guide on deploying your application to production before reading on.

Why do I need a production Clerk instance?

When you first set up a Clerk application, we automatically create a development instance for you to quickly start integrating Clerk with your application. These development instances have a more relaxed security posture to make local development easier, such as not requiring HTTPS connections and using shared OAuth credentials for single sign-on providers across the Clerk platform.

Production instances are more secure and do not have the same security exceptions, but require several DNS records so that Clerk can handle authentication on your domain. This approach avoids cross-domain authentication which could increase the risk of a cross-site scripting attack.

Adding the waitlist component

When added to a page, the<Waitlist /> component rendersa form that matches the style of our other drop-in components. The following code snippet shows what would be required to add it to the/waitlist path of a Next.js application, along with a few Tailwind classes to center the form on the page:

import{Waitlist}from'@clerk/nextjs'functionWaitlistPage(){return(<divclassName="flex h-screen items-center justify-center"><Waitlist/></div>)}exportdefaultWaitlistPage
Enter fullscreen modeExit fullscreen mode

Integrating with Loops

Over in Loops, navigate to your team settings, expand theIntegrations node, and selectClerk. You can then enable the integration which will then show anEndpoint URL which Clerk can communicate with.

Copy this URL as you’ll need it in the next step.

The Clerk integration in the Loops dashboard

Head back to the Clerk dashboard for your application and navigate toConfigure, then selectWebhooks from the left sidebar. ClickAdd Endpoint.

The Clerk dashboard showing the Webhooks tab

Paste in the URL from Loops into theEndpoint URL field. In theSubscribe to events section, type in “waitlist” and check both options. You can also checkuser.created anduser.updated as they are supported in Loops, but aren’t necessary for this guide. Once done, scroll to the bottom and clickCreate.

The Clerk dashboard showing the Webhook URL and events

After creating the endpoint, locate theSigning Secret in the lower right of the field. Click the eye icon to show the secret and copy the value.

The Clerk dashboard showing the Signing Secret

Back in Loops, paste the signing secret into theSigning Secret field, toggle on the events you selected in Clerk, and clickSave at the bottom of the form.

The Loops dashboard showing where to place the signing secret

And thats it! Going forward, anyone who enters their email address into your waitlist form will automatically be added to your mailing list in Loops.

Conclusion

By integrating the Clerk<Waitlist /> component with Loops, you can create a powerful feedback loop with your potential customers as the development of your application progresses.

While this article used Next.js to demonstrate how the waitlist component renders on a page, this component is available to many of our SDKs, includingReact,Vue.js,Astro, and others.

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

The most comprehensive User Management Platform

More fromClerk

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp