Using ankihub ID for new notes

I often make ā€œforksā€ of existing notes because I want to be tested on the information in the original note as well as information that is slightly different but still very related to the original note’s topic. This gives me now two notes, the original note and the ā€œforkedā€ note. I do this because all the information in the various fields of the original note are still equally relevant in the ā€œforkedā€ note, incl. tags, extra, sketchy, etc.

The problem is that now, of course, my new note can’t be synced with ankihub. I made the text field as I want it to be, but the extra, sketchy, etc fields will never be updated without me searching for the original note, checking if there are any updates to any of the fields, and then putting those updates into the relevant fields of my ā€œforkedā€ note. This is time-consuming and very unwieldy, given how many notes I have made with this method.

This is especially pertinent now because the anking team has been adding absolutely incredible figures to the extra field. Those images are absolute game changers, and I want them in my forked notes.

I was wondering if I could take the ankihub ID of the original note and place it into the ankihub ID of the ā€œforkedā€ note so that that note will also sync with ankihub (in my case, I have the text field globally protected, so I wouldn’t mess up my cards and I’d get the amazing images and updated extra field). If this is not doable, I was wondering if this feature could be added. It would be insanely useful to those of us who create notes based on already-existing notes, a likely not-tiny population.

Thank you so much! We all so much appreciate all that you do.

P.S. I know that another option would be to upload my new notes to ankihub to be added to the deck, but the forks I make are very much not the standard format of anking notes (20 1-by-1 closes in a table, for instance). I think they’re excellent for memorizing the differences between similar conditions, etc, but very much not suited to the acceptable format of anking notes.

P.P.S. Thanks again. Everyone here is amazing.

I’ll help you understand how to work with ā€œforkedā€ notes and AnkiHub. Let me search for relevant information about AnkiHub IDs and note syncing.

Search

Found 5 results for 'tags:official ankihub id notes sync status:public'

Search

Found 5 results for 'tags:official custom notes ankihub sync status:public'

Search

Found 5 results for 'tags:official ankihub fork note duplicate status:public'

Read topic

Reading: Why are notes skipped after subscribing to a deck?

Thank you for your detailed explanation about your note-taking approach. I understand you’re creating ā€œforkā€ versions of existing AnkiHub notes to test yourself on related but slightly different information, and you’d like to maintain AnkiHub synchronization for other fields like extra and sketchy (especially for the new images).

Current Behavior with AnkiHub IDs

Currently, each note in AnkiHub has a unique ID that links it to the deck’s master version. This system prevents duplicates by identifying notes with the same ID across different decks, as explained in Why are notes skipped after subscribing to a deck?:

Notes are identified by their Anki note id. If two notes from two different decks have the same Anki note id, they (probably) stem from the same source…In general you don’t want to have duplicate notes, so the note that is installed second is skipped.

Your Request: Using Original AnkiHub ID in Modified Notes

What you’re proposing is an interesting workflow that isn’t currently supported in AnkiHub’s design. When you create a forked note, it gets a new Anki note ID, severing the connection to the original AnkiHub source.

Why this doesn’t currently work:

  • AnkiHub uses the note ID as the unique identifier for syncing content
  • Having multiple notes with the same AnkiHub ID could create conflicts in the syncing system
  • The system is designed to prevent duplicates, not manage variations of the same note

Potential Workarounds

  1. Field Protection: You’re already using field protection for the text field, which is a good approach. You could continue creating your modified notes and manually update them when original notes are updated.

  2. Consider Tags: You could create a system to tag your forked notes with the original note’s ID in the tag field (not the AnkiHub ID field). This wouldn’t enable syncing but would make it easier to identify which original note your fork is based on.

  3. Suggest a Feature: Your suggestion about adding this capability would indeed be useful for users who create ā€œderivative notesā€ while wanting to maintain synchronization with original content. Consider posting this as a feature request in the appropriate section of the forum.

Alternative For Now

For now, you might consider creating a streamlined workflow for checking and updating your forked notes:

  1. Tag all your forked notes with something like ā€œforked_noteā€
  2. Include the original note ID in a tag or field
  3. Periodically review updates from AnkiHub and apply them to your forked versions

The feature you’re requesting would be valuable and aligns with how some users create personalized learning materials while still benefiting from community updates. However, it would require changes to how AnkiHub handles note identification and synchronization.

Hello :slight_smile:

Tbh, I don’t think this is likely to work super well (for a few reasons)

I could be wrong, and you can always give it a shot, but I don’t know that I can offer much assurance beyond that. In all likelihood, having two notes with the same ID is more likely than not to create conflicts or errors (or simply update one instead of the other), and as a result I’m doubtful that it would pan out neatly

I can pass the idea along to the developers. :slight_smile:

Okay, sounds good. Thank you so much for letting me know.

Absolute king activity right here

1 Like

By all means, though, give it a shot. Worst-case scenario is we both learn a little bit of what’s possible at the margins. :slight_smile:

If you do try it, please let me know how you fare. If nothing else, a little bit of extra knowledge in the coffers

@Brian_BH okay, (possibly?) interesting update.

image
This is the note I ā€œstoleā€ the ankihub ID from, and as we can see, the ā€œView on Ankihubā€ icon is clickable.

image
This is a note that I made, copying the ankihub note ID from the actual ankihub note (see in the previous image that the ankihub note ID in this note is the same as in the original (aka ā€œrealā€) ankihub note. As we can see in this note, however, the icon ā€œView on Ankihubā€ isn’t clickable.

I thought, perhaps incorrectly, that all ankihub needed in order to update a note on my end was the ankihub note ID - when I ask to sync with ankihub, it would (1) check all the notes in my collection that (2) have been updated since I last synced, (3) searching my collection by ankihub note ID, finally (4) updating the fields that I have unprotected, (5) only in my notes that have the relevant ankihub note ID. Although I am extrapolating from this icon being unclickable, my guess is that ankihub checks both ankihub note ID and anki note ID, only updating that note if both correspond with the relevant note in ankihub’s servers.

Because the actual updating note code might be slightly separate from the code that allows the ā€œView on Ankihubā€ button to be clickable, we could also try updating the note and then seeing if the changes populate in both of my notes: the actual ankhub note and my bastardized note. I just submitted a change in the extra field for the ā€œrealā€ note (nid:1517598234334) on ankihub, and if someone approves it, we could see if both of my notes get updated.

P.S. I added something actually relevant, not just some gibberish.

Gotcha:

A couple of things that stand out:

I don’t actually see any open suggestions for the MCAT deck under your name. Unless I’m missing it, I don’t see that any suggestions have been put in, either open or closed.

The experiment is interesting, for sure, though I am somewhat hesitant to start pushing alterations to existing cards for a live deck to test out this idea, for a couple of reasons

  • First, all edits that get pushed are affecting 10,000+ subscribers which has to be taken into consideration.
  • Second, is the presumption that we’ll have to push-update cards for your local collection to be modified? There’s probably not a way that that will be sustainable.

My recommendation would be, if you’d like to test this idea out, is that it might be a better idea to upload a private deck to AnkiHub and work out the mechanics first-hand, to see if it works and/or is feasible. For lots of reasons I’m reticent to do ā€˜live’ experiments with a deck that is used by so many people, even admittedly as interesting as the unproven results might be. It’s a cool idea, though we are reinventing the wheel a bit here and I’m not a developer.

I also wonder if some of this couldn’t also be solved by simply protecting fields and allowing the notes to be updated normally? You mentioned not wanting to update the Text field, which would involve simply protecting that field (and all others would then be updated unless, obviously, you protect them as well).

But, all that being said, at least for my knowledge range we’re out in uncharted territory so I’m afraid I don’t know how much guidance I can be here. My best advice would be to try uploading a deck and seeing if you can’t get it to work as proof-of-concept and then go from there. :slight_smile:

Oh, this note is in the Step deck, not the MCAT deck. I can see on ankihub that my suggestion is currently open; I’m sure someone will get to it within a few days as usual.

Irrelevant question that I just now realized could be a thing - are there notes that are in two ankihub decks (MCAT and step, for example), and if the note gets updated in one (say, the MCAT deck), it will also be updated in the second (Step deck)?

Oh, absolutely. Whenever I propose a change in a note, I only do so when what I’m suggesting is either medically relevant, grammatically relevant, or both.

I’m not sure what push-update means. I think you might be referring to me having to figure out how to update the notes I made? If so, I can always use the reset local changes feature to update all my forked cards if/when a feature is introduced to ankihub that allows for the updating of all notes with the same ankihub id. After that, they would just sync and update like normal, both the original note and any forked notes.

Yes I could of course do this, I don’t know why I didn’t think of it myself. I can certainly try that.

I’m not entirely sure how this helps me. My goal is to (i) keep an anking note (mostly) the way it is (over the years, I have edited the text field of the vast majority of anking notes, and I of course therefore have always had the text field protected) and (ii) create a forked note (with its own text field that I create) that when syncing will receive the same updates as the original (in all unprotected fields). I already do this all the time, with the very notable exception that at present, none of my forked notes get any of the updates in the unprotected fields when syncing. I would really love for them to get those updates because the anking team has been making some incredible images/figures/etc.

In regards to developers, do you happen to know of any who can read this thread and comment on how easily the sync programming can be altered so that any note with the relevant ankihub ID will be synced, even if there are two or more notes (aka, notes with different anki nid but with the same ankihub ID)?

As always, thank you so much for your help!

P.S. When I have been saying ā€œsyncingā€ throughout the conversation in this thread, I have been referring to syncing with ankihub, not with ankiweb. I realized that I don’t think I clarified that previously.

There might be similar material, but it won’t be the same note as in the same note ID, etc., and it won’t cross-sync for sure.

I’m not sure that it’s possible to have it both ways, tbh. I can pass it along to the developers to consider, though. :slight_smile:

AnkiHub maintains its own database of synced notes so it doesn’t have to rely on the ankihub_id field.

Changing the add-on to make it update multiple notes for the same AnkiHub ID is probably a medium-sized change. It will make the update process slower though because the add-on has to search for every AnkiHub ID in your collection.

2 Likes

I see, makes sense. Thank you for letting me know.

I’m curious how ankihub knows which of the notes I have so that it can find the notes that require updating and update them.

It also relies on the note ID for that.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.