CINXE.COM

Get Started with TidyCal

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="csrf-token" content="IY29XvfrRoRAVhmUYRjG00fxL8w9nqJDubecrrTp"> <title>Get Started with TidyCal</title> <meta name="description" content="Calendar management and appointment scheduling without the hassle. Join 80,000+ other people. Sign up for TidyCal for free today."> <meta name="keywords" content="tidycal signup, tidycal register, calendly signup, calendly register"> <link rel="canonical" href="https://tidycal.com/register" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@Tidy_Cal" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="website" /> <meta property="og:title" content="Get Started with TidyCal" /> <meta property="og:description" content="Calendar management and appointment scheduling without the hassle. Join 80,000+ other people. Sign up for TidyCal for free today." /> <meta property="og:url" content="https://tidycal.com/register" /> <meta property="og:site_name" content="TidyCal" /> <meta property="og:image" content="https://asset-tidycal.b-cdn.net/img/social-share.png" /> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-MDNVPSWCJ1', { content_group: 'register' }); gtag('set', {'user_id': ''}); </script> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-NTZ7CVBL');</script> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> <link rel="manifest" href="/site.webmanifest"> <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#1569ee"> <meta name="msapplication-TileColor" content="#1569ee"> <meta name="theme-color" content="#1569ee"> <script> window.chatbaseConfig = { chatbotId: "0BcmBpArf5Or4OlwrjWt8", } </script> <script src="https://www.chatbase.co/embed.min.js" id="0BcmBpArf5Or4OlwrjWt8" defer> </script> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Thin.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Light.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Regular.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Italic.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Bold.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" href="https://asset-tidycal.b-cdn.net/fonts/Roboto-Black.ttf" as="font" type="font/ttf" crossorigin /> <link rel="stylesheet" href="https://asset-tidycal.b-cdn.net/css/app.css?id=c8ff77af88a61f824c1778f8f21fd940"> </head> <body class=""> <div class="alert-float-container px-3"> </div> <div class="alert-float-container px-3"> </div> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NTZ7CVBL" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div class="hp-current-wrapper min-vh-100 d-flex flex-column justify-content-between align-items-center"> <div class="helper"></div> <div class="container mt-md-5"> <div class="row justify-content-center"> <div class="col-md-8 col-lg-6 col-xl-6 col-xxl-5 position-relative py-3"> <div class="hp-current-bigBlueCircle-1"></div> <div class="hp-current-bigBlueCircle-3" style="bottom: -89px;"></div> <div class="card p-3 py-sm-4 px-md-5 justify-content-start rounded-4"> <div class="text-center w-100 mt-3 mb-4 pb-3 fw-light h5"> <a class="tc-logo-nav tc-logo ms-0 ms-md-1 d-inline-block" href="https://tidycal.com" aria-label="TidyCal"></a> </div> <form method="POST" action="https://tidycal.com/register" class="onsubmit-disable recaptcha-form" data-recaptcha-action="register"> <input type="hidden" name="_token" value="IY29XvfrRoRAVhmUYRjG00fxL8w9nqJDubecrrTp" autocomplete="off"> <h1 class="h3 fw-light mb-4 pb-2 lh-sm text-center"> Cool! Let's get you registered: </h1> <div class="mb-4"> <label for="name" class="form-label fw-bold">Your name:</label> <input type="text" name="name" id="name" class="form-control" value="" required autofocus> </div> <div class="mb-4"> <label for="email" class="form-label fw-bold">Your email:</label> <input type="email" name="email" id="email" class="form-control" autocomplete="username" value=""> </div> <div class="mb-4"> <label for="password" class="form-label fw-bold">Your password:</label> <input type="password" name="password" id="password" autocomplete="new-password" class="form-control" required> </div> <button type="submit" class="btn btn-primary w-100 mb-2 mb-sm-1 mt-1">Register →</button> <div class="d-flex align-items-center mt-3 mb-3"> <div class="col pt-1 mb-1 border-bottom"></div> <div class="text-secondary fst-italic mx-3 small">Or:</div> <div class="col pt-1 mb-1 border-bottom"></div> </div> <a class="btn border-primary w-100 mb-2" href="https://tidycal.com/auth/google"> <div class="d-flex align-items-center justify-content-between"> <img height="23" class="me-3" src="/img/integration-logo-google.png"> <span class="">Register with Google</span> <div aria-hidden="true"></div> </div> </a> <div class="text-center my-4"> <a class="text-decoration-none small" href="https://tidycal.com/login"> Already registered? </a> </div> <small class="text-center text-secondary extra-small opacity-50 mt-2"> This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" target="_blank">Privacy Policy</a> and <a href="https://policies.google.com/terms" target="_blank">Terms of Service</a> apply. </small> </form> </div> </div> <div class="col-12 col-md-4 col-lg-6 col-xl-6 pt-4 pt-xl-5" style="z-index: 1;"> <div class="text-center"> <div class="opacity-75 d-flex align-items-center justify-content-center flex-wrap pt-2 mb-3"> <img class="hp-current-social-proof-producthunt-laurel w-auto mx-3 mb-2" src="https://asset-tidycal.b-cdn.net/img/homepage/ph-day.svg" alt="ProductHunt Product of the Day"> <img class="hp-current-social-proof-producthunt-laurel w-auto mx-3 mb-2" src="https://asset-tidycal.b-cdn.net/img/homepage/ph-week.svg" alt="ProductHunt Product of the Week"> <img class="hp-current-social-proof-producthunt-laurel w-auto mx-3 mb-2" src="https://asset-tidycal.b-cdn.net/img/homepage/ph-month.svg" alt="ProductHunt 2º Product of the Month"> </div> <div class=""> <img class="hp-current-social-proof-producthunt-logo w-auto" src="https://asset-tidycal.b-cdn.net/img/homepage/social-proof-producthuntLogoWhite.svg" alt="ProductHunt"> </div> </div> <div class="d-flex flex-wrap align-items-center justify-content-between px-xl-5 mt-5 mt-lg-5"> <div class="col-12 col-lg-6 mb-5"> <div class="d-flex flex-column align-items-center justify-content-center"> <picture> <source type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-trustpilotRating.webp"> <source type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-trustpilotRating.png"> <img width="150" class="mw-100 h-auto" loading="lazy" src="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-trustpilotRating.png" alt="Trustpilot rating: 4.7 Stars"> </picture> <div class="small mt-2 mb-3 text-white">Rated: 4.7 - Excelent</div> <img width="117" class="mw-100 h-auto" loading="lazy" src="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-trustpilotLogoWhite.svg" alt="Trustpilot"> </div> </div> <div class="col-12 col-lg-6 mb-5"> <div class="d-flex flex-column align-items-center justify-content-center"> <img width="187" class="mw-100 h-auto mb-4 pb-2" loading="lazy" src="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-appsumoRating.svg" alt="AppSumo rating: 4.3 Tacos"> <img width="121" class="mw-100 h-auto" loading="lazy" src="https://asset-tidycal.b-cdn.net/img/homepage/b-01/social-proof-appsumoLogoWhite.svg" alt="AppSumo"> </div> </div> </div> <div id="reviewImagesContainer" class="d-none mb-4 d-lg-flex align-items-center justify-content-center px-3 px-xl-0" style="min-height: 350px"> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-8.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-8.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-8.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-3.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-3.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-ph-3.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-8.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-8.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-8.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-11.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-11.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-11.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-4.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-4.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-4.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-6.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-6.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-6.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-4.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-4.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-4.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-5.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-5.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-5.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-11.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-11.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-11.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-1.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-1.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-1.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-7.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-7.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-7.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-3.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-3.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-3.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-9.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-9.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-9.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-3.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-3.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-3.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-9.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-9.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-9.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-5.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-5.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-5.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-1.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-1.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-ph-1.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-7.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-7.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-7.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-5.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-5.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-ph-5.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-2.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-2.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-2.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-10.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-10.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-10.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-6.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-as-6.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-as-6.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-4.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-4.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-ph-4.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-2.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-ph-2.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-ph-2.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-10.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-10.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-10.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-1.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-1.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-1.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> <div class="bg-white p-2 rounded-3 review-image w-auto" style="display: none; opacity: 0; transition: opacity 0.5s ease; max-width: 450px;"> <picture> <source class="img-fluid" type="image/webp" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-2.webp" style="max-height: 400px;"> <source class="img-fluid" type="image/png" srcset="https://asset-tidycal.b-cdn.net/img/homepage/reviews/review-tp-2.png" style="max-height: 400px;"> <img src="https://asset-tidycal.b-cdn.net/review-tp-2.png" alt="Client review" class="m-auto img-fluid" loading="lazy" style="max-height: 400px;"> </picture> </div> </div> <script> document.addEventListener('DOMContentLoaded', function() { const images = document.querySelectorAll('#reviewImagesContainer .review-image'); let currentIndex = 0; let rotationInterval; let isPaused = false; let lastChangeTime = Date.now(); function showNextImage() { if (isPaused) return; changeImage((currentIndex + 1) % images.length); } function changeImage(newIndex) { images[currentIndex].style.opacity = '0'; setTimeout(() => { images[currentIndex].style.display = 'none'; currentIndex = newIndex; images[currentIndex].style.display = 'block'; setTimeout(() => { images[currentIndex].style.opacity = '1'; }, 50); }, 300); lastChangeTime = Date.now(); } function startRotation() { stopRotation(); rotationInterval = setInterval(() => { const currentTime = Date.now(); if (currentTime - lastChangeTime >= 5000) { showNextImage(); } }, 100); } function stopRotation() { clearInterval(rotationInterval); } // Show the first image images[0].style.display = 'block'; setTimeout(() => { images[0].style.opacity = '1'; }, 50); // Start the rotation startRotation(); // Add event listeners for mouse enter and leave const container = document.getElementById('reviewImagesContainer'); container.addEventListener('mouseenter', () => { isPaused = true; }); container.addEventListener('mouseleave', () => { isPaused = false; lastChangeTime = Date.now(); // Reset the timer when mouse leaves }); // Add click event listener to change image based on click position container.addEventListener('click', (event) => { const rect = container.getBoundingClientRect(); const x = event.clientX - rect.left; const containerWidth = rect.width; if (x < containerWidth / 2) { // Clicked on left half, rotate backwards changeImage((currentIndex - 1 + images.length) % images.length); } else { // Clicked on right half, rotate forwards changeImage((currentIndex + 1) % images.length); } }); }); </script> </div> </div> </div> <footer class="text-white"> <div class="w-100 pt-5 pb-5"></div> <a href="https://appsumo.com/collections/appsumo-originals/?utm_source=originals&amp;utm_medium=website&amp;utm_campaign=tidycal" target="_blank" onclick="trackAppSumoClick(this, 'footer')" aria-label="AppSumo Originals"> <div class="logo-originals-white mx-auto"></div> </a> <div class="w-100 p-3 text-white text-center small"> <small> Part of the <a class="text-decoration-none fw-bold text-white" href="https://appsumo.com/collections/appsumo-originals/?utm_source=originals&amp;utm_medium=website&amp;utm_campaign=tidycal" target="_blank" onclick="trackAppSumoClick(this, 'footer')">AppSumo</a> family. &copy; 2025 Sumo Group, Inc. All rights reserved. <a class="text-white" href="https://tidycal.com/tos">Terms</a>. <a class="text-white" ehref="https://tidycal.com/privacy-policy">Privacy</a>.</small> </small> </div> </footer> </div> <!-- Scripts --> <script src="https://asset-tidycal.b-cdn.net/js/app.js?id=9778da28e4379ab0273046eca57068fa"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10