Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jmablog/hugo-clinic-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames <james@jmablog.com>2020-07-24 18:00:08 +0300
committerJames <james@jmablog.com>2020-07-24 18:00:08 +0300
commit11156eee069095280c9d707c0ecea404df39d915 (patch)
tree7a1136701cd906d8500a61bc0f699c094fdc9126
Theme added
-rw-r--r--LICENSE20
-rw-r--r--README.md0
-rw-r--r--archetypes/assessment.md130
-rw-r--r--archetypes/default.md13
-rw-r--r--archetypes/follow-up.md13
-rw-r--r--archetypes/other/index.md15
-rw-r--r--exampleSite/config.toml25
-rw-r--r--exampleSite/content/all/_index.md3
-rw-r--r--exampleSite/content/all/james-adams/2020-01-01-james-adams-assessment.md130
-rw-r--r--exampleSite/content/all/james-adams/2020-02-01-james-adams-follow-up.md13
-rw-r--r--exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/index.md15
-rw-r--r--exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/xray.jpgbin0 -> 253793 bytes
-rw-r--r--images/a-z.pngbin0 -> 11966 bytes
-rw-r--r--images/notes.pngbin0 -> 33660 bytes
-rw-r--r--images/screenshot.pngbin0 -> 5854 bytes
-rw-r--r--images/tn.pngbin0 -> 2991 bytes
-rw-r--r--layouts/404.html45
-rw-r--r--layouts/_default/baseof.html22
-rw-r--r--layouts/_default/section.html34
-rw-r--r--layouts/_default/single.html102
-rw-r--r--layouts/_default/taxonomy.html35
-rw-r--r--layouts/_default/terms.html45
-rw-r--r--layouts/index.html47
-rw-r--r--layouts/partials/footer.html5
-rw-r--r--layouts/partials/head-includes.html1
-rw-r--r--layouts/partials/pagination.html125
-rw-r--r--layouts/partials/prev-next-date.html33
-rw-r--r--layouts/partials/prev-next-patient-head.html17
-rw-r--r--layouts/partials/prev-next-patient.html31
-rw-r--r--static/styles.css1227
-rw-r--r--theme.toml15
31 files changed, 2161 insertions, 0 deletions
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..81ee7b9
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2020 James Adams
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/README.md
diff --git a/archetypes/assessment.md b/archetypes/assessment.md
new file mode 100644
index 0000000..162a9c9
--- /dev/null
+++ b/archetypes/assessment.md
@@ -0,0 +1,130 @@
+---
+patient: "{{ substr .Name 11 -11 | humanize | title }}"
+type: "assessment"
+date: {{ substr .Name 0 10 }}
+toc: true
+---
+
+# {{ substr .Name 11 -11 | humanize | title }}
+
+**Date of assessment:** {{ dateFormat "2 January 2006" (substr .Name 0 10) }}
+
+## Patient Details
+
+#### Date of birth: *(age at time of assessment)*
+
+#### Email address:
+
+#### Other contact details: *(if provided)*
+
+#### Occupation:
+
+#### General medical history: *(previous injuries, medications, operations, etc)*
+
+#### Red flags:
+
+#### Daily activity level:
+
+#### Sport / exercise: *(type, level, position, competition, training, intensity, frequency, duration)*
+
+## Subjective Assessment
+
+#### Description of main problem:
+
+#### Location:
+
+#### History of main problem: *(and previous treatment if applicable)*
+
+#### Pain level and description:
+
+#### Aggravating:
+
+#### Easing:
+
+#### 24 hour cycle: *(On wake, on rise, day, evening, sleeping)*
+
+#### SIN:
+
+#### Do they have any theories on what the problem is?
+
+#### What questions / worries / major concerns do they have?
+
+## Objective Assessment
+
+#### Observation:
+
+#### Palpation:
+
+### Physiological Movements
+
+| Area | Action | Active | Passive | Resisted |
+| ---- | ------ | ------ | ------- | -------- |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+
+### Accessory Movements
+
+| Area | Accessory | Pain / Stiffness / NAD / ROM |
+| ---- | --------- | ---------------------------- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Muscle Tests
+
+| Muscle | Notes |
+| ------ | ----- |
+| | |
+| | |
+| | |
+| | |
+
+### Ligament Tests
+
+| Ligament | Notes |
+| -------- | ----- |
+| | |
+| | |
+| | |
+| | |
+
+### Special Tests
+
+| Test | +ive / -ive | Notes |
+| ---- | ----------- | ----- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Joints Above/Below
+
+| Area | Action | Notes |
+| ---- | ------ | ----- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Other Notes & Diagnosis
+
+#### Additional comments:
+
+#### Working diagnosis:
+
+## Treatment
+
+#### What are they looking for from treatment?
+
+#### What do they think will help?
+
+#### What barriers to success can we identify?
+
+#### General advice / education given: *(Timeframes, physiology, expectations, resources)*
+
+#### Goals, timeframes and markers:
+
+#### Details of exercises given: *(What, when, why, how long/much, daily movement, graded, flare ups, equipment)*
diff --git a/archetypes/default.md b/archetypes/default.md
new file mode 100644
index 0000000..f68df77
--- /dev/null
+++ b/archetypes/default.md
@@ -0,0 +1,13 @@
+---
+patient: "{{ .Dir | path.Base | humanize | title }}"
+type: "follow-up"
+date: {{ substr .Name 0 10 }}
+toc: false
+---
+
+# {{ substr .Name 11 -10 | humanize | title }}
+
+**Date:** {{ dateFormat "2 January 2006" (substr .Name 0 10) }}
+
+## Notes:
+
diff --git a/archetypes/follow-up.md b/archetypes/follow-up.md
new file mode 100644
index 0000000..f903fc7
--- /dev/null
+++ b/archetypes/follow-up.md
@@ -0,0 +1,13 @@
+---
+patient: "{{ substr .Name 11 -10 | humanize | title }}"
+type: "follow-up"
+date: {{ substr .Name 0 10 }}
+toc: false
+---
+
+# {{ substr .Name 11 -10 | humanize | title }}
+
+**Date:** {{ dateFormat "2 January 2006" (substr .Name 0 10) }}
+
+## Notes:
+
diff --git a/archetypes/other/index.md b/archetypes/other/index.md
new file mode 100644
index 0000000..bc51762
--- /dev/null
+++ b/archetypes/other/index.md
@@ -0,0 +1,15 @@
+---
+patient: "{{ .Dir | path.Dir | path.Dir | path.Base | humanize | title }}"
+type: "other"
+description: {{ $string := split .Name "-" }}{{ $description := index $string 5 }}"{{ $description | humanize | title }}"
+date: {{ substr .Name 0 10 }}
+toc: false
+---
+
+# {{ .Dir | path.Dir | path.Dir| path.Base | humanize | title }}
+
+**Date:** {{ dateFormat "2 January 2006" (substr .Name 0 10) }}
+
+## {{ $description | humanize | title }}
+
+Insert here.
diff --git a/exampleSite/config.toml b/exampleSite/config.toml
new file mode 100644
index 0000000..946c455
--- /dev/null
+++ b/exampleSite/config.toml
@@ -0,0 +1,25 @@
+baseURL = "/"
+languageCode = "en-gb"
+title = "Clinic Notes"
+enableEmoji = true
+paginate = 15
+theme = "hugo-clinic-notes"
+
+[taxonomies]
+ patient = "patient"
+
+[[params.menu]]
+ name = "Calendar"
+ url = "all/"
+
+[[params.menu]]
+ name = "Patients"
+ url = "patient/"
+
+[markup]
+ [markup.tableOfContents]
+ endLevel = 2
+
+[frontmatter]
+ lastmod = ["lastmod", ":fileModTime", ":default"]
+ alphakey = ["alphakey", "none"] \ No newline at end of file
diff --git a/exampleSite/content/all/_index.md b/exampleSite/content/all/_index.md
new file mode 100644
index 0000000..9354709
--- /dev/null
+++ b/exampleSite/content/all/_index.md
@@ -0,0 +1,3 @@
++++
+title = "Patients"
++++ \ No newline at end of file
diff --git a/exampleSite/content/all/james-adams/2020-01-01-james-adams-assessment.md b/exampleSite/content/all/james-adams/2020-01-01-james-adams-assessment.md
new file mode 100644
index 0000000..d793f13
--- /dev/null
+++ b/exampleSite/content/all/james-adams/2020-01-01-james-adams-assessment.md
@@ -0,0 +1,130 @@
+---
+patient: "James Adams"
+type: "assessment"
+date: 2020-01-01
+toc: true
+---
+
+# James Adams
+
+**Date of assessment:** 1 January 2020
+
+## Patient Details
+
+#### Date of birth: *(age at time of assessment)*
+
+#### Email address:
+
+#### Other contact details: *(if provided)*
+
+#### Occupation:
+
+#### General medical history: *(previous injuries, medications, operations, etc)*
+
+#### Red flags:
+
+#### Daily activity level:
+
+#### Sport / exercise: *(type, level, position, competition, training, intensity, frequency, duration)*
+
+## Subjective Assessment
+
+#### Description of main problem:
+
+#### Location:
+
+#### History of main problem: *(and previous treatment if applicable)*
+
+#### Pain level and description:
+
+#### Aggravating:
+
+#### Easing:
+
+#### 24 hour cycle: *(On wake, on rise, day, evening, sleeping)*
+
+#### SIN:
+
+#### Do they have any theories on what the problem is?
+
+#### What questions / worries / major concerns do they have?
+
+## Objective Assessment
+
+#### Observation:
+
+#### Palpation:
+
+### Physiological Movements
+
+| Area | Action | Active | Passive | Resisted |
+| ---- | ------ | ------ | ------- | -------- |
+| | | | | |
+| | | | | |
+| | | | | |
+| | | | | |
+
+### Accessory Movements
+
+| Area | Accessory | Pain / Stiffness / NAD / ROM |
+| ---- | --------- | ---------------------------- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Muscle Tests
+
+| Muscle | Notes |
+| ------ | ----- |
+| | |
+| | |
+| | |
+| | |
+
+### Ligament Tests
+
+| Ligament | Notes |
+| -------- | ----- |
+| | |
+| | |
+| | |
+| | |
+
+### Special Tests
+
+| Test | +ive / -ive | Notes |
+| ---- | ----------- | ----- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Joints Above/Below
+
+| Area | Action | Notes |
+| ---- | ------ | ----- |
+| | | |
+| | | |
+| | | |
+| | | |
+
+### Other Notes & Diagnosis
+
+#### Additional comments:
+
+#### Working diagnosis:
+
+## Treatment
+
+#### What are they looking for from treatment?
+
+#### What do they think will help?
+
+#### What barriers to success can we identify?
+
+#### General advice / education given: *(Timeframes, physiology, expectations, resources)*
+
+#### Goals, timeframes and markers:
+
+#### Details of exercises given: *(What, when, why, how long/much, daily movement, graded, flare ups, equipment)*
diff --git a/exampleSite/content/all/james-adams/2020-02-01-james-adams-follow-up.md b/exampleSite/content/all/james-adams/2020-02-01-james-adams-follow-up.md
new file mode 100644
index 0000000..6db892a
--- /dev/null
+++ b/exampleSite/content/all/james-adams/2020-02-01-james-adams-follow-up.md
@@ -0,0 +1,13 @@
+---
+patient: "James Adams"
+type: "follow-up"
+date: 2020-02-01
+toc: false
+---
+
+# James Adams
+
+**Date:** 1 February 2020
+
+## Notes:
+
diff --git a/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/index.md b/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/index.md
new file mode 100644
index 0000000..cb3a14b
--- /dev/null
+++ b/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/index.md
@@ -0,0 +1,15 @@
+---
+patient: "James Adams"
+type: "other"
+description: "Xray From Doctor"
+date: 2020-03-01
+toc: false
+---
+
+# James Adams
+
+**Date:** 1 March 2020
+
+## Xray From Doctor
+
+![](xray.jpg)
diff --git a/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/xray.jpg b/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/xray.jpg
new file mode 100644
index 0000000..8070d74
--- /dev/null
+++ b/exampleSite/content/all/james-adams/2020-03-01-james-adams-xray_from_doctor/xray.jpg
Binary files differ
diff --git a/images/a-z.png b/images/a-z.png
new file mode 100644
index 0000000..f4ba283
--- /dev/null
+++ b/images/a-z.png
Binary files differ
diff --git a/images/notes.png b/images/notes.png
new file mode 100644
index 0000000..9cf7347
--- /dev/null
+++ b/images/notes.png
Binary files differ
diff --git a/images/screenshot.png b/images/screenshot.png
new file mode 100644
index 0000000..547d423
--- /dev/null
+++ b/images/screenshot.png
Binary files differ
diff --git a/images/tn.png b/images/tn.png
new file mode 100644
index 0000000..831a274
--- /dev/null
+++ b/images/tn.png
Binary files differ
diff --git a/layouts/404.html b/layouts/404.html
new file mode 100644
index 0000000..2857b2e
--- /dev/null
+++ b/layouts/404.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html class="" lang="{{ .Site.LanguageCode }}">
+
+ <head>
+
+ <meta charset="utf-8" />
+ <title>{{ .Site.Title }}</title>
+ <link rel="canonical" href="{{ .Permalink }}" />
+ {{ partial "head-includes.html" . }}
+ </head>
+
+ <body lang="{{ .Site.LanguageCode }}" class="w-2/5 mx-auto py-10">
+ <section id="main">
+ <div>
+ <h1 id="title" class="font-bold mb-5">
+ No file found. Go to:
+ </h1>
+ <ul class="">
+
+ {{ range .Site.Params.menu }}
+ <li class="my-2">
+ <a class="link" href="{{ .url }}">{{ .name }}</a>
+ </li>
+ <!-- prettier-ignore -->
+ {{ end }}
+
+ <li class="my-2">
+ {{ range first 1 ( site.RegularPages.ByDate.Reverse )}}
+ <a class="link" href="{{.Permalink}}">Most recent note by date</a>
+ {{end}}
+ </li>
+
+ <li class="my-2">
+ {{ range first 1 (sort site.RegularPages "Lastmod" "desc")}}
+ <a class="link" href="{{.Permalink}}">Last modified note</a>
+ {{end}}
+ </li>
+
+ </ul>
+ </div>
+ </section>
+
+ {{ partial "footer.html" . }}
+ </body>
+</html>
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html
new file mode 100644
index 0000000..42c4207
--- /dev/null
+++ b/layouts/_default/baseof.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+
+ {{ partial "head-includes.html" . }}
+
+ <title>{{ .Title }}</title>
+
+</head>
+<body class="text-gray-900">
+<div>
+ <div>
+ {{ block "main" . }}
+
+ {{ end }}
+ </div>
+<div>
+ {{ partial "footer.html" . }}
+</div>
+</div>
+</body>
+</html> \ No newline at end of file
diff --git a/layouts/_default/section.html b/layouts/_default/section.html
new file mode 100644
index 0000000..20dc3b3
--- /dev/null
+++ b/layouts/_default/section.html
@@ -0,0 +1,34 @@
+{{ define "main" }}
+
+<div class="w-3/5 mx-auto pb-10">
+
+<div class="mb-4 sticky bg-white pt-5 pb-5 top-0 border-b-2 print:hidden">
+ {{ emojify ":file_folder:" }}
+ <a href="{{ .Site.BaseURL }}" class="link">Notes</a>
+ <span class=""> / </span>
+ <span class="font-semibold">Calendar</span>
+</div>
+
+<section id="main" class="mb-20 w-10/12 mx-auto">
+ <div>
+ {{ range (.Pages.GroupByDate "Mon 2 January 2006") }}
+ <h3 class="font-semibold py-2 pl-1 my-4 bg-gray-100">{{ .Key }}</h3>
+ <ul class="list-disc list-inside">
+ {{ range .Pages }}
+ <li class="my-2">
+ <a href="{{ .Permalink }}" class="link">{{ .Params.patient }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ </a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </div>
+</section>
+
+</div>
+{{ end }}
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
new file mode 100644
index 0000000..6acd843
--- /dev/null
+++ b/layouts/_default/single.html
@@ -0,0 +1,102 @@
+{{ define "main" }}
+{{ $patient := .Params.patient | urlize}}
+{{ $.Scratch.Set "patientFull" (.Params.patient) }}
+
+<div class="w-11/12 md:w-3/5 mx-auto print:w-10/12">
+
+<div class="mb-4 sticky bg-white pt-5 pb-5 top-0 border-b-2 print:hidden z-50">
+<div class="flex justify-between">
+ <div class="inline-block">
+ {{ emojify ":file_folder:" }}
+<a href="{{ .Site.BaseURL }}" class="link">Notes</a>
+ <span class=""> / </span>
+ <a href="/patient" class="link">Patients</a>
+ <span class=""> / </span>
+ <a href="/patient/{{ .Params.patient | urlize }}" class="link">{{ .Params.patient }}</a>
+ <span class=""> / </span>
+ <span>{{ .Date.Format "January 2, 2006" }}</span>
+ <span class=""> / </span>
+ <span class="font-semibold">
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ </span>
+</div>
+<div class="inline-block">
+ {{ partial "prev-next-patient-head.html" . }}
+</div>
+</div>
+
+ <div id="toc" class="mt-4">
+ <span class="inline-block font-semibold mr-2">Jump to: </span>
+ {{ if (.Params.toc ) }}
+ {{ .TableOfContents }}
+ {{ end }}
+ <a href="#othernotes" class="inline-block link">Other notes</a>
+ </div>
+
+</div>
+
+<section id="main" class="">
+
+ <div class="hugo-content md:w-10/12 mx-auto print:w-full">
+ <article itemprop="articleBody" id="content" class="mb-10">
+ {{ .Content }}
+ </article>
+ </div>
+
+ <div class="mx-auto md:w-10/12 print:hidden mb-20 bg-gray-100 pb-1 px-5" id="othernotes">
+
+ <div id="all-other-notes-patient" class="">
+ <!-- other forms for this patient -->
+ {{ if (isset .Params "patient") }}
+
+ <h3 class="font-bold bg-gray-200 py-2 my-6 border-l-4 pl-3 border-gray-600 text-lg -mx-5">All other notes for <a href="/patient/{{ $patient }}" class="link">{{ .Params.patient }}</a>:</h3>
+
+ {{ $forms := index .Site.Taxonomies.patient $patient }}
+
+ {{ if (gt ($forms | len) 1)}}
+ <ul class="list-disc list-inside">
+ {{ range (where $forms ".File.UniqueID" "!=" .File.UniqueID) }}
+ <li class="my-2">
+ <a class="link" href="{{ .Permalink}}">{{ .Date.Format "January 2, 2006" }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}</a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ else }}
+ <div class="">
+ No other notes found for this patient.
+ </div>
+ {{ end }}
+
+ {{ end }}
+ </div>
+
+ <div id="prev-next-patient">
+ <h3 class="font-bold bg-gray-200 py-2 my-6 border-l-4 pl-3 border-gray-600 text-lg -mx-5">Previous / next notes for <a href="/patient/{{ $patient }}" class="link">{{ .Params.patient }}</a>:</h3>
+
+ {{ partial "prev-next-patient.html" . }}
+
+ </div>
+
+ <div id="prev-next-date">
+ <h3 class="font-bold bg-gray-200 py-2 my-6 border-l-4 pl-3 border-gray-600 text-lg -mx-5">Previous / next notes by date:</h3>
+
+ {{ partial "prev-next-date.html" .}}
+
+ </div>
+
+ </div>
+</section>
+
+ {{ partial "footer.html" . }}
+
+</div>
+ {{ end }}
diff --git a/layouts/_default/taxonomy.html b/layouts/_default/taxonomy.html
new file mode 100644
index 0000000..d7b81c6
--- /dev/null
+++ b/layouts/_default/taxonomy.html
@@ -0,0 +1,35 @@
+{{ define "main" }}
+
+<div class="w-3/5 mx-auto pb-10">
+
+<div class="mb-4 sticky bg-white pt-5 pb-5 top-0 border-b-2 print:hidden">
+ {{ emojify ":file_folder:" }}
+ <a href="{{ .Site.BaseURL }}" class="link">Notes</a>
+ <span class=""> / </span>
+ <a href="/patient" class="link">Patients</a>
+ <span class=""> / </span>
+ <span class="font-semibold">{{ .Title }}</span>
+</div>
+
+ <section id="main" class="mb-20 w-10/12 mx-auto">
+ <div>
+ {{ range (.Pages.GroupByDate "Mon 2 January 2006") }}
+ <h3 class="font-semibold py-2 pl-1 my-4 bg-gray-100">{{ .Key }}</h3>
+ <ul class="list-disc list-inside">
+ {{ range .Pages }}
+ <li class="my-2">
+ <a href="{{ .Permalink }}" class="link">
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ </a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </div>
+</section>
+</div>
+{{ end }}
diff --git a/layouts/_default/terms.html b/layouts/_default/terms.html
new file mode 100644
index 0000000..d314934
--- /dev/null
+++ b/layouts/_default/terms.html
@@ -0,0 +1,45 @@
+{{ define "main" }}
+<div class="w-3/5 mx-auto pb-10">
+
+<div class="mb-5 sticky bg-white pt-5 pb-4 top-0 border-b-2 print:hidden">
+{{ emojify ":file_folder:" }}
+ <a href="{{ .Site.BaseURL }}" class="link">Notes</a>
+ <span class=""> / </span>
+ <span class="">Patients</span>
+ <span class=""> / </span>
+ <span class="font-semibold">All by first name</span>
+
+ <div id="toc" class="mt-4">
+ <span class="inline-block font-semibold mr-2">Jump to: </span>
+ {{ range (slice "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z") }}
+ <a href="#{{ . }}" class="inline-block link px-1">{{ . }}</a>
+ {{ end }}
+</div>
+
+</div>
+
+ <section id="main" class="w-10/12 mx-auto">
+ <div>
+ <ul id="list" class="list-disc list-inside">
+ <!-- prettier-ignore -->
+ {{ $.Scratch.Set "current" "-"}}
+ {{ range .Pages.ByTitle }}
+ {{ $firstletter := substr .Title 0 1 }}
+ {{ if ne ($.Scratch.Get "current") $firstletter}}
+ <span class="block font-semibold py-2 pl-1 my-4 bg-gray-100 w-full" id="{{ $firstletter }}">
+ {{ $firstletter }}
+ {{ $.Scratch.Set "current" $firstletter }}
+ </span>
+ {{ end }}
+
+ <li class="my-2">
+ <a class="link" href="{{ .Permalink }}" >{{ .Title }}</a>
+ </li>
+
+ <!-- prettier-ignore -->
+ {{ end }}
+ </ul>
+ </div>
+ </section>
+
+{{ end }}
diff --git a/layouts/index.html b/layouts/index.html
new file mode 100644
index 0000000..598b504
--- /dev/null
+++ b/layouts/index.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<html class="" lang="{{ .Site.LanguageCode }}">
+
+ <head>
+
+ <meta charset="utf-8" />
+ <title>{{ .Site.Title }}</title>
+ <link rel="canonical" href="{{ .Permalink }}" />
+ {{ partial "head-includes.html" . }}
+ </head>
+
+ <body lang="{{ .Site.LanguageCode }}" class="w-2/5 mx-auto py-10">
+ <section id="main">
+ <div>
+ <h1 id="title" class="font-bold mb-5">
+ {{ .Site.Title }}
+ </h1>
+ <ul class="">
+ <!-- pages -->
+
+ <!-- prettier-ignore -->
+ {{ range .Site.Params.menu }}
+ <li class="my-2">
+ <a class="link" href="{{ .url }}">{{ .name }}</a>
+ </li>
+ <!-- prettier-ignore -->
+ {{ end }}
+
+ <li class="my-2">
+ {{ range first 1 ( site.RegularPages.ByDate.Reverse )}}
+ <a class="link" href="{{.Permalink}}">Most recent note by date</a>
+ {{end}}
+ </li>
+
+ <li class="my-2">
+ {{ range first 1 (sort site.RegularPages "Lastmod" "desc")}}
+ <a class="link" href="{{.Permalink}}">Last modified note</a>
+ {{end}}
+ </li>
+
+ </ul>
+ </div>
+ </section>
+
+ {{ partial "footer.html" . }}
+ </body>
+</html>
diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html
new file mode 100644
index 0000000..0286363
--- /dev/null
+++ b/layouts/partials/footer.html
@@ -0,0 +1,5 @@
+<footer>
+ <div>
+
+ </div>
+ </footer> \ No newline at end of file
diff --git a/layouts/partials/head-includes.html b/layouts/partials/head-includes.html
new file mode 100644
index 0000000..97fee84
--- /dev/null
+++ b/layouts/partials/head-includes.html
@@ -0,0 +1 @@
+<link rel="stylesheet" href="{{ .Site.BaseURL }}styles.css" /> \ No newline at end of file
diff --git a/layouts/partials/pagination.html b/layouts/partials/pagination.html
new file mode 100644
index 0000000..0822d0a
--- /dev/null
+++ b/layouts/partials/pagination.html
@@ -0,0 +1,125 @@
+<!--Paginator nav-->
+<div class="flex mt-10">
+
+ {{ $paginator := .Paginator }}
+
+ <!-- Number of links either side of the current page. -->
+ {{ $adjacent_links := 2 }}
+
+ <!-- $max_links = ($adjacent_links * 2) + 1 -->
+ {{ $max_links := (add (mul $adjacent_links 2) 1) }}
+
+ <!-- $lower_limit = $adjacent_links + 1 -->
+ {{ $lower_limit := (add $adjacent_links 1) }}
+
+ <!-- $upper_limit = $paginator.TotalPages - $adjacent_links -->
+ {{ $upper_limit := (sub $paginator.TotalPages $adjacent_links) }}
+
+ <!-- If there's more than one page. -->
+ {{ if gt $paginator.TotalPages 1 }}
+
+ <ul class="inline-block">
+
+ <!-- First page. -->
+ {{ if ne $paginator.PageNumber 1 }}
+ <li class="inline-block">
+ <a href="{{ $paginator.First.URL }}" class="link" title="First page">
+ First
+ </a>
+ </li>
+ {{ end }}
+
+ <!-- Previous page. -->
+ {{ if $paginator.HasPrev }}
+ <li class="inline-block">
+ <a href="{{ $paginator.Prev.URL }}" class="link mx-1" title="Previous page">
+ Prev
+ </a>
+ </li>
+ {{ end }}
+
+ <!-- Page numbers. -->
+ {{ range $paginator.Pagers }}
+
+ {{ $.Scratch.Set "page_number_flag" false }}
+
+
+ <!-- Advanced page numbers. -->
+ {{ if gt $paginator.TotalPages $max_links }}
+
+
+ <!-- Lower limit pages. -->
+ <!-- If the user is on a page which is in the lower limit. -->
+ {{ if le $paginator.PageNumber $lower_limit }}
+
+ <!-- If the current loop page is less than max_links. -->
+ {{ if le .PageNumber $max_links }}
+ {{ $.Scratch.Set "page_number_flag" true }}
+ {{ end }}
+
+
+ <!-- Upper limit pages. -->
+ <!-- If the user is on a page which is in the upper limit. -->
+ {{ else if ge $paginator.PageNumber $upper_limit }}
+
+ <!-- If the current loop page is greater than total pages minus $max_links -->
+ {{ if gt .PageNumber (sub $paginator.TotalPages $max_links) }}
+ {{ $.Scratch.Set "page_number_flag" true }}
+ {{ end }}
+
+
+ <!-- Middle pages. -->
+ {{ else }}
+
+ {{ if and ( ge .PageNumber (sub $paginator.PageNumber $adjacent_links) ) ( le .PageNumber (add $paginator.PageNumber $adjacent_links) ) }}
+ {{ $.Scratch.Set "page_number_flag" true }}
+ {{ end }}
+
+ {{ end }}
+
+
+ <!-- Simple page numbers. -->
+ {{ else }}
+
+ {{ $.Scratch.Set "page_number_flag" true }}
+
+ {{ end }}
+
+ <!-- Output page numbers. -->
+ {{ if eq ($.Scratch.Get "page_number_flag") true }}
+ <li class="inline-block">
+ {{ if eq . $paginator }}
+ <span class="font-semibold mx-1">
+ {{ .PageNumber }}
+ </span>
+ {{else}}
+ <a href="{{ .URL }}" class="link mx-1">
+ {{ .PageNumber }}
+ </a>
+ {{ end }}
+ </li>
+ {{ end }}
+
+ {{ end }}
+
+ <!-- Next page. -->
+ {{ if $paginator.HasNext }}
+ <li class="inline-block">
+ <a href="{{ $paginator.Next.URL }}" class="link mx-1" title="Next page">
+ Next
+ </a>
+ </li>
+ {{ end }}
+
+ <!-- Last page. -->
+ {{ if ne $paginator.PageNumber $paginator.TotalPages }}
+ <li class="inline-block">
+ <a href="{{ $paginator.Last.URL }}" title="Last page" class="link">
+ Last
+ </a>
+ </li>
+ {{ end }}
+
+ </ul>
+ {{ end }}
+ </div> \ No newline at end of file
diff --git a/layouts/partials/prev-next-date.html b/layouts/partials/prev-next-date.html
new file mode 100644
index 0000000..5e8c969
--- /dev/null
+++ b/layouts/partials/prev-next-date.html
@@ -0,0 +1,33 @@
+
+<div class="my-5 flex justify-between">
+
+ <span class="truncate mr-6">
+ {{ if .PrevInSection}}
+ <a href="{{with .PrevInSection}}{{.Permalink}}{{end}}" class="link">
+ {{with .PrevInSection}}{{ .Date.Format "January 2, 2006" }} - {{ .Param "patient" }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ {{end}}
+ </a>
+ {{end}}
+ </span>
+
+
+ <span class="truncate ml-6">
+ {{ if .NextInSection}}
+ <a href="{{with .NextInSection}}{{.Permalink}}{{end}}" class="link">
+ {{with .NextInSection}}{{ .Date.Format "January 2, 2006" }} - {{ .Param "patient" }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ {{end}}
+ </a>
+ {{end}}
+ </span>
+
+ </div> \ No newline at end of file
diff --git a/layouts/partials/prev-next-patient-head.html b/layouts/partials/prev-next-patient-head.html
new file mode 100644
index 0000000..9938537
--- /dev/null
+++ b/layouts/partials/prev-next-patient-head.html
@@ -0,0 +1,17 @@
+
+<div class="">
+
+ <span class="truncate mr-2">
+ {{with (where .Site.RegularPages "Params.patient" ($.Scratch.Get "patientFull")).Prev . }}
+ <a href="{{ .RelPermalink }}" class="link">Prev</a>
+ {{ end }}
+ </span>
+
+
+ <span class="truncate ml-2">
+ {{with (where .Site.RegularPages "Params.patient" ($.Scratch.Get "patientFull")).Next . }}
+ <a href="{{ .RelPermalink }}" class="link">Next </a>
+ {{ end }}
+ </span>
+
+ </div> \ No newline at end of file
diff --git a/layouts/partials/prev-next-patient.html b/layouts/partials/prev-next-patient.html
new file mode 100644
index 0000000..cad95fe
--- /dev/null
+++ b/layouts/partials/prev-next-patient.html
@@ -0,0 +1,31 @@
+
+<div class="my-5 flex justify-between">
+
+ <span class="truncate mr-6">
+ {{with (where .Site.RegularPages "Params.patient" ($.Scratch.Get "patientFull")).Prev . }}
+ <a href="{{ .RelPermalink }}" class="link">
+ {{ .Date.Format "January 2, 2006" }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ </a>
+ {{ end }}
+ </span>
+
+
+ <span class="truncate ml-6">
+ {{with (where .Site.RegularPages "Params.patient" ($.Scratch.Get "patientFull")).Next . }}
+ <a href="{{ .RelPermalink }}" class="link">
+ {{ .Date.Format "January 2, 2006" }} -
+ {{ if ne .Params.type "other"}}
+ {{ .Param "type" | title }}
+ {{ else }}
+ {{ .Param "description" }}
+ {{end}}
+ </a>
+ {{ end }}
+ </span>
+
+ </div> \ No newline at end of file
diff --git a/static/styles.css b/static/styles.css
new file mode 100644
index 0000000..469b20b
--- /dev/null
+++ b/static/styles.css
@@ -0,0 +1,1227 @@
+/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
+
+/* Document
+ ========================================================================== */
+
+/**
+ * 1. Correct the line height in all browsers.
+ * 2. Prevent adjustments of font size after orientation changes in iOS.
+ */
+
+html {
+ line-height: 1.15; /* 1 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+}
+
+/* Sections
+ ========================================================================== */
+
+/**
+ * Remove the margin in all browsers.
+ */
+
+body {
+ margin: 0;
+}
+
+/**
+ * Render the `main` element consistently in IE.
+ */
+
+main {
+ display: block;
+}
+
+/**
+ * Correct the font size and margin on `h1` elements within `section` and
+ * `article` contexts in Chrome, Firefox, and Safari.
+ */
+
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
+}
+
+/* Grouping content
+ ========================================================================== */
+
+/**
+ * 1. Add the correct box sizing in Firefox.
+ * 2. Show the overflow in Edge and IE.
+ */
+
+hr {
+ box-sizing: content-box; /* 1 */
+ height: 0; /* 1 */
+ overflow: visible; /* 2 */
+}
+
+/**
+ * 1. Correct the inheritance and scaling of font size in all browsers.
+ * 2. Correct the odd `em` font sizing in all browsers.
+ */
+
+pre {
+ font-family: monospace, monospace; /* 1 */
+ font-size: 1em; /* 2 */
+}
+
+/* Text-level semantics
+ ========================================================================== */
+
+/**
+ * Remove the gray background on active links in IE 10.
+ */
+
+a {
+ background-color: transparent;
+}
+
+/**
+ * 1. Remove the bottom border in Chrome 57-
+ * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
+ */
+
+abbr[title] {
+ border-bottom: none; /* 1 */
+ text-decoration: underline; /* 2 */
+ -webkit-text-decoration: underline dotted;
+ text-decoration: underline dotted; /* 2 */
+}
+
+/**
+ * Add the correct font weight in Chrome, Edge, and Safari.
+ */
+
+b,
+strong {
+ font-weight: bolder;
+}
+
+/**
+ * 1. Correct the inheritance and scaling of font size in all browsers.
+ * 2. Correct the odd `em` font sizing in all browsers.
+ */
+
+code,
+kbd,
+samp {
+ font-family: monospace, monospace; /* 1 */
+ font-size: 1em; /* 2 */
+}
+
+/**
+ * Add the correct font size in all browsers.
+ */
+
+small {
+ font-size: 80%;
+}
+
+/**
+ * Prevent `sub` and `sup` elements from affecting the line height in
+ * all browsers.
+ */
+
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+sup {
+ top: -0.5em;
+}
+
+/* Embedded content
+ ========================================================================== */
+
+/**
+ * Remove the border on images inside links in IE 10.
+ */
+
+img {
+ border-style: none;
+}
+
+/* Forms
+ ========================================================================== */
+
+/**
+ * 1. Change the font styles in all browsers.
+ * 2. Remove the margin in Firefox and Safari.
+ */
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ font-family: inherit; /* 1 */
+ font-size: 100%; /* 1 */
+ line-height: 1.15; /* 1 */
+ margin: 0; /* 2 */
+}
+
+/**
+ * Show the overflow in IE.
+ * 1. Show the overflow in Edge.
+ */
+
+button,
+input { /* 1 */
+ overflow: visible;
+}
+
+/**
+ * Remove the inheritance of text transform in Edge, Firefox, and IE.
+ * 1. Remove the inheritance of text transform in Firefox.
+ */
+
+button,
+select { /* 1 */
+ text-transform: none;
+}
+
+/**
+ * Correct the inability to style clickable types in iOS and Safari.
+ */
+
+button,
+[type="button"],
+[type="reset"],
+[type="submit"] {
+ -webkit-appearance: button;
+}
+
+/**
+ * Remove the inner border and padding in Firefox.
+ */
+
+button::-moz-focus-inner,
+[type="button"]::-moz-focus-inner,
+[type="reset"]::-moz-focus-inner,
+[type="submit"]::-moz-focus-inner {
+ border-style: none;
+ padding: 0;
+}
+
+/**
+ * Restore the focus styles unset by the previous rule.
+ */
+
+button:-moz-focusring,
+[type="button"]:-moz-focusring,
+[type="reset"]:-moz-focusring,
+[type="submit"]:-moz-focusring {
+ outline: 1px dotted ButtonText;
+}
+
+/**
+ * Correct the padding in Firefox.
+ */
+
+fieldset {
+ padding: 0.35em 0.75em 0.625em;
+}
+
+/**
+ * 1. Correct the text wrapping in Edge and IE.
+ * 2. Correct the color inheritance from `fieldset` elements in IE.
+ * 3. Remove the padding so developers are not caught out when they zero out
+ * `fieldset` elements in all browsers.
+ */
+
+legend {
+ box-sizing: border-box; /* 1 */
+ color: inherit; /* 2 */
+ display: table; /* 1 */
+ max-width: 100%; /* 1 */
+ padding: 0; /* 3 */
+ white-space: normal; /* 1 */
+}
+
+/**
+ * Add the correct vertical alignment in Chrome, Firefox, and Opera.
+ */
+
+progress {
+ vertical-align: baseline;
+}
+
+/**
+ * Remove the default vertical scrollbar in IE 10+.
+ */
+
+textarea {
+ overflow: auto;
+}
+
+/**
+ * 1. Add the correct box sizing in IE 10.
+ * 2. Remove the padding in IE 10.
+ */
+
+[type="checkbox"],
+[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Correct the cursor style of increment and decrement buttons in Chrome.
+ */
+
+[type="number"]::-webkit-inner-spin-button,
+[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+/**
+ * 1. Correct the odd appearance in Chrome and Safari.
+ * 2. Correct the outline style in Safari.
+ */
+
+[type="search"] {
+ -webkit-appearance: textfield; /* 1 */
+ outline-offset: -2px; /* 2 */
+}
+
+/**
+ * Remove the inner padding in Chrome and Safari on macOS.
+ */
+
+[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/**
+ * 1. Correct the inability to style clickable types in iOS and Safari.
+ * 2. Change font properties to `inherit` in Safari.
+ */
+
+::-webkit-file-upload-button {
+ -webkit-appearance: button; /* 1 */
+ font: inherit; /* 2 */
+}
+
+/* Interactive
+ ========================================================================== */
+
+/*
+ * Add the correct display in Edge, IE 10+, and Firefox.
+ */
+
+details {
+ display: block;
+}
+
+/*
+ * Add the correct display in all browsers.
+ */
+
+summary {
+ display: list-item;
+}
+
+/* Misc
+ ========================================================================== */
+
+/**
+ * Add the correct display in IE 10+.
+ */
+
+template {
+ display: none;
+}
+
+/**
+ * Add the correct display in IE 10.
+ */
+
+[hidden] {
+ display: none;
+}
+
+/**
+ * Manually forked from SUIT CSS Base: https://github.com/suitcss/base
+ * A thin layer on top of normalize.css that provides a starting point more
+ * suitable for web applications.
+ */
+
+/**
+ * Removes the default spacing and border for appropriate elements.
+ */
+
+blockquote,
+dl,
+dd,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+hr,
+figure,
+p,
+pre {
+ margin: 0;
+}
+
+button {
+ background-color: transparent;
+ background-image: none;
+}
+
+/**
+ * Work around a Firefox/IE bug where the transparent `button` background
+ * results in a loss of the default `button` focus styles.
+ */
+
+button:focus {
+ outline: 1px dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+}
+
+fieldset {
+ margin: 0;
+ padding: 0;
+}
+
+ol,
+ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+
+/**
+ * Tailwind custom reset styles
+ */
+
+/**
+ * 1. Use the user's configured `sans` font-family (with Tailwind's default
+ * sans-serif font stack as a fallback) as a sane default.
+ * 2. Use Tailwind's default "normal" line-height so the user isn't forced
+ * to override it to ensure consistency even when using the default theme.
+ */
+
+html {
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 1 */
+ line-height: 1.5; /* 2 */
+}
+
+/**
+ * 1. Prevent padding and border from affecting element width.
+ *
+ * We used to set this in the html element and inherit from
+ * the parent element for everything else. This caused issues
+ * in shadow-dom-enhanced elements like <details> where the content
+ * is wrapped by a div with box-sizing set to `content-box`.
+ *
+ * https://github.com/mozdevs/cssremedy/issues/4
+ *
+ *
+ * 2. Allow adding a border to an element by just adding a border-width.
+ *
+ * By default, the way the browser specifies that an element should have no
+ * border is by setting it's border-style to `none` in the user-agent
+ * stylesheet.
+ *
+ * In order to easily add borders to elements by just setting the `border-width`
+ * property, we change the default border-style for all elements to `solid`, and
+ * use border-width to hide them instead. This way our `border` utilities only
+ * need to set the `border-width` property instead of the entire `border`
+ * shorthand, making our border utilities much more straightforward to compose.
+ *
+ * https://github.com/tailwindcss/tailwindcss/pull/116
+ */
+
+*,
+::before,
+::after {
+ box-sizing: border-box; /* 1 */
+ border-width: 0; /* 2 */
+ border-style: solid; /* 2 */
+ border-color: #e2e8f0; /* 2 */
+}
+
+/*
+ * Ensure horizontal rules are visible by default
+ */
+
+hr {
+ border-top-width: 1px;
+}
+
+/**
+ * Undo the `border-style: none` reset that Normalize applies to images so that
+ * our `border-{width}` utilities have the expected effect.
+ *
+ * The Normalize reset is unnecessary for us since we default the border-width
+ * to 0 on all elements.
+ *
+ * https://github.com/tailwindcss/tailwindcss/issues/362
+ */
+
+img {
+ border-style: solid;
+}
+
+textarea {
+ resize: vertical;
+}
+
+input::-moz-placeholder, textarea::-moz-placeholder {
+ color: #a0aec0;
+}
+
+input:-ms-input-placeholder, textarea:-ms-input-placeholder {
+ color: #a0aec0;
+}
+
+input::-ms-input-placeholder, textarea::-ms-input-placeholder {
+ color: #a0aec0;
+}
+
+input::placeholder,
+textarea::placeholder {
+ color: #a0aec0;
+}
+
+button,
+[role="button"] {
+ cursor: pointer;
+}
+
+table {
+ border-collapse: collapse;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ font-size: inherit;
+ font-weight: inherit;
+}
+
+/**
+ * Reset links to optimize for opt-in styling instead of
+ * opt-out.
+ */
+
+a {
+ color: inherit;
+ text-decoration: inherit;
+}
+
+/**
+ * Reset form element properties that are easy to forget to
+ * style explicitly so you don't inadvertently introduce
+ * styles that deviate from your design system. These styles
+ * supplement a partial reset that is already applied by
+ * normalize.css.
+ */
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ padding: 0;
+ line-height: inherit;
+ color: inherit;
+}
+
+/**
+ * Use the configured 'mono' font family for elements that
+ * are expected to be rendered with a monospace font, falling
+ * back to the system monospace stack if there is no configured
+ * 'mono' font family.
+ */
+
+pre,
+code,
+kbd,
+samp {
+ font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+}
+
+/**
+ * Make replaced elements `display: block` by default as that's
+ * the behavior you want almost all of the time. Inspired by
+ * CSS Remedy, with `svg` added as well.
+ *
+ * https://github.com/mozdevs/cssremedy/issues/14
+ */
+
+img,
+svg,
+video,
+canvas,
+audio,
+iframe,
+embed,
+object {
+ display: block;
+ vertical-align: middle;
+}
+
+/**
+ * Constrain images and videos to the parent width and preserve
+ * their instrinsic aspect ratio.
+ *
+ * https://github.com/mozdevs/cssremedy/issues/14
+ */
+
+img,
+video {
+ max-width: 100%;
+ height: auto;
+}
+
+@page {
+ size: A4;
+}
+
+.hugo-content p {
+ padding-top: 0.25rem;
+ padding-bottom: 0.25rem;
+ text-align: justify;
+ position: relative;
+ break-inside: avoid-page;
+}
+
+.hugo-content strong {
+ font-weight: 600;
+}
+
+.hugo-content ul {
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ list-style-type: disc;
+ list-style-position: inside;
+}
+
+.hugo-content li {
+ padding-top: 0.25rem;
+ padding-bottom: 0.25rem;
+ list-style-type: disc;
+ list-style-position: inside;
+}
+
+.hugo-content h1,
+.hugo-content h2 {
+ font-weight: 700;
+ --bg-opacity: 1;
+ background-color: #edf2f7;
+ background-color: rgba(237, 242, 247, var(--bg-opacity));
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ margin-top: 1.5rem;
+ margin-bottom: 1.5rem;
+ border-left-width: 4px;
+ padding-left: 0.75rem;
+ --border-opacity: 1;
+ border-color: #718096;
+ border-color: rgba(113, 128, 150, var(--border-opacity));
+ -moz-column-break-after: avoid;
+ break-after: avoid-page;
+}
+
+.hugo-content h3 {
+ font-weight: 700;
+ --bg-opacity: 1;
+ background-color: #f7fafc;
+ background-color: rgba(247, 250, 252, var(--bg-opacity));
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ margin-top: 1.5rem;
+ margin-bottom: 1.5rem;
+ padding-left: 0.25rem;
+ padding-right: 0.25rem;
+ font-size: 1.25rem;
+ border-left-width: 2px;
+ padding-left: 0.25rem;
+ --border-opacity: 1;
+ border-color: #cbd5e0;
+ border-color: rgba(203, 213, 224, var(--border-opacity));
+ -moz-column-break-after: avoid;
+ break-after: avoid-page;
+}
+
+.hugo-content h1 {
+ font-size: 2.25rem;
+}
+
+.hugo-content h2 {
+ font-size: 1.5rem;
+}
+
+.hugo-content h4 {
+ font-weight: 600;
+ margin-top: 1.25rem;
+ margin-bottom: 1rem;
+ position: relative;
+ border-left-width: 2px;
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ padding-left: 0.5rem;
+ --border-opacity: 1;
+ border-color: #cbd5e0;
+ border-color: rgba(203, 213, 224, var(--border-opacity));
+ --bg-opacity: 1;
+ background-color: #f7fafc;
+ background-color: rgba(247, 250, 252, var(--bg-opacity));
+}
+
+.hugo-content h4 > em {
+ font-style: italic;
+ --text-opacity: 1;
+ color: #a0aec0;
+ color: rgba(160, 174, 192, var(--text-opacity));
+ font-size: 0.75rem;
+ margin-left: 0.25rem;
+ font-weight: 400;
+ vertical-align: text-bottom;
+}
+
+.hugo-content table {
+ border-collapse: collapse;
+ table-layout: auto;
+ margin-top: 1.25rem;
+ margin-bottom: 1.25rem;
+ border-width: 1px;
+ overflow-x: scroll;
+ -moz-column-break-inside: avoid;
+ break-inside: avoid;
+}
+
+.hugo-content thead {
+ --bg-opacity: 1;
+ background-color: #f7fafc;
+ background-color: rgba(247, 250, 252, var(--bg-opacity));
+ border-bottom-width: 1px;
+ -moz-column-break-inside: avoid;
+ break-inside: avoid;
+ -moz-column-break-after: avoid;
+ break-after: avoid;
+}
+
+.hugo-content tr {
+ -moz-column-break-inside: avoid;
+ break-inside: avoid;
+}
+
+.hugo-content tr:nth-child(even) {
+ --bg-opacity: 1;
+ background-color: #f7fafc;
+ background-color: rgba(247, 250, 252, var(--bg-opacity));
+}
+
+.hugo-content tbody tr:hover {
+ --bg-opacity: 1;
+ background-color: #edf2f7;
+ background-color: rgba(237, 242, 247, var(--bg-opacity));
+ -moz-column-break-inside: avoid;
+ break-inside: avoid;
+}
+
+.hugo-content th,
+.hugo-content td {
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ padding-left: 0.75rem;
+ padding-right: 0.75rem;
+}
+
+#toc nav {
+ display: inline-block;
+}
+
+#toc li {
+ display: inline-block;
+ margin-right: 0.5rem;
+}
+
+#toc a,
+.hugo-content a {
+ border-bottom-width: 1px;
+ border-style: dotted;
+ --border-opacity: 1;
+ border-color: #bee3f8;
+ border-color: rgba(190, 227, 248, var(--border-opacity));
+}
+
+#toc a:hover,
+.hugo-content a:hover {
+ --bg-opacity: 1;
+ background-color: #bee3f8;
+ background-color: rgba(190, 227, 248, var(--bg-opacity));
+}
+
+.container {
+ width: 100%;
+}
+
+@media (min-width: 640px) {
+ .container {
+ max-width: 640px;
+ }
+}
+
+@media (min-width: 768px) {
+ .container {
+ max-width: 768px;
+ }
+}
+
+@media (min-width: 1024px) {
+ .container {
+ max-width: 1024px;
+ }
+}
+
+@media (min-width: 1280px) {
+ .container {
+ max-width: 1280px;
+ }
+}
+
+.link {
+ border-bottom-width: 1px;
+ border-style: dotted;
+ --border-opacity: 1;
+ border-color: #bee3f8;
+ border-color: rgba(190, 227, 248, var(--border-opacity));
+}
+
+.paginate-link:hover {
+ text-decoration: none;
+ --bg-opacity: 1;
+ background-color: #bee3f8;
+ background-color: rgba(190, 227, 248, var(--bg-opacity));
+}
+
+.link:hover {
+ text-decoration: none;
+ --bg-opacity: 1;
+ background-color: #bee3f8;
+ background-color: rgba(190, 227, 248, var(--bg-opacity));
+}
+
+.bg-white {
+ --bg-opacity: 1;
+ background-color: #fff;
+ background-color: rgba(255, 255, 255, var(--bg-opacity));
+}
+
+.bg-gray-100 {
+ --bg-opacity: 1;
+ background-color: #f7fafc;
+ background-color: rgba(247, 250, 252, var(--bg-opacity));
+}
+
+.bg-gray-200 {
+ --bg-opacity: 1;
+ background-color: #edf2f7;
+ background-color: rgba(237, 242, 247, var(--bg-opacity));
+}
+
+.border-gray-600 {
+ --border-opacity: 1;
+ border-color: #718096;
+ border-color: rgba(113, 128, 150, var(--border-opacity));
+}
+
+.border-b-2 {
+ border-bottom-width: 2px;
+}
+
+.border-l-4 {
+ border-left-width: 4px;
+}
+
+.block {
+ display: block;
+}
+
+.inline-block {
+ display: inline-block;
+}
+
+.flex {
+ display: flex;
+}
+
+.justify-between {
+ justify-content: space-between;
+}
+
+.font-semibold {
+ font-weight: 600;
+}
+
+.font-bold {
+ font-weight: 700;
+}
+
+.text-lg {
+ font-size: 1.125rem;
+}
+
+.list-inside {
+ list-style-position: inside;
+}
+
+.list-disc {
+ list-style-type: disc;
+}
+
+.mx-1 {
+ margin-left: 0.25rem;
+ margin-right: 0.25rem;
+}
+
+.my-2 {
+ margin-top: 0.5rem;
+ margin-bottom: 0.5rem;
+}
+
+.my-4 {
+ margin-top: 1rem;
+ margin-bottom: 1rem;
+}
+
+.my-5 {
+ margin-top: 1.25rem;
+ margin-bottom: 1.25rem;
+}
+
+.my-6 {
+ margin-top: 1.5rem;
+ margin-bottom: 1.5rem;
+}
+
+.mx-auto {
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.-mx-5 {
+ margin-left: -1.25rem;
+ margin-right: -1.25rem;
+}
+
+.mr-2 {
+ margin-right: 0.5rem;
+}
+
+.ml-2 {
+ margin-left: 0.5rem;
+}
+
+.mt-4 {
+ margin-top: 1rem;
+}
+
+.mb-4 {
+ margin-bottom: 1rem;
+}
+
+.mb-5 {
+ margin-bottom: 1.25rem;
+}
+
+.mr-6 {
+ margin-right: 1.5rem;
+}
+
+.ml-6 {
+ margin-left: 1.5rem;
+}
+
+.mt-10 {
+ margin-top: 2.5rem;
+}
+
+.mb-10 {
+ margin-bottom: 2.5rem;
+}
+
+.mb-20 {
+ margin-bottom: 5rem;
+}
+
+.px-1 {
+ padding-left: 0.25rem;
+ padding-right: 0.25rem;
+}
+
+.py-2 {
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+}
+
+.px-5 {
+ padding-left: 1.25rem;
+ padding-right: 1.25rem;
+}
+
+.py-10 {
+ padding-top: 2.5rem;
+ padding-bottom: 2.5rem;
+}
+
+.pb-1 {
+ padding-bottom: 0.25rem;
+}
+
+.pl-1 {
+ padding-left: 0.25rem;
+}
+
+.pl-3 {
+ padding-left: 0.75rem;
+}
+
+.pb-4 {
+ padding-bottom: 1rem;
+}
+
+.pt-5 {
+ padding-top: 1.25rem;
+}
+
+.pb-5 {
+ padding-bottom: 1.25rem;
+}
+
+.pb-10 {
+ padding-bottom: 2.5rem;
+}
+
+.sticky {
+ position: -webkit-sticky;
+ position: sticky;
+}
+
+.top-0 {
+ top: 0;
+}
+
+.text-gray-900 {
+ --text-opacity: 1;
+ color: #1a202c;
+ color: rgba(26, 32, 44, var(--text-opacity));
+}
+
+.truncate {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+.w-2\/5 {
+ width: 40%;
+}
+
+.w-3\/5 {
+ width: 60%;
+}
+
+.w-10\/12 {
+ width: 83.333333%;
+}
+
+.w-11\/12 {
+ width: 91.666667%;
+}
+
+.w-full {
+ width: 100%;
+}
+
+.z-50 {
+ z-index: 50;
+}
+
+@media (min-width: 640px) {
+ .sm\:container {
+ width: 100%;
+ }
+
+ @media (min-width: 640px) {
+ .sm\:container {
+ max-width: 640px;
+ }
+ }
+
+ @media (min-width: 768px) {
+ .sm\:container {
+ max-width: 768px;
+ }
+ }
+
+ @media (min-width: 1024px) {
+ .sm\:container {
+ max-width: 1024px;
+ }
+ }
+
+ @media (min-width: 1280px) {
+ .sm\:container {
+ max-width: 1280px;
+ }
+ }
+}
+
+@media (min-width: 768px) {
+ .md\:container {
+ width: 100%;
+ }
+
+ @media (min-width: 640px) {
+ .md\:container {
+ max-width: 640px;
+ }
+ }
+
+ @media (min-width: 768px) {
+ .md\:container {
+ max-width: 768px;
+ }
+ }
+
+ @media (min-width: 1024px) {
+ .md\:container {
+ max-width: 1024px;
+ }
+ }
+
+ @media (min-width: 1280px) {
+ .md\:container {
+ max-width: 1280px;
+ }
+ }
+
+ .md\:w-3\/5 {
+ width: 60%;
+ }
+
+ .md\:w-10\/12 {
+ width: 83.333333%;
+ }
+}
+
+@media (min-width: 1024px) {
+ .lg\:container {
+ width: 100%;
+ }
+
+ @media (min-width: 640px) {
+ .lg\:container {
+ max-width: 640px;
+ }
+ }
+
+ @media (min-width: 768px) {
+ .lg\:container {
+ max-width: 768px;
+ }
+ }
+
+ @media (min-width: 1024px) {
+ .lg\:container {
+ max-width: 1024px;
+ }
+ }
+
+ @media (min-width: 1280px) {
+ .lg\:container {
+ max-width: 1280px;
+ }
+ }
+}
+
+@media (min-width: 1280px) {
+ .xl\:container {
+ width: 100%;
+ }
+
+ @media (min-width: 640px) {
+ .xl\:container {
+ max-width: 640px;
+ }
+ }
+
+ @media (min-width: 768px) {
+ .xl\:container {
+ max-width: 768px;
+ }
+ }
+
+ @media (min-width: 1024px) {
+ .xl\:container {
+ max-width: 1024px;
+ }
+ }
+
+ @media (min-width: 1280px) {
+ .xl\:container {
+ max-width: 1280px;
+ }
+ }
+}
+
+@media print {
+ .print\:container {
+ width: 100%;
+ }
+
+ @media (min-width: 640px) {
+ .print\:container {
+ max-width: 640px;
+ }
+ }
+
+ @media (min-width: 768px) {
+ .print\:container {
+ max-width: 768px;
+ }
+ }
+
+ @media (min-width: 1024px) {
+ .print\:container {
+ max-width: 1024px;
+ }
+ }
+
+ @media (min-width: 1280px) {
+ .print\:container {
+ max-width: 1280px;
+ }
+ }
+
+ .print\:hidden {
+ display: none;
+ }
+
+ .print\:w-10\/12 {
+ width: 83.333333%;
+ }
+
+ .print\:w-full {
+ width: 100%;
+ }
+}
diff --git a/theme.toml b/theme.toml
new file mode 100644
index 0000000..a449429
--- /dev/null
+++ b/theme.toml
@@ -0,0 +1,15 @@
+# theme.toml template for a Hugo theme
+# See https://github.com/gohugoio/hugoThemes#themetoml for an example
+
+name = "Hugo Clinic Notes"
+license = "MIT"
+licenselink = "https://github.com/jmablog/hugo-clinic-notes/blob/master/themes/hugo-clinic-notes/LICENSE"
+description = "A minimal theme for organising and viewing clinic patient notes"
+homepage = "https://github.com/jmablog/hugo-clinic-notes/"
+tags = ["notes", "minimal", "minimalistic", "minimalist", "modern", "clean", "white", "docs", "business", "simple"]
+features = ["notes"]
+min_version = "0.41.0"
+
+[author]
+ name = "James Adams"
+ homepage = "https://jmablog.com" \ No newline at end of file