### Required

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L60-L60)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L72-L72)[\[3\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L84-L84)[\[4\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L90-L90)[\[5\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/main.ts#L277-L277)[\[6\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L34-L34)[\[7\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L37-L37)[\[8\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L64-L64)[\[9\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L116-L116)[\[10\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L130-L130)[\[11\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L147-L147)[\[12\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L167-L167)[\[13\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L213-L213)[\[14\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L224-L224)[\[15\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L336-L336)[\[16\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L585-L585)[\[17\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L653-L653)[\[18\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L74-L74)[\[19\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L317-L317)[\[20\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L324-L324)[\[21\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L362-L362)[\[22\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L390-L390)[\[23\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L405-L405)
Use sentence case for UI text.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L62-L62)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L74-L74)[\[3\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L86-L86)[\[4\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L113-L113)[\[5\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L5-L5)[\[6\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L221-L221)[\[7\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/heading-link-generator.ts#L117-L117)[\[8\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/heading-link-generator.ts#L188-L188)[\[9\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/heading-link-generator.ts#L201-L201)[\[10\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L189-L189)
Unexpected any. Specify a different type.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L62-L62)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L74-L74)[\[3\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L86-L86)
'any' overrides all other types in this union type.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L64-L64)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/commands/index.ts#L76-L76)[\[3\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L499-L499)[\[4\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L750-L750)[\[5\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L133-L133)
Promises must be awaited, end with a call to .catch, end with a call to .then with a rejection handler or be explicitly marked as ignored with the `void` operator.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/main.ts#L57-L237)
Promise-returning function provided to variable where a void return was expected.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/types.ts#L54-L54)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/types.ts#L60-L60)[\[3\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L9-L9)[\[4\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L16-L16)[\[5\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L282-L282)[\[6\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L28-L28)[\[7\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L75-L75)[\[8\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L79-L79)[\[9\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L172-L172)[\[10\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L310-L310)[\[11\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L172-L172)[\[12\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L283-L283)[\[13\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L316-L316)
"post" | "page" is overridden by string in this union type.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L89-L92)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L263-L266)
Avoid using "settings" in settings headings.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L535-L555)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L558-L573)
Promise returned in function argument where a void return was expected.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L60-L60)
Avoid using the navigator API to detect the operating system. Use the Platform API instead.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/title-modal.ts#L259-L259)
Async method 'generateInitialContent' has no 'await' expression.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/link-conversion.ts#L321-L321)
Async method 'convertWikilinksForAstro' has no 'await' expression.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L7-L7)
Async method 'parseFrontmatter' has no 'await' expression.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L130-L130)
This assertion is unnecessary since it does not change the type of the expression.



---

### Optional

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L478-L478)
'hasConflicts' is assigned a value but never used.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/ui/settings-tab.ts#L479-L479)
'conflictMessage' is assigned a value but never used.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L144-L144)
'postsFolder' is assigned a value but never used.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L145-L145)
'pagesFolder' is assigned a value but never used.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/file-operations.ts#L195-L195)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/template-parsing.ts#L70-L70)
'error' is defined but never used.

[\[1\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/link-conversion.ts#L86-L86)[\[2\]](https://github.com/davidvkimball/obsidian-astro-composer/blob/838470076f4c1e71b7adb27f05a581733cc95d5a/src/utils/link-conversion.ts#L169-L169)
'creationMode' is assigned a value but never used.

