### Required

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L18-L18)[\[2\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L40-L40)[\[3\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L46-L46)[\[4\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L59-L59)[\[5\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L16-L16)[\[6\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L33-L33)[\[7\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L44-L44)[\[8\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L53-L53)[\[9\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L91-L91)[\[10\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/dailyNotesView.ts#L49-L49)[\[11\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L15-L15)[\[12\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L60-L60)
Use sentence case for UI text.

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L19-L19)[\[2\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/main.ts#L27-L27)
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/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/settings/settingsTab.ts#L16-L16)
Use `new Setting(containerEl).setName(...).setHeading()` instead of creating HTML heading elements directly.

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/dailyNotesView.ts#L74-L74)
Async method 'loadDailyNotes' has no 'await' expression.

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/dailyNotesView.ts#L93-L93)[\[2\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/editorManager.ts#L122-L126)[\[3\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L24-L27)[\[4\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L93-L97)[\[5\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L105-L108)
Promise returned in function argument where a void return was expected.

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/editorManager.ts#L84-L84)
Avoid setting styles directly via `element.style.height`. Use CSS classes for better theming and maintainability.

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/renderer.ts#L24-L24)
Async arrow function has no 'await' expression.



---

### Optional

[\[1\]](https://github.com/rohittp0/obsidian-daily-notes-timeline/blob/1582ab2b3e37b56fec26a15cf01574c4e3422a8e/src/view/editorManager.ts#L57-L57)
'error' is defined but never used.

