Show HN: Someday, Open-Source Calendly Alternative for Gmail / Google App Script
github.comFree and open-source. Simple alternative to cal.com / calendly, built on Google-App-Script for Gmail users. Built with modern technologies like React, TypeScript, Shadcn/UI, and Vite.
This project is awesome! Using Google Apps Script for an appointment link is such a clever idea—just the right balance of simplicity and functionality.
Google Apps Script is such an underrated tool. I use it all the time to link up different services, and it’s truly “serverless” in a way that makes sense. No added complexity—just webhook handling and periodic tasks, which is usually all I need to sync ticket systems with Slack, pull in data from Sentry, and so on. Plus, it’s straightforward, no extra layers to worry about. LLMs are actually pretty handy for getting these scripts going too.
I use Google Calendar’s scheduling and think it’s great, but it does have limits. I still have to scrape calendar events to keep an ongoing list in a spreadsheet, which helps for billing clients by month. Google Apps Script makes all this work reliably without extra cost or maintenance.
There are other options, sure, but asking someone to set up PostgreSQL, Next.js, or Docker just for a personal scheduling link seems like overkill. For a solution that just works without needing constant attention, Apps Script is more than enough.
I agree with you, and I’d like your opinion on working around the cpu budgeting. Whenever I’ve needed to run a long task, like exporting gmails , I’ve needed to run it via a web browser on a loop.
Have you found a workaround for long-running tasks that isn’t terribly complex?
I'm not sure what operations you're doing that you're CPU bound.
When exporting Gmail and hitting an execution timeout, I would implement partitioning by date. Google Apps Script has a lock mechanism ( https://developers.google.com/apps-script/reference/lock ), and you can use user properties for progress tracking ( https://developers.google.com/apps-script/reference/properti...() ). Therefore, you can schedule a task every x minutes to pull x days of data and keep the cursor in user properties.
Yeah that’s what I mean. Another trick I’ve used is building a web page that reloads itself because interactive calls have more generous quotas
I find it super interesting from a technical point of view, but I don't see the advantage over using cal.com.
@kwanbix, do you use hosted cal.com or self-hosted? If self-hosted, where is it hosted? How much time does it require for upkeep yearly? What is the infra cost?
hosted at cal.com. 0 cost.
I use llms to write app scripts for creating Google sheet functions and it works very nicely, well it works nicely when it works nicely, as things go with llms
Really interesting to see this built on Google Apps Script such an underrated gem for quick, reliable automations! Cal.com is already out there and doing great, but it’s still cool to see this lightweight approach. Sometimes simpler is just better, especially for folks who don’t need a full setup and just want a scheduling tool that ties right into Gmail.
It may be early, but great job putting it out there! Appreciate seeing alternatives that keep things lean and accessible-nice work!
I prefer something like this over Cal because Cal is VC funded and we all know what happens with those.
it’s great to see more utilities taking advantage of Google App Script. It is one of the best things about Google’s Ecosystem, basically a server-side AppleScript for Google’s products, and not enough people take advantage of it.
> not enough people take advantage of it.
given how google just discontinues services on a whim these days, i'd be afraid to have a bunch of stuff in app script that i depend on.
This is simply confusing the relative importance of different products.
Sheets + Apps Script powers the business world. The amount of critical business logic that would simply stop working and the trust that would be lost, if Google decided to pull Apps Script from Google Workspace's 10 million businesses, is hard to fathom.
Gmail is going nowhere. Google Sheets, Docs and Calendar is going nowhere. Apps Script is going absolutely nowhere.
> the trust that would be lost
you'd think so, but lots of this trust has already been lost when google started pulling highly used services like rss!
And what if somehow, they find appscript to be too burdensome, when it does not derive much, if any, revenue?
> lots of this trust has already been lost when google started pulling highly used services like rss!
The people making decisions in businesses who use Google Workspace, as a category, literally do not care at all about what Google did to Google Reader and most other end user project that Google shut down. They only care about stuff that is critical to their business and how reliable Google is in that regard.
> And what if somehow, they find appscript to be too burdensome, when it does not derive much, if any, revenue?
If you make unreasonable enough assumptions, anything is thinkable.
I think you're generally right, but the major stumbles in the messaging market leave me insecure about Google's ability to develop and sustain serious products long term, besides search.
I use it to delete emails in my inbox that have ads in them
Google also revamped their appointment scheduling feature in Google Calendar, though I believe it is limited to Google Workspace subscribers. It’s basic but works quite well.
https://workspace.google.com/resources/appointment-schedulin...
We really wanted to use this, but having an appointment link creates a permanent vertical "event" in your own calendar that you can't get rid of. So adding multiple appointment links (e.g. one for 30mins and one for 60mins) completely destroys your own calendar view.
Yes sort of enough to be useful to use, and I do use it, but not complete enough to be perfect. A bit like Google tasks!
It does the main things though - it can check other calendars, people can book into your calendar, it deals with time zones and schedules.
It fits into the valley of "use if you are already using Google stuff alot, but not worth it as a solo feature if you don't".
Cal.com is way better. But then that is no suprise, it's their only job.
In the desktop version of the calendar, you can click the view settings in the upper right and turn off calendar appointments
They still show up on the mobile version of Google calendar though :/
You can hide appointment schedules in desktop view: https://workspaceupdates.googleblog.com/2023/10/new-google-c...
Thank you! That's such a strange place to put it. Silly me, looking on the "Settings" > "View options" page instead of the button that says "Week".
Edit: doesn't look like there is the equivalent option on mobile, so unfortunately appointments still nukes my phone calendar usability, which is also a deal breaker.
I create two: 30min and 45min, then for longer (rare) I just ask people to book two adjacent slots. I've had no pushback.
Not limited to Google Workspace. I use it with a regular Gmail account.
Huh. Google Workspace user here. I didn’t know this existed! Thank you.
Dark mode calendar letters are too dark to read.
[flagged]
The challenge to replace Calendly is to build a brand that users feel comfortable clicking. Microsoft (Microsoft Booking) and Google (https://calendar.app.google/weird-hash-value) both dropped the ball here, even though they offer scheduling features, which can compete with calendly.
Calendly has become completely enshitified in less than a year.
It used to be great due to its simplicity.
It has now turned into a shitshow of a platform with user accounts, settings, and a load of features nobody asked for.
It has become a sales oriented product, which is where the alternatives struggle and they shine (relatively). Round robin, intersecting calendars etc
They have dropped the ball on the admin UX and menu design, very confusing.
the investors did
Are you talking about the host (calendar owner) or the client (subscriber)?
Has anyone built this but for fastmail?
Ideally wouldn't this just integrate over a standard like CalDAV rather than be service specific?
ideally
Isn't cal.com open source already?
Show HN is more about showing and discussing something someone has made than an inquiry into the existence of things like the thing being showhn.
It never stops people from commenting “why didn’t you use X obscure technology I made?” unfortunately.
It’s a valid question though; I’m also curious what the motivation was here given Cal.com is also open source hmmm
It's a perfectly valid question if one does the minimum to engage with the thing being showhn otherwise it's a reflexive and, as you can see in the several near-identical comments, repetitive trope.
Yes, but the difference isn't purely that this one is open source. It's also way cheaper (in terms of both money and also effort) to host because you can do as the demo does and use the free Google Apps Script for your backend and any of the free static web hosts for your frontend.
I believe Cal.com is the Open-Source Calendly Alternative!
https://github.com/calcom
Was excited about this and then saw AGPL on it. Note the OP's software is MIT. My personal preference is GPL, but MIT is better than AGPL in my opinion.
Yeah, you know the “open-source X alternative“ branding has gone too far when we get to this point. With that said, this seems cool as far as being built on Google app scripts.
Ooh
I'm still waiting for someone to make a calendar that fills the hole in my heart that Sunset left when Micro$hit bought it.
What was so special about Sunset?
[dead]
Cal.com is free open source too. React+TS, shadcn-style components. Built on Nextjs though. https://github.com/calcom/cal.com
[dead]
[flagged]
Caldendly/cal.com don't compete with/replace CalDAV. They solve different problems. CalDAV is a protocol for exchanging calendar data. Calendly and alternatives are tools to let people outside your organization schedule an appointment with you.
It's a bit rough around the edges, but I made precisely this. You bring your own CalDAV server, and it will create a REST API that allows for scheduling. Alternatively, the CalDAV functionality is separated into a library, so you don't have to use the provided REST endpoints.
The front-end is separate, and I haven't put much love into making it useful for other people. But it does work.
https://github.com/justinrubek/calendar-scheduler
> besides a fancy UI
Well… this…
Not everyone knows about the CalDAV protocol, let alone how to interact with it.
The extreme vast majority of calendar users probably wouldn’t care to learn either.