diff --git a/assets/index.html b/assets/index.html new file mode 100644 index 0000000..f12bfa3 --- /dev/null +++ b/assets/index.html @@ -0,0 +1,173 @@ + + + + + + + mintea + + + + + + + +
+ +
+ +
+ + viewing + + owner/repo/branch + + + +
+ +
+ + +
+

README.md

+
+

Some Repository

+

Ratione quis totam tempora sit magnam voluptas. Recusandae qui illo nulla eligendi. Perspiciatis iusto numquam suscipit aspernatur quibusdam ex.

+

Consequuntur atque rerum culpa numquam et et possimus dolor. Quidem possimus quia et consectetur. Debitis autem cupiditate vero maxime et libero quae. Tenetur vero architecto iure dolores numquam assumenda enim.

+

Dolorem facere animi quis repudiandae rerum dolor. Reprehenderit consequatur quae quia quos illum. Labore ducimus ut quaerat et corrupti cupiditate tenetur.

+

Nisi ut aut sunt dignissimos. Alias magnam itaque deleniti alias quibusdam id possimus eos. Reiciendis et eos placeat. Vero eligendi occaecati quaerat vitae voluptatem deserunt.

+

Dolor aut corrupti et officia id. Minus ipsam assumenda fugiat neque. Neque et saepe maiores iusto maiores. Dolor et at reprehenderit exercitationem totam neque.

+

Heading

+

Ratione quis totam tempora sit magnam voluptas. Recusandae qui illo nulla eligendi. Perspiciatis iusto numquam suscipit aspernatur quibusdam ex.

+

Consequuntur atque rerum culpa numquam et et possimus dolor. Quidem possimus quia et consectetur. Debitis autem cupiditate vero maxime et libero quae. Tenetur vero architecto iure dolores numquam assumenda enim.

+

Dolorem facere animi quis repudiandae rerum dolor. Reprehenderit consequatur quae quia quos illum. Labore ducimus ut quaerat et corrupti cupiditate tenetur.

+

Nisi ut aut sunt dignissimos. Alias magnam itaque deleniti alias quibusdam id possimus eos. Reiciendis et eos placeat. Vero eligendi occaecati quaerat vitae voluptatem deserunt.

+

Dolor aut corrupti et officia id. Minus ipsam assumenda fugiat neque. Neque et saepe maiores iusto maiores. Dolor et at reprehenderit exercitationem totam neque.

+

Heading

+

Ratione quis totam tempora sit magnam voluptas. Recusandae qui illo nulla eligendi. Perspiciatis iusto numquam suscipit aspernatur quibusdam ex.

+

Consequuntur atque rerum culpa numquam et et possimus dolor. Quidem possimus quia et consectetur. Debitis autem cupiditate vero maxime et libero quae. Tenetur vero architecto iure dolores numquam assumenda enim.

+

Dolorem facere animi quis repudiandae rerum dolor. Reprehenderit consequatur quae quia quos illum. Labore ducimus ut quaerat et corrupti cupiditate tenetur.

+

Nisi ut aut sunt dignissimos. Alias magnam itaque deleniti alias quibusdam id possimus eos. Reiciendis et eos placeat. Vero eligendi occaecati quaerat vitae voluptatem deserunt.

+

Dolor aut corrupti et officia id. Minus ipsam assumenda fugiat neque. Neque et saepe maiores iusto maiores. Dolor et at reprehenderit exercitationem totam neque.

+
+
+
+ + + + + + + diff --git a/assets/res/arctica.css b/assets/res/arctica.css new file mode 100644 index 0000000..f83f690 --- /dev/null +++ b/assets/res/arctica.css @@ -0,0 +1,13 @@ +/* martian theme */ +:root { + --glass: url("frost.webp"), #24293370; + --background: #242933; + --foreground: #d8dee9; + --subtle-foreground: #aeb7c6; + --outline: #3b4252; + --shine: #FFFFFF10; + --accent: #88c0d0; + --subtle-accent: #88c0d030; + --shadow: 0 4px 32px #00000040; + --icon-filter: hue-rotate(187deg) saturate(0.30) brightness(1.87); +} diff --git a/assets/res/frost.webp b/assets/res/frost.webp new file mode 100644 index 0000000..9f30470 Binary files /dev/null and b/assets/res/frost.webp differ diff --git a/assets/res/icons/clone.svg b/assets/res/icons/clone.svg new file mode 100644 index 0000000..973e8c7 --- /dev/null +++ b/assets/res/icons/clone.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/directory.svg b/assets/res/icons/directory.svg new file mode 100644 index 0000000..e1ffe38 --- /dev/null +++ b/assets/res/icons/directory.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/file.svg b/assets/res/icons/file.svg new file mode 100644 index 0000000..62f72dc --- /dev/null +++ b/assets/res/icons/file.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/fork.svg b/assets/res/icons/fork.svg new file mode 100644 index 0000000..1315877 --- /dev/null +++ b/assets/res/icons/fork.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/home.svg b/assets/res/icons/home.svg new file mode 100644 index 0000000..c4c73c9 --- /dev/null +++ b/assets/res/icons/home.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/link.svg b/assets/res/icons/link.svg new file mode 100644 index 0000000..4d852c4 --- /dev/null +++ b/assets/res/icons/link.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/assets/res/icons/notifications.svg b/assets/res/icons/notifications.svg new file mode 100644 index 0000000..7b363de --- /dev/null +++ b/assets/res/icons/notifications.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/profile.svg b/assets/res/icons/profile.svg new file mode 100644 index 0000000..b6b3924 --- /dev/null +++ b/assets/res/icons/profile.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/star.svg b/assets/res/icons/star.svg new file mode 100644 index 0000000..9479723 --- /dev/null +++ b/assets/res/icons/star.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/icons/unstar.svg b/assets/res/icons/unstar.svg new file mode 100644 index 0000000..c0c6684 --- /dev/null +++ b/assets/res/icons/unstar.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/assets/res/icons/unwatch.svg b/assets/res/icons/unwatch.svg new file mode 100644 index 0000000..0b5e9e7 --- /dev/null +++ b/assets/res/icons/unwatch.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/assets/res/icons/watch.svg b/assets/res/icons/watch.svg new file mode 100644 index 0000000..d0c562b --- /dev/null +++ b/assets/res/icons/watch.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/res/martian.css b/assets/res/martian.css new file mode 100644 index 0000000..5feb9c5 --- /dev/null +++ b/assets/res/martian.css @@ -0,0 +1,13 @@ +/* martian theme */ +:root { + --glass: url("frost.webp"), hsla(0, 20%, 7%, 0.5); + --background: hsl(0, 20%, 7%); + --foreground: hsl(0, 25%, 90%); + --subtle-foreground: hsl(0, 35%, 55%); + --outline: hsl(0, 23%, 20%); + --shine: #FFFFFF10; + --accent: hsl(0, 80%, 40%); + --subtle-accent: hsla(0, 80%, 40%, 0.2); + --shadow: 0 4px 32px #00000070; + --icon-filter: saturate(0.89) brightness(0.72); +} diff --git a/assets/res/mint-dark.css b/assets/res/mint-dark.css new file mode 100644 index 0000000..be67921 --- /dev/null +++ b/assets/res/mint-dark.css @@ -0,0 +1,13 @@ +/* mint theme */ +:root { + --glass: url("frost.webp"), #33333377; + --background: #111; + --foreground: #CCC; + --subtle-foreground: #777; + --outline: #FFFFFF15; + --shine: #FFFFFF18; + --accent: #209D6E; + --subtle-accent: #209D6E30; + --shadow: 0 4px 32px #03281A12; + --icon-filter: hue-rotate(157deg) saturate(0.80) brightness(1.3); +} diff --git a/assets/res/mint.css b/assets/res/mint.css new file mode 100644 index 0000000..5246a7c --- /dev/null +++ b/assets/res/mint.css @@ -0,0 +1,13 @@ +/* mint theme */ +:root { + --glass: #EEEEEE77; + --background: #EEE; + --foreground: #333; + --subtle-foreground: #888; + --outline: #00000015; + --shine: #00000015; + --accent: #209D6E; + --subtle-accent: #209D6E30; + --shadow: 0 4px 32px #03281A12; + --icon-filter: hue-rotate(157deg) saturate(0.80) brightness(1.3); +} diff --git a/assets/res/style.css b/assets/res/style.css new file mode 100644 index 0000000..4d2819d --- /dev/null +++ b/assets/res/style.css @@ -0,0 +1,288 @@ +* { + box-sizing: border-box; + scrollbar-color: var(--accent) transparent; +} + +*::selection { + background-color: var(--subtle-accent); +} + +body { + background: var(--background); + color: var(--foreground); + font-size: 10pt; + font-family: monospace; + margin: 0; +} + +a { + color: var(--accent); + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +h1 { + font-size: 2em; + font-weight: bold; + + border-bottom: 1px solid var(--outline); + margin: 0.5em 0; + padding-bottom: 0.2em; +} + +h2 { + font-size: 1.5em; + font-weight: bold; + margin: 1em 0; +} + +h3 { + font-size: 1em; + font-weight: bold; + margin: 1em 0; +} + +#contentWrap, header, nav, footer { + max-width: 90rem; + margin: auto; +} + +#stickyWrap { + position: sticky; + top: 0; + transition: 0.2s box-shadow, 0.2s background; + z-index: 255; +} + +#stickyWrap.lifted { + background: var(--glass); + backdrop-filter: blur(32px); + -webkit-backdrop-filter: blur(32px); + box-shadow: var(--shadow); + border-bottom: 1px solid var(--shine); +} + +nav { + padding: 1rem; +} + +.buttonList { + margin: 0; + padding: 0; +} + +.buttonList li { + display: inline; +} + +.buttonList li:not(:last-child) { + margin-right: 1em; +} + +header { + padding: 0 1rem; + display: flex; + justify-content: space-between; + flex-wrap: wrap; + gap: 1rem; +} + +header .buttonList { + display: inline; + text-align: right; + white-space: nowrap; +} + +#contentWrap { + padding: 1rem; +} + +@media not screen and (min-width: 60rem) { + aside { + margin-bottom: 1rem; + } + + nav .buttonListWrap { + position: relative; + } + + nav .buttonListWrap .buttonList { + overflow-x: auto; + white-space: nowrap; + scrollbar-width: thin; + width: 100%; + } + + nav .buttonListWrap::after { + position: absolute; + display: block; + width: 1rem; + height: 100%; + top: 0; + right: 0; + content: ""; + background-image: linear-gradient( + to right, + transparent 0%, + var(--background) 100%); + } + + nav > .buttonListWrap { + text-align: center; + } + + nav > .buttonListWrap:last-child { + margin-top: 1rem; + } +} + +@media screen and (min-width: 60rem) { + #contentWrap { + display: grid; + grid-gap: 2rem; + grid-template-columns: 24rem auto; + } + + nav { + display: grid; + grid-grid: 1rem; + grid-template-columns: auto auto; + } + + nav > .buttonListWrap:last-child { + text-align: right; + } +} + +@media not screen and (min-width: 80rem) { + .collapse { + display: none; + } +} + +@media screen and (min-width: 80rem) { + #contentWrap { + grid-template-columns: 36rem auto; + } +} + +.linkedPath { + color: var(--subtle-foreground); +} + +.files { + border-collapse:collapse; + border: none; + width: 100%; +} + +.files tr { + display: grid; + grid-template-columns: 30% auto min-content; + gap: 1rem; +} + +.files td { + border: none; + padding: 0; + min-width: 0; +} + +.files td > * { + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + max-width: 100%; + display: block; +} + +.files td:last-child { + text-align: right; +} + +.files tr:not(:last-child) { + border-bottom: 1px solid var(--outline); + padding-bottom: 0.5rem; + margin-bottom: 0.5rem; +} + +.files td time { + color: var(--subtle-foreground); +} + +.hiddenLabel { + display: none; +} + +.files .file::before, +.files .directory::before, +.notificationsButton::before, +.profileButton::before, +.dashboardButton::before, +.watchButton::before, +.starButton::before, +.forkButton::before, +.cloneButton::before +{ + content: ""; + width: 16px; + height: 16px; + background-repeat: no-repeat; + display: inline-block; + filter: var(--icon-filter); + margin-right: 0.5em; + vertical-align: sub; +} + +.files .file::before { + background-image: url("icons/file.svg"); +} + +.files .directory::before { + background-image: url("icons/directory.svg"); +} + +.dashboardButton::before { + background-image: url("icons/home.svg"); +} + +.profileButton::before { + background-image: url("icons/profile.svg"); +} + +.notificationsButton::before { + background-image: url("icons/notifications.svg"); +} + +.watchButton::before { + background-image: url("icons/watch.svg"); +} + +.starButton::before { + background-image: url("icons/star.svg"); +} + +.forkButton::before { + background-image: url("icons/fork.svg"); +} + +.cloneButton::before { + background-image: url("icons/clone.svg"); +} + +.previewLabel { + color: var(--subtle-foreground); +} + +footer { + padding: 0 1rem 1rem 1rem; + text-align: center; + color: var(--subtle-foreground); +} + +/* please leave this at the very bottom */ +*:first-child { margin-top: 0 } +*:last-child { margin-bottom: 0 }