When to use Extend in supertags
If you have many supertags with the same properties, it's worth considering if the Extend feature is the right fit. Extending supertags is very similar to inheritance in object-oriented programming.
Overview
Extend allows you to use a basic supertag as a "base" of another supertag, making it a sub-tag so to speak. This allows the makes the two tags permanently associated with each other, both in their template content and when searching for them.
Example of using Extend
From the Tana team
- In our internal workspace, we have a base
#todo
tag which only contains>Assignee
,>Due date
and>Status
. - We then have
#design task
,#dev task
and so on, which extend#todo
– so they get those base fields – but add new, specific fields such as>Github PR
,>Spec
and>Related feature
. - It is also convenient to be able to add a new field to
#todo
, and know that any extension of#todo
will get the same field. - This setup lets us query for any
#todo
assigned to a certain person or with a certain status. This will return all hits to#todo
, and any other supertags that extend it. - We use a lot of extended tags internally in the Tana workspace:
#todo
is extended by#dev task
,#design task
,#bug
, etc.#meeting
is extended by#onboarding session
,#followup
,#investor meeting
,#interview
, etc.#person
is extended by#candidate
,#alphauser
,#investor
,#employee
, etc.#user observation
is extended by#wtf moment
,#aha moment
, etc.
And we regularly rework this, as our needs evolve. Handy for this job is the command to merge nodes, fields and supertags.
Join the waiting list
Tana is currently in invite-only early access. Would you like to help shape its future? Add your email to the waiting list to get in as soon as possible. No spam, we promise!