I'm currently rewriting my emacs config from scratch, and your config is the one I'm taking inspiration from, i. e. carefully reading.
In package management section I found that you can also add your own packages (and other packages those require additional configuration information for straight) to the package-list as a quoted s-exps, e. g. doing this:
(setq package-list
'(vc-backup
savehist
'(org-imenu :type git :host github :repo "rougier/org-imenu")))
(dolist (package package-list)
(straight-use-package package))
;; And you don't need to invoke straight-use-package manually for each of those packages like here:
;; (straight-use-package
;; '(org-imenu :type git :host github :repo "rougier/org-imenu"))
Also found two typos, the first one is in encoding section, and maybe this one is also a mistake:
;; set-default-coding-systems duplication, from your config:
(set-default-coding-systems 'utf-8) ; Default to utf-8 encoding
(prefer-coding-system 'utf-8) ; Add utf-8 at the front for automatic detection.
(set-default-coding-systems 'utf-8) ; Set default value of various coding systems
The second one is in my/date-is-yesterday function:
;; Nothing serious here, just replace 'today' in the description with 'yesterday'
(defun my/date-is-yesterday (date)
"Check if DATE is today."
(my/date-equal (my/date-dec (my/date-today) 1) date))
And one more thing, thank you for sharing your work! It's a beautiful gem and also a good research resource for emacs hackers as me, those have no time and patience for learning emacs deep enough to make this things from scratch :)