Show HN: A journaling service that runs over WhatsApp
todayhasbeen.comHey Hacker News,
I’m excited to share a tiny service that’s very close to my heart - Today Has Been.
Here’s how it works: We have a phone number that has WhatsApp Business API enabled. Your messages sent to this number (after you activate your free trial) are added to your journal. It’s a super light weight journaling service - no app download or registration is required.
We also send you a daily nudge asking “How did your day go?” and after you have a few posts we send you a random blast from the past.
Why I built it: I was an active user and fan of Ohlife - only journalling app that could make me write 100s of entries. So, when it shut down it left a hole in my life too (just like it did for Paul G - https://x.com/paulg/status/1216714155731890176). :)
“Today Has Been” is Ohlife on WhatsApp.
I’d love to hear your feedback and ideas. Please visit http://todayhasbeen.com and tap on Get Started. (Note: Works on WhatsApp only)
Also, if you have questions on using WhatsApp as a platform, I’m happy to chat.
Thank you!
> amazing private collection of your life stories
I guess it's technically not "public" but then again it's shipping your most private thoughts to WhatsApp and an unknown person and "privacy" isn't mentioned on the landing page once.
Personally I can recommend DayOne which is built by a trusted entity Automattic (Wordpress etc.) and they do have a big focus on privacy: https://dayoneapp.com/privacy-pledge/
End to end encryption is not really a pledge. That is expected of companies like such. Nevertheless, their promise to not sell any data is interesting. If they don’t sell data (which cannot be sold anyways for an E2EE system) I wonder why they collect so much data related to one’s identity as disclosed by them in the App Store Page? Is the behaviour of journaling then becomes a data point to be sold by these companies? Makes you wonder. And as mentioned in their privacy policy page, they are also not except from disclosing information the the US Govt if mandated by a warrant.
E2EE is not enabled by default on their cloud sync journals.
I really wish otherwise great services would stop marketing with "military-grade encryption"
Having served in the military once upon a time, it always makes me chuckle. Now, I didn't do much related to information technology or security, but "unbreakable" is not a term I ever associated with military equipment.
If you come into a clash with Matt, he might start broadcasting out your entries through Wordpress news widget hah (Half joking)
Just because I'm interested in personal bots, doesn't whatsapp business have a (nominal, maybe) cost? I've been using telegram and they're amazingly bot friendly + free but I use whatsapp so much more
Does it feel like it works for small (and personal-use) players with buttons, callbacks, and the rest
You're right. WhatsApp Business API has a cost (which varies depending on country and type of message the Business initiates). I'm hoping to recover the cost through monthly subscriptions.
And I think you can do more about E2E encrypting it. Or at least trying to. At some point, people don't want plaintext journals floating around stored permanently. Although I know it starts as cleartext on whatsapp's servers
> people don't want plaintext journals floating around stored permanently
this is facebook. they're data-mining pictures of your dog for money. I don't think privacy/safety is expectable with meta
> Although I know it starts as cleartext on whatsapp's servers
WhatsApp uses the Signal protocol[1], so the text is never plaintext on the wire (or servers).
1. https://signal.org/blog/whatsapp-complete/
Easy to say, very difficult to implement it right (and implementing it not right is diffcult AND useless). Also, let's be clear here, whatsapp E2EE is a joke.
> whatsapp E2EE is a joke
Could you please elaborate why (in detail)?
My guess is since its closed source, no one beside them can verify that the supposedly e2e is even true, or exist in current latest binary. Sort of telling everyone that I've got a mountain of gold inside my house but the door is locked, no one beside me could verify my claim. Security and/or privacy via obscurity is moot.
You can always go ahead and decompile the apps and then show everyone that they’re in fact lying, that story would be huge. That alone doesn’t make it true, but there have so far not been hints of them pulling weird stuff with their e2ee, unlike telegram, for example. They’re even working on improving the default mode 99% of users use e2ee chat apps with - trust on first use (TOFU): https://engineering.fb.com/2023/04/13/security/whatsapp-key-...
They probably do all kinds of horrible stuff with the metadata. I’m honestly too lazy to read the privacy policy. But I have yet to see critique of their e2ee that’s actually backed up by substance instead of people’s imaginations.
If debunking security and/or privacy claims, and indirectly, to prove security and/or privacy claims is as simple as reverse engineering binaries then the very concept of open source for better privacy and/or security itself would be moot. Its outrageous to even suggest that.
It’s certainly not outrageous. It’s how people regularly find vulnerabilities in all kinds of closed-source software.
It certainly is for proving privacy claims. Even finding vulnerability by reverse engineering is to debunk security claims, not to strengthening it.
The topic has been e2ee, which is first and foremost about security. You can have e2ee without privacy, as is likely the case with WhatsApp.
You certainly can “prove” and “disprove” “security” by reverse engineering, to the same extent a source code review can (or even more, since you’re looking at what’s actually running on the device). It can often require a bigger time investment, but even that’s not always the case in my experience, especially if you’re working with a really bad code base.
They also handle and store users backup unencrypted by default so they have access to all messages in plaintext in multiple opportunities.
Meta has access to the backups that are stored on each individual’s Google Drive/iCloud? How does that work exactly? Please elaborate.
> Meta has access to the backups that are stored on each individual’s Google Drive/iCloud?
Why the surprise?
Meta has access to the folder it manages in the user's Google Drive. That's obvious, otherwise they wouldn't be able to write to it.
The app uses the (i)phone OS’s cloud storage APIs to write to the backup folder, meta’s servers don’t have access to any credentials. For Android I currently can’t check, but it’s obvious from their FAQs that they have the app upload to Google‘s servers even if they don’t use the OS APIs there: https://faq.whatsapp.com/481135090640375/?cms_platform=andro...
They have indirect control over the user’s backup folder via the app, but meta would need to distribute a malicious update to everyone that causes the user’s apps to download the backup and send it to meta, at which point they could just skip trying to access the backup and directly upload the chats from the app.
It’s impressive how much misinfo you’re spreading.
Edit: Meta’s actions over the years clearly show that they don’t want to know the contents of your messages. Not knowing their contents means, for example, that they don’t have to run scanners to detect illegal content (but users can report messages). They benefit from making WhatsApp a secure platform, as it allows them to collect everyone’s metadata, which apparently has lots of value to them.
> but it’s obvious from their FAQs
Haha. That's a great proof! Not the closed source, not the proprietary protocol they use to talk with their server, but their FAQ.
> They have indirect control over the user’s backup folder via the app, but meta would need to distribute a malicious update to everyone
Please give us the results of your research when you reverse-engineered Meta's apk to prove your point as this is what you think others should do. Otherwise it is just big talk.
"oh but if that was the case you would get rich reporting it!". More low IQ reasoning. You will get sued to death, I know people that did so and now have to waste time and money with the legal system.
Yes - I would love that too. Please back that up?
Huh yeah that's good to hear. As a small note, on my personal bot I set up a simple journaling (and then just used google sheets as the backend!) includes a nominal 'rating' 1-10 so I can see how my mood fluctuates.
Especially if they do it every day/most days, having the option to see what you wrote "on this day" 2-3 years back is great. Especially when I try to include people's names who I was interacting with (but who are easy to forget 3 years later). It can be a nice reminder to text them and say you were "just randomly", unprompted, thinking about them -- 'How's it going?'
I do agree that getting to read entries from your past is quite magical and has to be experienced to really understand it.
Fantastic that you've set it up for yourself.
Yes it is paid but there are good unofficial APIs (better than the official actually). The problem as you would expect is that they aren't highly reliable and losing messages is common.
Congrats for the launch!
Apologies for the self-promotion, but I've done something similar for Telegram, and I believe some people here might be also' interested in that.
I also wanted to record more of my life, so I created a Telegram bot that saves all messages you send it into a Google Spreadsheet.
Hashtags can be used to split the text into sheets and columns, if so desired. Besides jotting down quick thoughts, this is very handy for short-form journaling such as tracking expenses, workouts, mood, period, weight, diet, etc., with the added bonus of easy charting and summarization from within the spreadsheet. It also supports pictures and other attachments that are uploaded automatically to Google Drive and linked into the spreadsheet.
Feel free to check it out, it's free of charge and does not require any registration: https://t.me/gsheet_notes_bot
Thanks. Telegram bot sounds perfect too. Let me give it a try.
This is amazing. Is there a way to attach files/photos as well?
Thank you! Yes, if you share a file or picture with the bot it will be uploaded on a Google drive folder (in your account) and linked into the spreadsheet.
This is really useful! Makes it easy to feed unstructured (thoughts) into a spreadsheet for processing later on. Thanks for doing this. Are you planning on making this open-source?
One can do note taking with self on Whatsapp.
Quoting from whatsapp website (https://faq.whatsapp.com/5913398998672934)
> Use https://wa.me/<number> where the <number> is a full phone number in international format.
Put your own number and you chat with yourself. Pin it to top, so it's always there. I use it to add information, search later use cases.
This has been out for a while now. But before this, what people used to do is create a group with just yourself as a member, and send messages there. You had to create a group with 2 people (yourself and someone else), and just remove them because it could not be done directly. And this could be used as notes or whatever.
Right now I message myself but let's say if one wanted to maintain a separate chat for notes or some other purpose, they could create an infinite number of groups with just them in it and get it working.
Of course I think OP's solution is offering an interactive experience more than just one way communicaton.
Using this method one can have multiple conversations with self with different contexts. I use one to keep the important docs handy like ongoing travel tickets etc. Another one for Shopping list. and another for saving links and watch later.
You have more WhatsApp-savvy (or considerate) friends than me – I’ve had people text me notes before (because I’m pinned or otherwise on top of their chat list). “Just ignore please, but I’ll need this in a bit” :)
Haha, my wife does this to me when she needs to save a link or some text.
You can also search for yourself.
BUT you won't find anything if you search for "me", you have to search for "you".
I use Whatsapp often and one major issue I have with the app is how older media gets lost in the history, it's not retrievable anymore, you can only see the blurry thumbnail but downloading it again will not be possible. So until recently, I've considered everything I send on whatsapp as ephemeral unless I back it up.
Also, is exporting possible? Let's say I would like to export all text / media to my pc, is that possible?
WhatsApp does seem to delete old media from their servers, but it should be available on your primary phone indefinitely until you delete it.
Any chance you’re accessing your messages from a different device and your main phone is offline?
I use Google photos on my phone so everything I send is not directly stored locally.
Whatsapp wasn’t like this before, it was when they introduced E2E that old media started to get lost.
If you want a groupchat with accessible history, whatsapp is not the place sadly.
WhatsApp never had persistent server-side storage. I believe they keep media binary blobs only for a few days after each recipient has downloaded them.
If you delete your local copy, that's arguably on you – there was never any promise that WhatsApp would be holding your media for re-downloads forever.
> If you delete your local copy, that's arguably on you
I don’t know if you’ve participated in a large group chat, but on those occasions, lots of media is being sent to each other.
I am not that eager to have every media sent in the group chat stored on my Photos library. I don’t think anyone wants that.
So I guess everyone, including me turns off that feature (automatically storing images received), meaning no one will eventually have that image stored on the device which causes the data loss after a while.
Now, there is a backup feature in iOS, but it can only backup to iCloud drive, which I don’t pay for so the limit will be exceeded pretty quickly.
I wouldn’t put the blame on anyone for this, except Whatsapp.
Why should WhatsApp pay for the indefinite storage of your media any more than iCloud?
Of course WhatsApp could start charging for storage in the same way that Apple does, but given that WhatsApp is pretty focused on local-only message storage at the moment (similar to Signal, and unlike e.g. Telegram or Facebook Messenger), I don't think that would be a very popular feature.
Maybe they could offer storage backup to other providers than iCloud, like on Android. But that’s just one idea.
Either way, I seriously think there is a flaw in the design, especially in the scenario I provided. Had I know that WhatsApp would behave this way beforehand, I wouldn’t have used it.
You can export WhatsApp conversations, but it was flaky last time I tried to do all of them (spanning 4 years). But I expect monthly or semiannually to be fine.
If you're referring to your journal entries to Today Has Been, Export functionality will be available soon.
Did you get Meta or a lawyer to clear your usage, especially after you introduce monthly subscriptions, against the WhatsApp Business Policy?
I looked into it previously, and it seemed to imply software services were not welcome. From the WhatsApp Business Policy[1] (emphasis mine):
> 4. Prohibited Organizations and Restrictions on Use
> ...
> If you use Catalogs, or provide any other commerce experiences to sell or otherwise facilitate the exchange of goods or services prohibited by the Meta Commerce Policy, then we may prohibit you from using some or all of the WhatsApp Business Services.
And the Meta Commerce Policy[2] says
> Prohibited Content
> 16. No item for Sale: Listings may not promote news, humor, or other content that does not offer any product for sale.
> 19. Services: Services may not be listed.
> 22. Subscriptions and Digital Products: Listings may not promote the buying or selling of downloadable digital content, digital subscriptions, and digital accounts.
It was unclear to me whether this applies only to marketplace-like platforms, or any service or product that you provide yourself. A tenuous ground to build a company on.
[1] https://business.whatsapp.com/policy
[2] https://www.facebook.com/policies_center/commerce
Trusting something as private as my personal diary to 3rd party sounds like a scary idea from a privacy point of view. Imagine someone hacking this site, exposing your very private information.
I wish there was something like that end-to-end encrypted. You are already using E2E encryption for the communication channel (WhatsApp). I wish there was a hookup to store the same data without breaking down the chain of encryption. WhatApp should look into that. Something like ProtonDrive connected to WhatsApp and APIs.
I think Day One probably fits the bill for you there. E2E encrypted. I’ve been using it for about a decade
Diarium is the only thing I’ve found that actually fits the bill, where there is cross platform support and self hosted E2EE.
Unfortunately, Diarium also reduces image quality significantly, even with their ‘higher quality’ setting. My Day One diary export is 90% larger than the data store Diarium syncs to webdav, the loss of fidelity is especially obvious when looking at screenshots.
My thoughts exactly when all mighty Tim Cook granted us iPhone addicts a Journaling app
I am not sure if this fits your usecase - but why not just to use encrypted Notes on a Mac or iPhone (if you have an Apple device), and set a daily reminder? What does WhatsApp have that Notes doesn't?
You can use XMPP+OMEMO for this. E2EE and self hosted.
I'd love to figure out a way where entries are encrypted but also the features/user-friendliness is not sacrificed.
You can easily develop and self host such a thing without whatsapp business api
Yeah I wouldn’t anyone to mess with my milk either.
(You typoed diary and I couldn’t resist ;) )
The page says "14-day Free trial. No Credit Card Required." but there is no mention of any pricing page. What happens once the trial is over? Does the boy just stop sending messages?
It's mentioned right below "14-day Free Trial" but I need to make it more obvious.
"You can try THB out for 14 days for absolutely free. At the end of the trial period, you can choose between our monthly ($5 per month) or annual ($48 per year) subscription plans."
I have also added it in the bot before you subscribe to the free trial. Thanks for the feedback.
Pricing feedback: That's $13/yr more than the full-blown Day One premium service.
Thank you! Let me consider this.
"boy" is obviously a typo. But can be seen as a reference to Amazon Mturk kind of automation by delegating to a human.
ha!
In my opinion, journaling, note-taking, and building an archive of knowledge or reminders should work seamlessly together. It should be possible to ask simple, yet specific questions like:
"When did I last buy 10kg of garbanzo beans, and from where? What price did I pay?"
And get an answer like:
"Actually, you didn’t buy 10kg; last time you only bought 5kg from X shop at Y price. Based on your past consumption, your stock will likely run out by next week. Should I set a reminder for today, after your gym session, to pick some up? (X shop is on your way home from the gym.)"
This level of contextual response would be incredibly useful. These days, I bulk order everything thanks to my streamlined note-taking and reminder setup. I’m surprised there isn’t already an open-source tool that works this well.
I keep my day organized with simple methods. During my morning walks, I plan out my tasks, priorities, and schedule—talking through everything in my head. These thoughts are then transcribed using speech-to-text and sent to an LLM. Since LLMs aren't great at remembering specific facts or handling complex relationships, I pair it with a knowledge graph to keep everything organized.
This setup generates reminders, creates schedules, and flags conflicts where I can reschedule or drop tasks. I dislike most conventional note-taking or reminder apps, so I stick to plain text files stored across Dropbox, a Raspberry Pi home server, and cloud storage like S3.
To keep me on track, I’ve built a custom notification system that sends reminders through text, email, Telegram, and WhatsApp. These notifications continue—staggered across platforms—until I acknowledge them. Since I rarely use my phone, I rely heavily on a smartwatch that receives SMS notifications. It’s a game changer: with its own SIM and long battery life, it costs me almost nothing—just $30 a year.
I avoid traditional apps for adding new information. Instead, I use a private Telegram group with a bot for input. Messaging in this group has become the easiest way for me to update my system, and I’ve grown to rely more and more on Telegram bots for this reason.
For example, yesterday the system reminded me to check my solar batteries. Months ago, I had told it that I watered them, and it automatically followed up at the right time. It’s these small, automated details that help me stay on top of long-term tasks.
I’m using Gemini Flash (a dirt-cheap, fast LLM), Neo4j, and Whisper, all tied together with Python glue scripts to make this work. Maybe someday I’ll have hardware powerful enough to run a local LLM, but for now, this setup is more than good enough.
That sounds really interesting, could you you share more details? For example, what do you mean by organizing the information into a knowledge graph? Could you perhaps share the prompt you use?
Hey, I also do this. I have a GPU at home that I run whisper and Llamas on to crunch through my voice memos to distill eg TODOs. I do it all in BASH.
I haven't built out a smoother toolchain because I haven't settled on a form factor / affordance.
How much time do you spend maintaining your system? If you wanted to onboard a family member, what kind of effort would that take?
If you think that's a simple notes system I'd hate to see what you think a complex notes system is!
How is user privacy handled?
This is cool! I fully get the appeal of texting for journaling as I did that a lot with Signal. For a while now I have been working on a different way to capture this text yourself-powered journaling with my app tetr. It acts as a standalone app but employs a similar texting-based journaling system where you can set regular messages to be sent to you (even with stuff like checkboxes for routine tasks). It’s also offline-first so data stays on your devices (and will employ e2ee sync once that’s out).
https://tetr.app/
Hey! Looks great. Will give it try for sure.
Telegram would be a better choice as you can use multiple devices. You can retrieve old images/docs And it has an API for your bot that you can use to post content from anywhere.
WhatsApp lets you link multiple devices now - I have the same account on an android and spare iPhone.
The main restrictions are that you have to use the main device every 14 days and can only have ~4 linked devices.
https://faq.whatsapp.com/378279804439436/?helpref=faq_conten...
> The main restrictions are that you have to use the main device every 14 days and can only have ~4 linked devices.
I’m trying to think of a rationale and really can’t. Any ideas?
Due to the way WhatsApp does (person to person, not group) chat encryption, the number of messages scales linearly with the number of devices of either party to the conversation.
They probably want to put a cap on how much data/CPU the sending device has to expend per message.
Hmmm. Couldn’t they just use their group protocol for private chats, too?
I'm not too sure, but I suspect that due to how they do group vs. individual message encryption, this might decrease forward secrecy somewhat.
It's just not same. Telegram has different instances in different devices.
While WhatsApp simply uses instance on your phone via webapi on your desktop.
Yes, will definitely consider adding support for Telegram as well.
Lovely idea! I have a 'Note To Self' chat that gets used for all sorts, it's really hard to beat the convenience of Whatsapp for sharing things. Do you support voice notes?
Thank you! Voice notes - not yet. But definitely on the radar. Would you prefer voice notes as it is or transcribed?
Sorry for the self-promotion, but this sounds a lot like Peaked, an Android app I built.. It is privacy-first and your data stays on your device. Also it's completely free (as in beer): https://peaked.today
It serves my purpose (and that of some friends), so I have no plans to monetise or even update it.
Never tried but looks great (especially the offline & private part). Thanks for sharing!
I created a similar bot for telegram.
The focus was on searchable audio. So you send either a text or an audio. It passes through Open ai whisper and replies with your message transcribed.
https://t.me/Simple_DIary_bot
@rahulg Could you tell me about your experience getting approved for production on the meta business account? I’ve been trying to get approval for months now. it’s always denied. Building on Whatsapp has been impossible for this reason. Any tips?
Hi. WhatsApp keeps changing its policies but if you have a business entity it should be possible to get it. If the business is verified by Meta then it should straight forward. Would you like to email me - I'm happy to get on a call and help. I'm on rahulg at bakbak dot me.
Nice product though
idk if I’d ever trust a 3rd party with all my notes, thoughts, “entire stream of consciousness” or anything of the like.
I’ll stick to txt files and/or paper.
Reminds me of https://ahhlife.com
I do this already, In my private WhatsApp/Telegram group and I encourage my friends to do the same.
What a great idea to share even all the personal private life you had with a random company AND Meta /s
It's such nonsense lmao.
I usualy don't like to hate on people's work, but damn I hate this thing.
I prefer trustless rather than believing in other entities good will.
I rather use a pen and paper.
Also, when people already know it's a bot, there is no illusion.
[dead]
Out of curiosity why WhatsApp vs regular SMS (via Twilio)?
SMS behaves different in different countries. If I take a single country's number then international charges may apply if a non-resident sends me a message.
Also, interactive elements like buttons/images etc. are not supported.
[flagged]
Whats the goal will replying with AI slop?
Possibly reinforcement learning, to determine how to phrase a comment such that human users will not recognize it as AI.
I prompted chatgpt to make it more human and casual:
huge props on launching! Seriously love how you’ve brought back the whole Ohlife vibe but made it way easier with WhatsApp. No apps or sign-ups? Genius. Plus, those daily reminders and little throwbacks? Such a nice touch—perfect for sparking some good ol’ nostalgia. You can totally see how much you care about this, and I’m hyped to see how people, especially the Ohlife fans, will dig it. Wishing you all the luck with it!
---
I personally wouldn't have realized the above was written by AI. YMMV
My point is, "reinforcement learning" to make it not sound like AI is a little bit pointless at this point, IMHO.
Sure, here it is...
here is some text generated by AI:
> Congratulations on launching 'Today Has Been'! It's truly inspiring to see how you've revived the essence of Ohlife with a modern twist by integrating it with WhatsApp. The simplicity of journaling without the hassle of app downloads or registrations is a game-changer. I particularly love the daily nudge and the 'blast from the past' feature—it's a wonderful way to encourage reflection and nostalgia.
> Your passion for this project is evident, and I'm excited to see how it will resonate with users who miss the simplicity of Ohlife. Wishing you tremendous success on this journey!
--
rephrase it so that it doesn't read like a standard AI generated text. use creative wording and add a typo or two. it should feel like a human wrote it. super, super casual.
Nice, thank you.