Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: KittyCal – minimalist PWA calendar app for couples (kittycal.net)
55 points by martin_dd 39 days ago | hide | past | favorite | 30 comments
Hi Fellow Hackers!

I'm happy to share with you KittyCal, an installable calendar web app I made over the past two months. Existing calendar apps often focus on scheduling and require many steps to create one event. KittyCal, on the other hand, removes hourly scheduling and keeps everything on one screen.

How does it work? Just enter your email address, and we will send you a pair of calendar links (blue and red). There is no login process, click the magic link or scan the QR code to access your calendar. You can then add the page to home screen and use it like a native app.

Last year, I built a bare bones version of KittyCal for my partner and myself because we wanted a private calendar that launches instantly for casual note-taking. It's worked well for us since, and I'm hoping this multi-tenant version can benefit more people with similar needs.

Please try it out and let me know what you think!




It’s a nice toy, and appreciate the simple interface and not storing PII (ie, requiring name, address, …). But this seems like yet another calendar to me that I need to manage with _every_ relationship. Maybe I want to share a calendar with my SO, but what about my friend on the other side of town?

N+1 calendars I have to manage.

I would like to use my preferred calendar app and sync events I share to other people via CalDAV protocol.

It’s a standard protocol that’s existed for a long time now. [1,2]

Scheduling can be a bit janky especially with remote servers (ie, outlook…). But for the most part it works. Enter e-mail of person I want to share event with and person can see it in their preferred calendar.

Even updates work pretty well. It’s a shame we have all of these protocols but nobody bothers to use them and prefer their proprietary shit (ie, discord, telegram, signal, fb, ig, …)

Why must we continue to write “solutions” for already solved problems?

[1] https://en.m.wikipedia.org/wiki/CalDAV

[2] https://datatracker.ietf.org/doc/html/rfc4791


Hi, thanks for checking it out :)

Exactly like you said KittyCal started as a “toy” so I designed it as a private space for couples didn’t think much about integrating existing calendars. Also KittyCal intentionally gives up hourly scheduling so any event created would automatically become a full-day event if synced to external calendars.

CalDAV does seem interesting, will definitely look into it.


CalDAV is cool but will be hard to integrate. It basically needs its own server.

However, if you want to continue in the « toy » direction, supporting ics format is a good option.

.ics files are calendar files : they may contain one or multiple events (like the whole calendar) and they are easy to generate in most programming languages.

What becomes interesting is that from any calendar app you can import this ics file (which is pretty unpractical in your case) but you can also subscribe to a calendar. For this you just have to provide an url to an .ics file that your backend may generate when requested (it’s just a text file).

Of course with this solution, you get a one way sync only, for classical two way sync you need CalDAV.


That's a good idea, thank you. I used to receive .ics files in email attachments all the time and the format seems easy to work with.


> I built a bare bones version of KittyCal for my partner and myself because we wanted a private calendar

I understand how this is a private calendar for you, the author, but can you expand on how it's a private calendar for the rest of us?

Can you just read our content?


Good point. I can read your content but I promise I won’t.


If you want to develop further on this, you could offer some kind of E2EE version where you generate a shared secret (and use the QR code for sharing), and each device can use that to encrypt and decrypt the calendar information. You would have no knowledge of the content because the shared secret is generated on-device and never sent to the back end.

Drawback is that then you need to make some decisions about whether you encrypt the metadata (i.e. the times and durations of the event) or not. If you don't, well, [metadata is data](https://ssd.eff.org/module/why-metadata-matters). If you do, then the clients have to fetch everything from the server and any display/filtering/etc need to be done on the client. It's not impossible, you could look at some kind of syncing database like PouchDB, for example, but it adds complexity.


I think I know enough, no hate but I expected a local-first solution


When I wanted to have a shared calendar with my spouse, at first I was very motivated to go full self-hosted and spent quite some time to investigate CalDAV, CardDAV, the server implementations (Wikipedia has a good feature matrix), the client implementations (of course there is no builtin way to synchronize an android phone with calDAV, even if the software managing Google calendar sync must be more or less the same...). In the end I managed to have it work on my phone with an a ad-hoc server, but was not really sure that would be the good solution for my problem since I would still have to host that on a publicly reachable place, with my own implementation of access control and to configure everything on both of our phones... In the end I figured that there must have been some way to share a calendar between Google accounts as I had used at work, and found out about the family group https://support.google.com/googleplay/answer/6286986?sjid=31... and family calendar https://support.google.com/families/answer/7157782?hl=en&co=... Google features. Five minutes later we had a working synchronized calendar, even if I am still a bit sad to be dependent of Big G instead of relying on a open standard...


You don't need a family calendar. You can make extra calendars and in the settings on web desktop you can share just the one calendar with another friend's Google account, and if you pick the good permissions either of you can make events in it, and it syncs to all who have it, magically: https://support.google.com/calendar/answer/37082?sjid=171696...


Oh you are right, thank you ! I don't know why I didn't found this out earlier... Still, it's a shame that this feature is only usable on the desktop web app that most users will never use


"Try without email" - I hope this feature will start appearing on more new services.


Glad you like it!


Why not share a calendar between the two of you?


Hi, The idea is nice, especially because it is possible to use the calendar via web even on old devices. I like this, but how is it sustainable without payment? Can I trust it? Do you plan to launch an app for iOS and Android. Thanks


Hi! I appreciate your comments. In the future I might charge for premium features, but right now there is no clear monetization plan. It's a lightweight app so I don't mind hosting it for free now.

You can trust it, both that the app won't be shut down without a notice, and that your data will not be shared / viewed by anyone else.

Launching native apps will be lots of effort though. Web apps are much easier to update, share, and customize (e.g. KittyCal has different icons for User 1 and User 2)

Hope this answers your questions.


Congrats on shipping , but this is pretty bare bones. What kind of functionality do you expect people to have here when it doesn't do notifications or integrate with anything?

I made a similar app for a similar reason (private calendar and household data), but it's designed for folks to install and self-host. https://homechart.app.


Notifications can be supported. (As long as the user device supports push notification from the browser)

This is the very first version, will gradually improve upon it.


Nice, I kove the simplicity. …but I’d love to have week numbers. Starting day of the week, can that be detected somehow?


Week numbers is achievable (probably allocate a 10px column on the left), but starting day of the week is more of a personal preference I think. Will leave it for the user to decide.


How do I look at entire day or even a week? Once there is three things to do in a day I need to get to a tiny scroll bar.


I have a planned feature that lets you “zoom in” on a specific day or week. Stay tuned!


It would be nice if it sorted events by time. Then I could enter

12PM Lunch 8AM Dr Astro 3PM Nap and see them as

8AM Dr Astro 12PM Lunch 3PM Nap


i noticed many negative comments, i think they might not be the right audience for your tool. I like the simplicity of creating events with the least number of taps.


Thank you for your kind words! Everyone has their own preference for calendar apps, it's understandable :)


Cool, but why can't one install?


You can do Add To Home, but you’ll get errors if you try to launch without any network. Though the PWA model can provide for a fully offline experience, I’ve found that only a minority offer good offline + sync. It is sort of the opposite of native apps, which usually have offline/local, and might have sync.


Usually there’s a button called “Add to Home Screen” in the dropdown menu of your mobile browser. Can you try that?


on ios you need to hit the share button and then choose the “add to home screen” option


calendars exist. not sure how cpuples relevant




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: