Decision: confirm typed !!field:type!! syntax + ## App Config convention #2
Labels
No labels
bug
chore
feature
spike
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
#24 Template fetch + parser
utilities/Logbook
Reference
utilities/Logbook#2
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Decision #2 — confirm the typed
!!field:type!!syntax and the## App Configconvention before the template parser is built.Templates are authored with Outline's native Template feature, and the app parses each template's markdown body. Outline already uses
!!placeholder!!for free-text prompts (no type info). The proposal extends that convention with afield:prefix so the app can render the right input control while the template stays human-readable (and harmless) if opened directly in Outline.Proposed field syntax:
!!field:<type>[:<options>]!!!!field:string!!!!field:multiline!!!!field:checkbox!!!!field:dropdown:A,B,C!!!!field:number!!!!field:time!!!!field:date!!(Expanded set —
photo,checklist,showIf— is tracked separately in #6.)Proposed
## App ConfigblockA table at the very top of the template body, parsed before the field placeholders, controlling routing/targeting:
What to decide
!!field:type!!as the field syntax.## App Configkey set (names + meaning) and that it lives as the first table in the template.iconkey (an emoji, e.g.🦷) — not the template's native Outline doc icon. The doc icon can be a custom uploaded image (stored as a UUID needing a separate resolution path — see #9), and most existing templates set no icon at all, so App Config is the reliable, self-contained source.Blocks: the template parser.
Recommendation: adopt both as proposed. The
field:prefix is a clean superset of Outline's existing!!...!!and degrades to visible placeholder text in Outline; the## App Configtable is likewise just a normal table to a human reader. Suggest reserving one worked template (Dentist Appointment) as the reference implementation once approved.Source: Solution Design — Family App v1 §5 (doc vpBNbG4TsV), decision §13 #2.
photo,checklist) +showIf#6Confirm the table, except not this row: | applies_to | family_member |