Live data from Hacker News

Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

github.com

41–50 of 107 posts

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#41
post #26
post #15

I wrote a similar tool in Python a few weeks ago, which uses AppleScript to liberate the data and saves it to a SQLite database: https://datasette.io/tools/apple-notes-to-sqlite I didn't actually know AppleScript before writing this tool... but it turned out ChatGPT knew it well enough to unblock me and provide me with exactly the code I needed to build the rest of the project! https://til.simonwillison.net/gpt3/chat…

From your article on how you wrote that: > I've been stubbornly refusing to learn AppleScript for nearly twenty years at this point. Thanks to ChatGPT I can continue not to learn it, but I can now use it to solve problems The Apple scripting stuff can also use JavaScript. It might be better to continue not to learn in JavaScript instead of AppleScript, if ChatGPT is as adept at Apple scripting in JavaScript as it see…

Huh, that's a great tip! ChatGPT knew how to convert my AppleScript to the equivalent JavaScript and showed me how to run it too: https://gist.github.com/simonw/86c2153b7882747122f1e3d501260...

Added a section about this to my TIL: https://til.simonwillison.net/gpt3/chatgpt-applescript#user-...

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#42
post #15

I wrote a similar tool in Python a few weeks ago, which uses AppleScript to liberate the data and saves it to a SQLite database: https://datasette.io/tools/apple-notes-to-sqlite I didn't actually know AppleScript before writing this tool... but it turned out ChatGPT knew it well enough to unblock me and provide me with exactly the code I needed to build the rest of the project! https://til.simonwillison.net/gpt3/chat…

Interesting. I was curious and wanted to achieve something similar with voice memos. I used the prompt "Write applescript to loop through all of my Apple Voice Memos" and the code it produced couldn't run in applescript.

I just tried that prompt against GPT-4 and got "Note that the Voice Memos app does not have an AppleScript dictionary, so the script will use UI Scripting to interact with the app" followed by a very complicated recipe.

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#43
A feature that a lot of Apple apps have that doesn't seem talked about much is they can use standard protocols and not require iCloud.

Mail.app/Reminders.app/Notes.app can use IMAP, Cal.app with CalDAV, and Contacts.app with CardDAV [1].

It doesn't offer a lot of the features iCloud has like advanced formatting or collaboration, but is a useful for simple standards based syncing and portability.

I've done this with my iPhone/Macs and Fastmail for the last few years and it works great [2].

1. https://support.apple.com/guide/iphone/set-up-mail-contacts-...

2. https://www.fastmail.help/hc/en-us/articles/1500000279941

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#44
post #4

If anyone ever wanted to do something similar for iMessage data, I built a similar tool for that: https://github.com/ReagentX/imessage-exporter

Oh man, excited to see this. Was brainstorming doing something this in rust last week. Beat me to it!

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#45

I am excited to see more solutions that work with Apple Notes database directly. This is my go-to application to capture unstructured memos while researching various topics. Last year I got carried away and built a simple site generator for Notes [0]. As a fun exercise I implemented ORM models to query Sqlite database in Ruby: User::Account.server(database: "tmp/test.sqlite").first. folders_dataset.offset(1).first no…

I’m trying to consolidate my note taking with Obsidian but I’m with you about Notes being a go-to tool… it’s just so much better integrated into all the apple devices, I can scribble quick notes with the pencil, ask Siri and all sorts of shortcuts can easily make or add to notes… but I’m absolutely sick of being held hostage by my software and for me my notes are too important not to protect. I’m glad to see anyone work on this, because I wasn’t relishing the idea of trying to force Apple to open up using the EU digital markets directive. Its my nuclear option if the situation gets worse, the various scripts and fixes stop working and I can’t work around it, because I’m pretty blown away by how complicated the notes format is and I won’t be surprised if they add something new and the format develops another layer of complexity.

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#46
post #15

I wrote a similar tool in Python a few weeks ago, which uses AppleScript to liberate the data and saves it to a SQLite database: https://datasette.io/tools/apple-notes-to-sqlite I didn't actually know AppleScript before writing this tool... but it turned out ChatGPT knew it well enough to unblock me and provide me with exactly the code I needed to build the rest of the project! https://til.simonwillison.net/gpt3/chat…

Here is a Python library that can also create notes: https://github.com/RhetTbull/macnotesapp

It is also based on Action Script commands. I haven't played with it much yet, but it's on my TODO list (to add automatic headings for every day + archive DONE tasks automatically).

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#47
post #26
post #15

I wrote a similar tool in Python a few weeks ago, which uses AppleScript to liberate the data and saves it to a SQLite database: https://datasette.io/tools/apple-notes-to-sqlite I didn't actually know AppleScript before writing this tool... but it turned out ChatGPT knew it well enough to unblock me and provide me with exactly the code I needed to build the rest of the project! https://til.simonwillison.net/gpt3/chat…

From your article on how you wrote that: > I've been stubbornly refusing to learn AppleScript for nearly twenty years at this point. Thanks to ChatGPT I can continue not to learn it, but I can now use it to solve problems The Apple scripting stuff can also use JavaScript. It might be better to continue not to learn in JavaScript instead of AppleScript, if ChatGPT is as adept at Apple scripting in JavaScript as it see…

I was trying to do a thing with AppleScript, and the barriers I ran into were not with the language, but with discovery of the APIs that Apple surfaces to the end user. In that regard, you’re better off with AppleScript. I can’t believe just how bad the AppleScript documentation is, but the js documentation is even worse; using js is just using AppleScript but with an additional layer of indirection that doesn’t provide any productivity gain.

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#48

A feature that a lot of Apple apps have that doesn't seem talked about much is they can use standard protocols and not require iCloud. Mail.app/Reminders.app/Notes.app can use IMAP, Cal.app with CalDAV, and Contacts.app with CardDAV [1]. It doesn't offer a lot of the features iCloud has like advanced formatting or collaboration, but is a useful for simple standards based syncing and portability. I've done this with m…

I…can’t believe I didn’t know this about Notes or Reminders. Thank you for mentioning this.

Re: Show HN: Apple Notes Liberator – Extract Notes.app Data and Save It as JSON

#50
post #38

I am excited to see more solutions that work with Apple Notes database directly. This is my go-to application to capture unstructured memos while researching various topics. Last year I got carried away and built a simple site generator for Notes [0]. As a fun exercise I implemented ORM models to query Sqlite database in Ruby: User::Account.server(database: "tmp/test.sqlite").first. folders_dataset.offset(1).first no…

Yeah, I'd like to know the story behind it. topotext is weird and unlike anything I've found in the literature. It is kind of like RGA, but with more links. And I haven't seen anyone else layer attributes on top of text. It looked like the other stuff came later and was somewhat orthogonal. (Although their ordered set construct was abusing topotext to represent ordered lists of ids.) I don't know how much has changed…

Thanks for notesutils, I enjoyed reading your protobuf implementation!
Post reply on HN