New Plugins: "Etch" Google Calender, Weather, ... into your local notes

Hi all,

I wanted to share two new plugins that “etch” information from third-party service directly into your notes for permanent, local, offline access.

Here’s a little animated demo of the first one in action. (There’s a similar demo of the weather one if you follow the link.)

There’s a few reasons I crated these:

  • I’ve been using gcalcli to output a text agenda at the command line and then copy/pasting it into my daily note for years now. I like how the info becomes a permanent part of the local Makrdown file, and shows up in a simple editable format.
  • I haven’t created an Obsidian plugin since obsidian-overdue in 2021 (!), and wanted to try my hand at automating the manual process.
  • I wanted to see if the approach would be useful beyond Google Calendar, and so I wrote the weather one.

I have some ideas for additional “etching” plugins and minor improvements on these.

Open to thoughts and feedback if you have them!

2 Likes

Curious idea — is it possible to have the weather refresh automatically in the background so the note always shows the latest forecast? :thinking:

If you’d be interested, I can open a PR to your GitHub repo in the next few days to add an optional auto-refresh mode for the weather block (refresh on tab focus + periodic refresh while the note is open).

Hi @NBox . I’d consider a PR adding that if you’d like to send it.

One heads up: The app.vault.process method I’m using to update the source Markdown can run into merge conflicts if there are other simultaneous edits to the document. When clicking the refresh button, the likelihood is low. Refreshing the block(s) in a doc while the user is editing it may be more prone to such conflicts.

@parente I got a bit carried away :slightly_smiling_face: Here are the highlights from the feature/auto-refresh work:

  • Auto‑refresh (optional): refresh on tab focus + periodic refresh while the note is open. It can pause while editing to avoid merge conflicts.

    • Use case: keep a dashboard note fresh without manually clicking the refresh button.
  • mode: current: shows current conditions and can include a “next N hours” line + a compact inline graph.

    • Use case: a quick live widget on a daily dashboard.

  • date: now / date: today now respects tz when provided.