This skill should be used when "creating Obsidian notes", "formatting frontmatter", "using Dataview syntax", "embedding images in Obsidian", or when working with Obsidian-specific markdown features. Provides expertise in YAML frontmatter, Dataview queries, wikilinks, and Obsidian markdown conventions.
Creates properly formatted Obsidian notes with YAML frontmatter, Dataview queries, wikilinks, and Mapview blocks. Use when generating location notes or any Obsidian-specific markdown that requires proper syntax for plugins and metadata.
/plugin marketplace add oskar-dragon/claude-code/plugin install obsidian-location-notes@claude-codeThis skill inherits all available tools. When active, it can use any tool Claude has access to.
examples/complete-note.mdreferences/dataview-syntax.mdreferences/frontmatter-schema.mdObsidian uses an enhanced markdown format with YAML frontmatter, wikilinks, and plugin-specific syntax like Dataview and Mapview. This skill provides knowledge for creating properly formatted Obsidian notes, particularly for location-based notes with geographic data.
Load this skill when creating or formatting Obsidian notes, especially:
YAML frontmatter appears at the top of Obsidian notes between --- delimiters. It stores structured metadata.
Basic structure:
---
field: value
array_field:
- item1
- item2
nested:
key: value
---
Critical rules:
---)- prefix (dash + space)'[[Page Name]]' (quoted)[latitude, longitude]Wikilinks create internal references between notes.
Syntax:
[[Note Name]][[Note Name|Display Text]][[Note Name#Heading]][[Note Name^block-id]]In frontmatter: Quote wikilinks to preserve syntax:
Country: '[[UK]]'
Region: '[[Somerset]]'
Dataview queries display dynamic content based on note metadata.
Inline queries use backticks with = prefix:
`= this.Country`
`= this.location[0]`
Complex inline query for images:
`= choice(startswith(string(default(this.image, "")), "[["), "!" + this.image, choice(this.image, "", "No Image"))`
This query:
image field starts with [[ (wikilink)! to embed wikilinked imageMapview creates interactive maps from note coordinates.
Standard code block:
```mapview
{"name":"Current Note","query":"path:\"$filename$\"","chosenMapSource":0,"autoFit":true,"lock":true,"showLinks":true,"linkColor":"red","markerLabels":"off"}
**Key fields:**
- `query`: Dataview query to select notes (use `path:\"$filename$\"` for current note)
- `autoFit`: Center map on markers
- `lock`: Prevent map dragging
- `markerLabels`: Show/hide marker labels
### Obsidian Markdown Extensions
**Image embedding:**
- Wikilink: `![[image.png]]`
- URL: ``
- With size: `![[image.png|200]]` (200px width)
**Tags:**
- Inline: `#tag-name`
- In frontmatter: Use `tags:` array
```yaml
tags:
- map/food
- location
Callouts (admonitions):
> [!note] Title
> Content here
For location notes with Mapview integration:
---
tags:
- map/TYPE # map/food, map/photo-location, map/accommodation/campsite, map/other
Country: '[[Country Name]]'
Region: '[[Region Name]]'
location:
- LATITUDE
- LONGITUDE
Source:
- https://source1.com
- https://source2.com
image: https://example.com/image.jpg # Or '[[local-image.jpg]]'
publish: true
Done: false # or visited: false
color: blue
icon: ICON_NAME # map-pin, utensils, camera, tent-tree
---
Store as array of two numbers (latitude first, longitude second):
location:
- 51.4776031
- -2.6256316
Do not use:
"51.4776031, -2.6256316" ❌{lat: 51.4776031, lon: -2.6256316} ❌Standard structure for location notes:
---
[frontmatter here]
---
```mapview
[mapview config]
[Detailed information about the location]
[Directions, parking, accessibility, contact info]
[Image display query]
### Image Display Pattern
Use this Dataview query at the end of notes:
```markdown
`= choice(startswith(string(default(this.image, "")), "[["), "!" + this.image, choice(this.image, "", "No Image"))`
This handles both wikilinks ([[image.jpg]]) and URLs (https://...).
'[[Page Name]]'true, false##) for sectionsimage field usedmap/food, map/photo-locationCheck notes for:
---Issue: Frontmatter parsing fails Cause: Missing quotes around wikilinks or invalid YAML Fix: Quote all wikilinks, check indentation and colons
Issue: Dataview query shows raw code
Cause: Dataview plugin not enabled or syntax error
Fix: Verify Dataview installed, check backtick and = placement
Issue: Map doesn't display location
Cause: Incorrect location format or Mapview plugin disabled
Fix: Use array format [lat, lon], enable Mapview plugin
Issue: Image not displaying
Cause: Incorrect Dataview query or missing field
Fix: Use standard image display query, ensure image field exists
For detailed syntax and advanced features:
references/dataview-syntax.md - Complete Dataview query referencereferences/frontmatter-schema.md - Field definitions and typesexamples/complete-note.md - Fully formatted example location noteUse these references when working with complex queries or unfamiliar field types.